使用c 语言来完成修改菜品信息这个程序首先应该按照关键字查找这个菜品是否存在存在就修改它的的信息菜品名称价格不存在就输出查找的菜品不存在最后详细解释一下程序。
下面是一个使用C语言编写的修改菜品信息的程序:
#include <stdio.h>
#include <string.h>
#define MAX_MENU_ITEMS 100
struct MenuItem {
char name[50];
float price;
};
int main() {
struct MenuItem menu[MAX_MENU_ITEMS];
int numItems = 0;
char keyword[50];
// 添加菜品信息
strcpy(menu[0].name, "菜品1");
menu[0].price = 10.0;
strcpy(menu[1].name, "菜品2");
menu[1].price = 20.0;
numItems = 2;
// 输入要查找的关键字
printf("请输入要查找的菜品关键字:");
scanf("%s", keyword);
int found = 0;
for (int i = 0; i < numItems; i++) {
if (strstr(menu[i].name, keyword) != NULL) {
found = 1;
// 修改菜品信息
printf("请输入修改后的菜品名称和价格(空格分隔):");
scanf("%s %f", menu[i].name, &menu[i].price);
break;
}
}
if (found) {
printf("菜品信息已成功修改!\n");
} else {
printf("查找的菜品不存在!\n");
}
// 输出修改后的菜品信息
printf("修改后的菜品信息:\n");
for (int i = 0; i < numItems; i++) {
printf("菜品名称:%s,价格:%.2f\n", menu[i].name, menu[i].price);
}
return 0;
}
程序的实现思路如下:
- 首先定义了一个结构体
MenuItem,用来存储菜品的名称和价格。 - 声明了一个数组
menu,用来存储菜品信息,数组的大小为MAX_MENU_ITEMS。 - 声明了一个变量
numItems,用来记录当前菜品数量。 - 在主函数中,首先添加了一些初始的菜品信息,供后续查找和修改使用。
- 程序提示用户输入要查找的菜品关键字,并使用
scanf函数读取用户的输入。 - 使用一个循环遍历菜品数组,通过
strstr函数来判断菜品名称中是否包含关键字。- 如果找到匹配的菜品,将变量
found置为1,然后提示用户输入修改后的菜品名称和价格,并使用scanf函数读取用户的输入,更新菜品信息。 - 如果没有找到匹配的菜品,循环结束后
found仍为0。
- 如果找到匹配的菜品,将变量
- 根据变量
found的值,输出相应的提示信息。 - 最后,输出修改后的菜品信息,遍历菜品数组并使用
printf函数输出菜品的名称和价格。
注意:上述代码中的菜品信息是预先添加的,实际应用中可能需要从文件或数据库中读取菜品信息,并进行相应的修改和保存操作
原文地址: http://www.cveoy.top/t/topic/iBOS 著作权归作者所有。请勿转载和采集!