c语言,编写一个程序,定义一个结构体类型good,其数据成员为:编号,名称,价格,单价。定义一个结构数组,大小为5,并初始化。计算数组中总价最高的货物信息
时间: 2023-06-03 08:03:57 浏览: 61
好的,根据您提供的问题,我可以回答。以下是C语言代码:
```c
#include <stdio.h>
// 定义结构体类型
typedef struct {
int id;
char name[20];
float price;
float unit_price;
} good;
int main() {
// 定义结构体数组并初始化
good goods[5] = {
{1, "商品A", 500.0, 10.0},
{2, "商品B", 300.0, 6.0},
{3, "商品C", 400.0, 20.0},
{4, "商品D", 200.0, 4.0},
{5, "商品E", 600.0, 12.0}
};
// 计算总价最高的货物信息
int max_index = 0;
float max_total_price = goods[0].price * goods[0].unit_price;
for (int i = 1; i < 5; i++) {
float total_price = goods[i].price * goods[i].unit_price;
if (total_price > max_total_price) {
max_total_price = total_price;
max_index = i;
}
}
// 输出结果
printf("总价最高的货物信息是:\n");
printf("编号:%d\n", goods[max_index].id);
printf("名称:%s\n", goods[max_index].name);
printf("价格:%f\n", goods[max_index].price);
printf("单价:%f\n", goods[max_index].unit_price);
printf("总价:%f\n", max_total_price);
return 0;
}
```
这个程序定义了一个结构体类型`good`,包括编号、名称、价格和单价四个数据成员,然后定义了一个结构体数组`goods`,大小为5,并初始化;接着遍历这个数组找到总价最高的货物信息,最后输出结果。
希望我的回答能够帮到您。