销售管理系统 [说明及要求] 某公司有5个销售员,负责销售6中产品。每个销售员都将当天销售的每种产品各写一张便条交上来。每张便条包含内容为销售员的代号、产品代号、该种产品当天的销售额。 每位销售员每天可能上缴0-6张便条。假设收集到了上个月的所有便条,编写一个处理程序,读取上个月的销售情况,并做以下处理:(1) 计算上个月每个人每种产品的销售额;(2) 按销售额对销售员进行排序,输出排序结果;(3) 统计每种产品的总销售额,对这些产品按从高到低的顺序输出排序结果怎么用c语言做
时间: 2023-03-12 18:38:42 浏览: 61
编写这个处理程序可以用C语言实现。首先,编写一个程序,从文件中读取每个销售员每天的销售情况,并将其存储在数组中。然后,可以遍历这个数组,计算每个销售员每种产品的销售额,并将这些结果存储在另一个数组中。然后,可以使用快速排序算法对每个销售员的销售额进行排序,并输出排序结果。最后,可以统计每种产品的总销售额,并使用冒泡排序算法对产品的总销售额进行排序,输出排序结果。
相关问题
题目5 销售管理系统 [说明及要求] 某公司有5个销售员,负责销售6中产品。每个销售员都将当天销售的每种产品各写一张便条交上来。每张便条包含内容为销售员的代号、产品代号、该种产品当天的销售额。 每位销售员每天可能上缴0-6张便条。假设收集到了上个月的所有便条,编写一个处理程序,读取上个月的销售情况,并做以下处理:(1) 计算上个月每个人每种产品的销售额;(2) 按销售额对销售员进行排序,输出排序结果;(3) 统计每种产品的总销售额,对这些产品按从高到低的顺序输出排序结果。 [提示] (1) 可采用结构体数组和文件系统实现。 (2) 结构体成员包括销售代号、产品和销售额。 (3) 程序运行后首先打印一个菜单:N.销售额录入;D.销售明细;S.排序;T.统计; Q.退出。 (4) 考虑利用函数调用,编写main函数进行演示。
答:本系统利用结构体数组和文件系统实现,结构体成员包括销售员的代号、产品代号、该种产品当天的销售额,程序运行后打印的菜单为N.销售额录入;D.销售明细;S.排序;T.统计; Q.退出。主要功能包括计算上个月每个人每种产品的销售额,按销售额对销售员进行排序,统计每种产品的总销售额,并按从高到低的顺序输出排序结果。
C语言编写销售管理系统 某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容:1)销售员的代号 +2)产品的代号 3)这种产品的当天的销售额 每位销售员每天可能上缴 0-5张便条。假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况,进行如下处理。" 1)计算上个月每个人每种产品的销售额。+ 2)按销售额对销售员进行排序,输出排序结果(销售员代号)及每个销售员的销售排名。- 3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额) 4)输出统计报表
好的,这是一个比较典型的 C 语言编写销售管理系统的案例。下面是具体的实现步骤:
1.定义结构体
首先需要定义一个结构体来保存每张便条的信息,包括销售员编号、产品编号和销售额:
```c
struct sales_note {
int salesman_id;
int product_id;
float amount;
};
```
2.读取销售便条
定义一个函数来读取上个月的所有便条,并将其保存在一个数组中:
```c
#define MAX_SALES_NOTES 1000
int read_sales_notes(struct sales_note notes[]) {
int n = 0;
// 读取上个月的所有便条,保存在数组 notes 中
// ...
return n;
}
```
3.计算每个销售员每种产品的销售额
定义一个二维数组来保存每个销售员每种产品的销售额,然后遍历所有便条,累加每个销售员每种产品的销售额:
```c
#define NUM_SALESMEN 4
#define NUM_PRODUCTS 5
float sales[NUM_SALESMEN][NUM_PRODUCTS] = {0};
void calculate_sales(struct sales_note notes[], int n) {
for (int i = 0; i < n; i++) {
int salesman_id = notes[i].salesman_id - 1;
int product_id = notes[i].product_id - 1;
float amount = notes[i].amount;
sales[salesman_id][product_id] += amount;
}
}
```
4.按销售额对销售员进行排序
定义一个结构体来保存每个销售员的销售额和排名,然后遍历每个销售员,计算其总销售额,并将其保存在结构体数组中。最后按销售额从大到小排序,并输出销售员代号和销售排名:
```c
struct salesman_sales {
int salesman_id;
float total_sales;
int rank;
};
void sort_salesmen(struct salesman_sales salesmen[]) {
// 计算每个销售员的总销售额,保存在结构体数组中
for (int i = 0; i < NUM_SALESMEN; i++) {
float total_sales = 0;
for (int j = 0; j < NUM_PRODUCTS; j++) {
total_sales += sales[i][j];
}
salesmen[i].salesman_id = i + 1;
salesmen[i].total_sales = total_sales;
}
// 按销售额从大到小排序
for (int i = 0; i < NUM_SALESMEN - 1; i++) {
for (int j = 0; j < NUM_SALESMEN - 1 - i; j++) {
if (salesmen[j].total_sales < salesmen[j + 1].total_sales) {
struct salesman_sales tmp = salesmen[j];
salesmen[j] = salesmen[j + 1];
salesmen[j + 1] = tmp;
}
}
}
// 输出排序结果
printf("Salesman\tSales\tRank\n");
for (int i = 0; i < NUM_SALESMEN; i++) {
salesmen[i].rank = i + 1;
printf("%d\t\t%.2f\t%d\n", salesmen[i].salesman_id, salesmen[i].total_sales, salesmen[i].rank);
}
}
```
5.统计每种产品的总销售额并排序
定义一个结构体来保存每种产品的销售额和编号,然后遍历每种产品,计算其总销售额,并将其保存在结构体数组中。最后按销售额从大到小排序,并输出产品编号和销售额:
```c
struct product_sales {
int product_id;
float total_sales;
};
void sort_products(struct product_sales products[]) {
// 计算每种产品的总销售额,保存在结构体数组中
for (int i = 0; i < NUM_PRODUCTS; i++) {
float total_sales = 0;
for (int j = 0; j < NUM_SALESMEN; j++) {
total_sales += sales[j][i];
}
products[i].product_id = i + 1;
products[i].total_sales = total_sales;
}
// 按销售额从大到小排序
for (int i = 0; i < NUM_PRODUCTS - 1; i++) {
for (int j = 0; j < NUM_PRODUCTS - 1 - i; j++) {
if (products[j].total_sales < products[j + 1].total_sales) {
struct product_sales tmp = products[j];
products[j] = products[j + 1];
products[j + 1] = tmp;
}
}
}
// 输出排序结果
printf("Product\tSales\n");
for (int i = 0; i < NUM_PRODUCTS; i++) {
printf("%d\t\t%.2f\n", products[i].product_id, products[i].total_sales);
}
}
```
6.输出统计报表
最后,在主函数中调用上述函数,输出统计报表:
```c
int main() {
struct sales_note notes[MAX_SALES_NOTES];
int n = read_sales_notes(notes);
calculate_sales(notes, n);
struct salesman_sales salesmen[NUM_SALESMEN];
sort_salesmen(salesmen);
struct product_sales products[NUM_PRODUCTS];
sort_products(products);
return 0;
}
```
以上就是 C 语言编写销售管理系统的具体实现步骤。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)