有一个售货柜员机,内有多种商品供人购买(商品种类不超过100个),每种商品有 名称、数量、价等信息。使用C语言编程完成n种商品信息的输入输出。并且输入时,第一行输入商品种类个数n,第二行依次输入商品的名称,数量,单价。 输出时,输出商品名称、数量、单价(保留1位小数)和总价(等于单价*数量,保留2位小 数),不同数字之间有一个空格。
时间: 2023-06-11 20:10:00 浏览: 75
以下是实现该功能的C语言程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_ITEMS 100
typedef struct {
char name[50];
int quantity;
float price;
} Item;
int main() {
int n;
Item items[MAX_ITEMS];
// 输入商品种类个数
scanf("%d", &n);
if (n > MAX_ITEMS) {
printf("Too many items!\n");
return 1;
}
// 依次输入商品名称、数量、单价
for (int i = 0; i < n; i++) {
scanf("%s%d%f", items[i].name, &items[i].quantity, &items[i].price);
}
// 输出商品信息
printf("Name\tQuantity\tPrice\tTotal\n");
for (int i = 0; i < n; i++) {
float total = items[i].quantity * items[i].price;
printf("%s\t%d\t\t%.1f\t%.2f\n", items[i].name, items[i].quantity, items[i].price, total);
}
return 0;
}
```
程序的输入输出的示例:
输入:
```
3
Apple 10 3.5
Banana 20 1.5
Orange 15 2.0
```
输出:
```
Name Quantity Price Total
Apple 10 3.5 35.00
Banana 20 1.5 30.00
Orange 15 2.0 30.00
```