C语言程序案例:水果营销商卖水果 ,包括苹果、葡萄、香蕉。
水果营销商卖水果,苹果 5 块一斤,葡萄 6.8 块 1 斤,香蕉 5.2 一斤,消费者输入买入斤数即可得到总价,定义fruit结构体,包含这三种水果,定义三个函数,分别求出买苹果,葡萄,香蕉各需要花多少钱,最后总价多少钱。用到switch()循环来选择选项,具体实现代码如下所示:
#include <stdio.h>
struct Fru{
char name[20];
float danjia;
int jin;
float money;
};
struct Fru fruit[3]= {{"apple",5},{"grape",6.8},{"banana",5.2}}; //定义全局变量
float sum; //定义全局变量总的价格,在子函数和main函数都能用
void menu() //菜单选项
{
printf("*********欢迎选购水果*********\n");
printf("*********1.选购苹果*********\n");
printf("*********2.选购葡萄*********\n");
printf("*********3.选购香蕉*********\n");
printf("*********0.退出选购*********\n");
}
void App(float a) //买苹果的函数
{
fruit[0].money = 0; //买苹果的钱,赋初值0
printf("请输入要买多少斤苹果!\n");
scanf("%d",&fruit[0].jin);
fruit[0].money = a*fruit[0].jin;
printf("买苹果花费%.2f元!\n",fruit[0].money);
sum=sum+fruit[0].money;
printf("一共花费%.2f元!\n",sum);
}
void Gra(float b) //买葡萄的函数
{
fruit[1].money = 0;
printf("请输入要买多少斤葡萄!\n");
scanf("%d",&fruir[1].jin);
fruit[1].money = b*fruir[1].jin;
printf("买葡萄花费%.2f元!\n",fruit[1].money);
sum=sum+fruit[1].money;
printf("一共花费%.2f元!\n",sum);
}
void Ban(float c) //买香蕉的函数
{
fruit[2].money = 0;
printf("请输入要买多少斤香蕉!\n");
scanf("%d",&fruit[2].jin);
fruit[2].money = c*fruit[2].jin;
printf("买香蕉花费%.2f元!\n",fruit[2].money);
sum=sum+fruit[2].money;
printf("一共花费%.2f元!\n",sum);
}
int main()
{
while(1)
{
int num;
menu();
printf("请输入要执行的操作!\n");
scanf("%d",&num);
switch(num)
{
case 1:
App(fruit[0].danjia);
break;
case 2:
Gra(fruit[1].danjia);
break;
case 3:
Ban(fruit[2].danjia);
break;
case 0:
return 0;
default:
printf("输入有误,请重新输入!\n");
}
}
return 0;
}
运行结果如图所示: