c语言商品种类统计代码
时间: 2023-08-31 08:25:55 浏览: 123
C++编写商品销售统计程序
5星 · 资源好评率100%
### 回答1:
以下是一个简单的 C 语言商品种类统计代码:
```c
#include <stdio.h>
int main() {
int num, i, count = 0;
printf("请输入商品种类数量:");
scanf("%d", &num);
int types[num];
for (i = 0; i < num; i++) {
printf("请输入第 %d 种商品的数量:", i + 1);
scanf("%d", &types[i]);
count += types[i];
}
printf("共有 %d 种商品,总数量为 %d。\n", num, count);
return 0;
}
```
该代码会要求用户输入商品种类数量,然后依次输入每种商品的数量,最后输出总共有多少种商品,以及总数量是多少。
### 回答2:
下面是一段用C语言编写的商品种类统计代码:
```c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX_PRODUCTS 100
struct Product {
char name[50];
int quantity;
};
int main() {
struct Product products[MAX_PRODUCTS];
int numProducts = 0;
// 读入商品信息
printf("请输入商品信息(输入exit结束输入):\n");
while (numProducts < MAX_PRODUCTS) {
printf("请输入商品名称:");
scanf("%s", products[numProducts].name);
if (strcmp(products[numProducts].name, "exit") == 0) {
break;
}
printf("请输入商品数量:");
scanf("%d", &products[numProducts].quantity);
numProducts++;
}
// 统计商品种类
int numCategories = 0;
for (int i = 0; i < numProducts; i++) {
int isCategoryNew = 1;
// 判断商品种类是否已存在
for (int j = 0; j < numCategories; j++) {
if (strcmp(products[i].name, products[j].name) == 0) {
isCategoryNew = 0;
break;
}
}
// 若商品种类不存在,则计数加一
if (isCategoryNew) {
numCategories++;
}
}
// 打印结果
printf("商品种类统计结果:\n");
printf("商品种类数量:%d\n", numCategories);
return 0;
}
```
这段代码通过一个结构体数组来保存商品的名称和数量信息。首先,程序会提示用户输入商品信息,包括商品名称和数量。当用户输入"exit"作为商品名称时,表示输入结束。然后,程序会根据输入的商品信息统计商品种类数量,即统计有多少种不同的商品。最后,程序会打印出统计结果。
### 回答3:
下面是一个简单的C语言商品种类统计代码的示例:
```
#include <stdio.h>
#define MAX_ITEMS 100
typedef struct {
int id;
char name[50];
float price;
int quantity;
char category[50];
} Item;
int main() {
Item items[MAX_ITEMS];
int itemCount = 0;
// 添加商品信息
printf("请输入商品信息(输入0结束输入):\n");
int i = 0;
while (1) {
printf("商品ID:");
scanf("%d", &items[i].id);
if (items[i].id == 0) {
break;
}
printf("商品名称:");
scanf("%s", items[i].name);
printf("商品价格:");
scanf("%f", &items[i].price);
printf("商品数量:");
scanf("%d", &items[i].quantity);
printf("商品类别:");
scanf("%s", items[i].category);
i++;
itemCount++;
if (itemCount >= MAX_ITEMS) {
printf("已达到最大商品数目,停止输入\n");
break;
}
}
// 统计各个类别的商品数量
int categoryCount = 0;
char categories[MAX_ITEMS][50];
int categoryQuantities[MAX_ITEMS] = {0};
for (int j = 0; j < itemCount; j++) {
// 判断当前商品类别是否已经统计过
int isExist = 0;
for (int k = 0; k < categoryCount; k++) {
if (strcmp(categories[k], items[j].category) == 0) {
isExist = 1;
break;
}
}
// 如果没有统计过,则将该类别加入统计列表
if (!isExist) {
strcpy(categories[categoryCount], items[j].category);
categoryCount++;
}
// 统计该类别的商品数量
for (int k = 0; k < categoryCount; k++) {
if (strcmp(categories[k], items[j].category) == 0) {
categoryQuantities[k] += items[j].quantity;
break;
}
}
}
// 打印各个类别的商品数量
printf("\n各个类别的商品数量统计如下:\n");
for (int j = 0; j < categoryCount; j++) {
printf("类别:%s,商品数量:%d\n", categories[j], categoryQuantities[j]);
}
return 0;
}
```
这个代码使用了一个结构体`Item`来表示商品信息,包含了商品的ID、名称、价格、数量和类别。首先,通过循环输入商品信息,输入为0时停止输入。然后,使用两个数组`categories`和`categoryQuantities`来统计各个类别的商品数量。在统计类别数量时,会先判断该类别是否已经被统计过,若没有则加入统计列表中。最后,打印出各个类别的商品数量统计结果。
阅读全文