3.有一个售货柜员机,内有多种商品供人购买(商品种类不超过100个),每种商品有 名称、数量、价等信息。编程完成n种商品信息的输入输出。 注意:输入时,第一行输入商品种类个数n,第二行依次输入商品的名称,数量,单价。 输出时,输出商品名称、数量、单价(保留1位小数)和总价(等于单价*数量,保留2位小 数),不同数字之间有一个空格。C语言
时间: 2023-10-07 08:12:15 浏览: 44
以下是C语言的程序代码实现:
```c
#include <stdio.h>
struct commodity {
char name[50];
int quantity;
float price;
};
int main() {
int n;
printf("请输入商品种类个数:");
scanf("%d", &n);
struct commodity list[n];
for (int i = 0; i < n; i++) {
printf("请输入第%d种商品的名称、数量和单价(用空格隔开):", i + 1);
scanf("%s %d %f", list[i].name, &list[i].quantity, &list[i].price);
}
printf("商品名称\t\t数量\t单价\t总价\n");
for (int i = 0; i < n; i++) {
float total_price = list[i].quantity * list[i].price;
printf("%-20s\t%d\t%.1f\t%.2f\n", list[i].name, list[i].quantity, list[i].price, total_price);
}
return 0;
}
```
运行程序后,会依次输入每种商品的名称、数量和单价,然后输出所有商品的名称、数量、单价和总价。
例如,输入以下内容:
```
请输入商品种类个数:3
请输入第1种商品的名称、数量和单价(用空格隔开):可乐 10 2.5
请输入第2种商品的名称、数量和单价(用空格隔开):矿泉水 20 1.8
请输入第3种商品的名称、数量和单价(用空格隔开):薯片 5 5.0
```
则输出如下:
```
商品名称 数量 单价 总价
可乐 10 2.5 25.00
矿泉水 20 1.8 36.00
薯片 5 5.0 25.00
```