编写一段c语言代码,要求如下有一个售货柜员机,内有多种商品供人购买(商品种类不超过100个),每种商品有名称,数量,单价等信息。编程完成n种商品信息的输入输出。 输入格式: 第一行输入商品种类个数n,第二行依次输入商品的名称,数量,单价。 输出格式: 输出商品名称,数量,单价(保留1位小数)和总价(等于单价*数量,保留2位小数),不同数字之间有一个空格。 输入样例: 4 bread 3 5.2 milk 5 3.5 cookie 30 1.5 cake 25 5.2 输出样例: bread 3 5.2 15.60 milk 5 3.5 17.50 cookie 30 1.5 45.00 cake 25 5.2 130.00
时间: 2024-02-12 08:09:53 浏览: 97
好的,以下是对应的 C 语言代码实现:
```c
#include <stdio.h>
int main()
{
int n; // 商品种类个数
scanf("%d", &n);
char name[100]; // 商品名称
int count; // 商品数量
float price; // 商品单价
// 输入商品信息并输出
for (int i = 0; i < n; i++) {
scanf("%s %d %f", name, &count, &price);
float total_price = count * price; // 计算总价
printf("%s %d %.1f %.2f\n", name, count, price, total_price);
}
return 0;
}
```
代码解释:
1. 首先输入商品种类个数 `n`。
2. 使用循环输入每个商品的名称、数量和单价,并使用 `printf()` 函数输出商品的名称、数量、单价和总价。
3. 在输出时使用格式化字符串 `"%.1f"` 和 `"%.2f"` 来保留价格的小数位数。
注意:在输入商品名称时,使用 `%s` 格式化字符串来读取字符串。另外,如果商品名称中包含空格,则只会读取空格前面的部分。如果需要读取整个商品名称,可以使用 `fgets()` 函数来读取字符串。
阅读全文