代码练习笔记(14)

目录

云顶超市老板


云顶超市老板

#include <stdio.h>
#include <string.h>
void add(char goods[100][10],float arr[100],int *A)
{
	*A=10;
	printf("enter over to break\n");//输入over返回 
	while(1)
	{
		printf("please enter the name:");
		fgets(goods[*A],sizeof(goods[*A]),stdin);//向原数组添加新商品 
		goods[*A][strcspn(goods[*A],"\n")]='\0';
		if(strcmp(goods[*A],"over")==0)
		{
			break;
		}
		printf("please enter the money:");
		scanf("%f",&arr[*A]);//输入添加商品的单价 
		getchar();
		(*A)++;
	}
}
int main()
{
	char goods[100][10]={"牛奶","面包","方便面","矿泉水","火腿肠","溜溜梅","薄荷糖","豆腐干","辣条","纸巾"};
	float arr[100]={3,2,5,1,1.5,5,10,1,0.5,1};
	printf("please enter what you want to buy and the amount(enter over to break)\nif you want to add food,please enter root\n");
	char name[10][10];//定义输入的字符数组 
	int i=0,j=0,b=0,count=0;
	float sum=0;//总价 
	int A;
	while(1)
	{
		fgets(name[i],sizeof(name[i]),stdin);
		name[i][strcspn(name[i],"\n")]='\0';
		if(strcmp(name[i],"over")==0)//输入over就退出程序 
		{
			break;
		}
		else if(strcmp(name[i],"root")==0)//输入root添加商品 
		{
			add(goods,arr,&A);
			continue;
		}
		printf("please enter the num:");
		scanf("%d",&num[i]);
		getchar();
		for(j=0;j<A;j++)
		{
			if(strcmp(name[i],goods[j])==0)//遍历商品,看是哪一件,对应的是下标j 
			{
				price[i]=arr[j];
				strcpy(buys[b],name[i]);//复制 
				b++;
				break;
			}
		}
		printf("单价:%.2f\n",price[i]);
		sum+=(price[i]*num[i]);
		count++;
		i++;
	}
	printf("商品名\t单价\t数量\n");
	for(j=0;j<count;j++)
	{
		printf("%s\t%.2f\t%d\n",buys[j],price[j],num[j]);
	}
	printf("总价\t%.2f\n",sum);
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值