(高分) 求大家帮我解一道c语言的题

这道题是我们计算机专业的一到期末考试题要求答辩同时老师说还要对比这样就不能百度一篇粘上了所以在这里恳求各位帮我完成这道题千万别去哪个地方去抄一道这样小弟就完了明年就得交钱... 这道题是我们计算机专业的一到期末考试题 要求答辩 同时老师说还要对比 这样就不能百度一篇粘上了 所以在这里恳求各位 帮我完成这道题 千万别去哪个地方去抄一道 这样小弟就完了 明年就得交钱补考了 我是真的不会 所以恳求大家了 我要是过了会给最佳答案再外加一百分 题目是这样的
救灾帐篷信息管理系统
1、系统基本信息表:
(1)各省帐篷调出基本信息参考:
中文字段名 类型及长度 举例
省编号 char[3] 028
省名 char[20] 四川省
国家分配帐篷总数 int 367500
国家分配总金额 float 526570000
已调出帐篷数量 int 52600
已调出帐篷金额 float 94526425
统计日期 char[11] 2008/05/21
统计员 char[10]
(2)省属企业帐篷生产调出汇总基本信息参考:
中文字段名 类型及长度 举例
企业编号 char[12] 028-1234567
企业名称 char[30] 四川省攀登者公司
省分配帐篷总数 int 367500
已生产帐篷数量 int 13200
已生产帐篷金额 float 21052455
已调出帐篷数量 int 11000
已调出帐篷金额 float 18253275
统计日期 char[11] 2008/05/21
统计员 char[10]
(3)企业帐篷调出明细基本信息参考:
中文字段名 类型及长度 举例
企业编号 char[12] 028-1234567
调出帐篷批次 int 1
调出帐篷品种 char[30] 绿色20平方米帆布帐篷
调出帐篷数量 int 1000
调出帐篷金额 float 2532750
调出日期 char[11] 2008/05/21
统计员 char[10]
2、系统功能:
(1)信息录入功能:
 各省帐篷调出基本信息录入;
 省属企业帐篷生产调出汇总基本信息;
 企业帐篷调出明细基本信息录入;
(2)信息修改功能:
 各种基本数据的修改。即:允许对以及录入的数据重新进行编辑、修改。
(3)查询功能:
 查询全部省份中每个省的国家分配帐篷总数。
 查询全部省份中某个省(如:四川省)的已调出帐篷金额。
 查询某省某省属企业(如:四川省攀登者公司)帐篷生产调出汇总基本信息。
 查询某省属企业(如:四川省攀登者公司)是否调出了某种帐篷(如:绿色20平方
米帆布帐篷)的信息。
(4)统计功能:
 统计并输全部省份的国家分配帐篷总数、国家分配总金额、已采购帐篷数量、已采
西南科技大学计算机科学与技术学院 C 语言程序设计实验指导书
103
购帐篷金额。
 统计并输出省的全部省属企业已生产帐篷数量、已生产帐篷金额。
 统计并输出省属企业(四川省攀登者公司)某种帐篷(如:绿色20平方米帆布帐篷)
的已调出帐篷数量、已调出帐篷金额。
 统计并输出某省的某种帐篷(如:绿色20平方米帆布帐篷)的已调出帐篷数量、已
调出帐篷金额。
展开
 我来答
百度网友28c98d8
2010-06-19 · TA获得超过139个赞
知道小有建树答主
回答量:118
采纳率:0%
帮助的人:147万
展开全部
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<malloc.h>
#include<windows.h>
#include<conio.h>

struct geshen_info
{
char shen_number[4];
char shen_name[20];
int guojia_number;
float guojia_jine;
int yidiao_number;
float yidiao_jie;
char tongji_date[11];
char tongji_name[10];
};

struct inc_zhangpeng_info
{
char shen_name[20];
char inc_number[12];
char inc_name[30];
int shen_number;
int inc_add_number;
float inc_add_jine;
int inc_diaochu_number;
float inc_diaochu_jine;
char tongji_date[11];
char tongji_name[10];
};

struct inc_mingxi_info
{
char inc_number[12];
int pici;
char diaochu_pinzhong[30];

int diaochu_number;
float diaochu_jine;
char diaochu_date[11];
char tongji_name[10];
};

void geshen_info_luru()
{
system("cls");
FILE *pf;
char flag='y';
struct geshen_info info;
pf=fopen("c:\\各省帐篷调出基本信息.txt","a");

while(flag=='y')
{
memset(info.shen_name,0,20);
memset(info.tongji_date,0,11);
memset(info.tongji_name,0,10);
printf("请输入省编号(三位):\n");
fflush(stdin);
fgets(info.shen_number,5,stdin);
printf("请输入省份名称:\n");
fflush(stdin);
fgets(info.shen_name,20,stdin);
printf("请输入国家分配帐篷总数:\n");
fscanf(stdin,"%d",&info.guojia_number);
printf("请输入国家分配总金额:\n");
fscanf(stdin,"%f",&info.guojia_jine);
printf("请输入已调出帐篷数量:\n");
fscanf(stdin,"%d",&info.yidiao_number);
printf("请输入已调出帐篷金额:\n");
fscanf(stdin,"%f",&info.yidiao_jie);
printf("请输入统计日期(年/月/日):\n");
fflush(stdin);
fgets(info.tongji_date,11,stdin);
printf("请输入统计员:\n");
fflush(stdin);
fgets(info.tongji_name,10,stdin);
fwrite(&info,sizeof(struct geshen_info),1,pf);

printf("是否继续[y/n]:\n");
fflush(stdin);
flag=getchar();
}
fclose(pf);
}

void inc_zhangpeng_info_luru()
{
system("cls");
FILE *pf;
char flag='y';

struct inc_zhangpeng_info info;
pf=fopen("c:\\省属企业帐篷生产调出汇总基本信息.txt","a");
while(flag=='y')
{
memset(info.inc_name,0,30);
memset(info.tongji_date,0,11);
memset(info.tongji_name,0,10);
memset(info.shen_name,0,20);
printf("请输入该企业所属省份:\n");
fflush(stdin);
fgets(info.shen_name,20,stdin);
printf("请输入企业编号\n");
fflush(stdin);
fgets(info.inc_number,12,stdin);
printf("请输入企业名称\n");
fflush(stdin);
fgets(info.inc_name,30,stdin);
printf("请输入省分配帐篷总数\n");
fscanf(stdin,"%d",&info.shen_number);
printf("请输入已生产帐篷数量\n");
fscanf(stdin,"%d",&info.inc_add_number);
printf("请输入已生产帐篷金额\n");
fscanf(stdin,"%f",&info.inc_add_jine);
printf("请输入已调出帐篷数量\n");
fscanf(stdin,"%d",&info.inc_diaochu_number);
printf("请输入已调出帐篷金额\n");
fscanf(stdin,"%f",&info.inc_diaochu_jine);
printf("请输入统计日期\n");
fflush(stdin);
fgets(info.tongji_date,11,stdin);
printf("请输入统计员\n");
fflush(stdin);
fgets(info.tongji_name,10,stdin);
fwrite(&info,sizeof(struct inc_zhangpeng_info),1,pf);

printf("是否继续[y/n]:\n");
fflush(stdin);
flag=getchar();

}
fclose(pf);
}

void inc_mingxi_info_luru()
{
system("cls");
FILE *pf;
char flag='y';

struct inc_mingxi_info info;
pf=fopen("c:\\企业帐篷调出明细基本信息.txt","a");

while(flag=='y')
{
memset(info.diaochu_pinzhong,0,30);
memset(info.diaochu_date,0,11);
memset(info.tongji_name,0,10);
printf("请输入企业编号\n");
fflush(stdin);
fgets(info.inc_number,12,stdin);
printf("请输入调出帐篷批次\n");
fscanf(stdin,"%d",&info.pici);
printf("请输入调出帐篷品种\n");
fflush(stdin);
fgets(info.diaochu_pinzhong,30,stdin);
printf("请输入调出帐篷数量\n");
fscanf(stdin,"%d",&info.diaochu_number);
printf("请输入调出帐篷金额\n");
fscanf(stdin,"%f",&info.diaochu_jine);
printf("请输入统计日期\n");
fflush(stdin);
fgets(info.diaochu_date,11,stdin);
printf("请输入统计员\n");
fflush(stdin);
fgets(info.tongji_name,10,stdin);
fwrite(&info,sizeof(struct inc_mingxi_info),1,pf);

printf("是否继续[y/n]:\n");
fflush(stdin);
flag=getchar();

}
fclose(pf);
}

void change_geshen_info()
{
system("cls");
printf("**********修改各省信息:**********\n");
struct geshen_info info[100];
FILE *pf;
int i=0;
int length;
int choose;
char flag='n';
memset(info,0,sizeof(info));
pf=fopen("c:\\各省帐篷调出基本信息.txt","r");
if(!pf)
{
printf("打开信息库失败!\n");
Sleep(1000);
return;
}
while(!feof(pf))
{
fread(&info[i],sizeof(struct geshen_info),1,pf);
i++;
}
length=i-1;
if(length==0)
{
printf("无信息:\n");
Sleep(1500);
return;
}
printf("共有%d条信息\n",length);
for(i=0;i<length;i++)
{
printf(" 省编号: %s 省名: %s\n 国家分配帐篷总数: %d\n 国家分配总金额: %10.3f\n 已调出帐篷数量: %d\n 已调出帐篷金额: %10.3f\n 统计日期: %s\n 统计员: %s\n ",
info[i].shen_number,info[i].shen_name,info[i].guojia_number,info[i].guojia_jine,info[i].yidiao_number,info[i].yidiao_jie,info[i].tongji_date,info[i].tongji_name);
}
fclose(pf);
FILE *changef;
changef=fopen("c:\\各省帐篷调出基本信息.txt","w");
while(flag=='n')
{
printf("请选择你要对那个信息进行修改:\n");
scanf("%d",&choose);
printf("你要修改的是否为[y/n]");
printf(" 省编号: %s 省名: %s\n 国家分配帐篷总数: %d\n 国家分配总金额: %10.3f\n 已调出帐篷数量: %d\n 已调出帐篷金额: %10.3f\n 统计日期: %s\n 统计员: %s\n ",
info[choose-1].shen_number,info[choose-1].shen_name,info[choose-1].guojia_number,info[choose-1].guojia_jine,info[choose-1].yidiao_number,info[choose-1].yidiao_jie,info[choose-1].tongji_date,info[choose-1].tongji_name);
fflush(stdin);
flag=getchar();
}
printf("进行修改:\n");
printf("请输入省编号(三位):\n");
fflush(stdin);
fgets(info[choose-1].shen_number,5,stdin);
printf("请输入省份名称:\n");
fflush(stdin);
fgets(info[choose-1].shen_name,20,stdin);
printf("请输入国家分配帐篷总数:\n");
fscanf(stdin,"%d",&info[choose-1].guojia_number);
printf("请输入国家分配总金额:\n");
fscanf(stdin,"%f",&info[choose-1].guojia_jine);
printf("请输入已调出帐篷数量:\n");
fscanf(stdin,"%d",&info[choose-1].yidiao_number);
printf("请输入已调出帐篷金额:\n");
fscanf(stdin,"%f",&info[choose-1].yidiao_jie);
printf("请输入统计日期(年/月/日):\n");
fflush(stdin);
fgets(info[choose-1].tongji_date,11,stdin);
printf("请输入统计员:\n");
fflush(stdin);
fgets(info[choose-1].tongji_name,10,stdin);
printf("修改成功\n");
printf("对文件进行写入:\n");
for(i=0;i<length;i++)
{
fwrite(&info[i],sizeof(struct geshen_info),1,changef);
}
fclose(changef);

}

void change_inc_zhangpeng_info()
{
system("cls");
printf("**********修改各省属企业信息:**********\n");
struct inc_zhangpeng_info info[100];
FILE *pf;
int length;
int i=0;
int choose;
char flag='n';
memset(info,0,sizeof(info));
pf=fopen("c:\\省属企业帐篷生产调出汇总基本信息.txt","r");
if(!pf)
{
printf("打开信息库失败!\n");
Sleep(1000);
return;
}
while(!feof(pf))
{
fread(&info[i],sizeof(struct inc_zhangpeng_info),1,pf);
i++;
}
length=i-1;
if(length==0)
{
printf("无信息:\n");
Sleep(1500);
return;
}
printf("共有%d条信息\n",length);
for(i=0;i<length;i++)
{
printf(" 企业编号: %s 企业名称: %s\n 省分配帐篷总数: %d\n 已生产帐篷总数: %d\n 已生产帐篷金额: %10.3f 已调出帐篷数量: %d\n 已调出帐篷金额: %10.3f\n 统计日期: %s\n 统计员: %s\n ",
info[i].inc_number,info[i].inc_name,info[i].shen_number,info[i].inc_add_number,info[i].inc_add_jine,info[i].inc_diaochu_number,info[i].inc_diaochu_jine,info[i].tongji_date,info[i].tongji_name);
}
fclose(pf);
FILE *changef;
changef=fopen("c:\\省属企业帐篷生产调出汇总基本信息.txt","w");
while(flag=='n')
{
printf("请选择你要对那个信息进行修改:\n");
scanf("%d",&choose);
printf("你要修改的是否为[y/n]");
printf(" 省名: %s 企业编号: %s 企业名称: %s\n 省分配帐篷总数: %d\n 已生产帐篷总数: %d\n 已生产帐篷金额: %10.3f 已调出帐篷数量: %d\n 已调出帐篷金额: %10.3f\n 统计日期: %s\n 统计员: %s\n ",
info[choose-1].shen_name,info[choose-1].inc_number,info[choose-1].inc_name,info[choose-1].shen_number,info[choose-1].inc_add_number,info[choose-1].inc_add_jine,info[choose-1].inc_diaochu_number,info[choose-1].inc_diaochu_jine,info[choose-1].tongji_date,info[choose-1].tongji_name);
fflush(stdin);
flag=getchar();
}
printf("进行修改:\n");
memset(info[choose-1].inc_name,0,30);
memset(info[choose-1].tongji_date,0,11);
memset(info[choose-1].tongji_name,0,10);
memset(info[choose-1].shen_name,0,20);
printf("请输入该企业所属省份:\n");
fflush(stdin);
printf("请输入企业编号\n");
fflush(stdin);
fgets(info[choose-1].inc_number,12,stdin);
printf("请输入企业名称\n");
fflush(stdin);
fgets(info[choose-1].inc_name,30,stdin);
printf("请输入省分配帐篷总数\n");
fscanf(stdin,"%d",&info[choose-1].shen_number);
printf("请输入已生产帐篷数量\n");
fscanf(stdin,"%d",&info[choose-1].inc_add_number);
printf("请输入已生产帐篷金额\n");
fscanf(stdin,"%f",&info[choose-1].inc_add_jine);
printf("请输入已调出帐篷数量\n");
fscanf(stdin,"%d",&info[choose-1].inc_diaochu_number);
printf("请输入已调出帐篷金额\n");
fscanf(stdin,"%f",&info[choose-1].inc_diaochu_jine);
printf("请输入统计日期\n");
fflush(stdin);
fgets(info[choose-1].tongji_date,11,stdin);
printf("请输入统计员\n");
fflush(stdin);
fgets(info[choose-1].tongji_name,10,stdin);
printf("修改成功\n");
printf("对文件进行写入:\n");
for(i=0;i<length;i++)
{
fwrite(&info[i],sizeof(struct geshen_info),1,changef);
}
fclose(changef);

}

下面的发布上来了,给我邮箱,我发给你
百度网友275de57
2010-06-16 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:221
采纳率:0%
帮助的人:140万
展开全部
恩,朋友,我这里有一个学生成绩链表,

基本上你要的功能全有

你去只要修改一些输入输出,以及结构体就可以了

http://wenku.baidu.com/view/dc69e8ef5ef7ba0d4a733bff.html

我自己修改了把数据写入文件,由于有很多朋友要排序,麻烦...还没写,最近学习忙死了,...还没上传文库,你要的话可以留下邮箱,

这个链表可真是帮了很多朋友的忙啊,O(∩_∩)O哈哈~...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小ku1988
2010-06-16 · 超过43用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:0
展开全部
很繁琐、、、
先定义一个记录信息内嵌
(1)各省帐篷调出基本信息参考:
(2)省属企业帐篷生产调出汇总基本信息参考:
(3)企业帐篷调出明细基本信息参考:
的结构体、、
然后创建动态链表、、实现那些功能咯、、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心语007
2010-06-19 · 超过17用户采纳过TA的回答
知道答主
回答量:74
采纳率:0%
帮助的人:50.2万
展开全部
到底是要做系统还是要写论文就可以啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhczhyyh
2010-06-16 · 超过20用户采纳过TA的回答
知道答主
回答量:160
采纳率:0%
帮助的人:84万
展开全部
确实很难的啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式