C语言课程设计报告建筑工地信息管理系统
C课程设计报告(学生信息管理系统)

课程设计报告课程名称C语言程序设计课题名称学生信息管理系统专业电气工程及其自动化班级1086班学号 2姓名周铁指导教师彭祯刘琤郭芳2011年 6 月20 日湖南工程学院课程设计任务书课程名称C课程设计课题学生信息管理系统专业班级电气1086班学生姓名周铁学号 2指导老师彭祯刘琤郭芳审批任务书下达日期2011 年 6 月20 日任务完成日期2011 年7 月 1 日2目录一、题目总体介绍 ....................................... 错误!未定义书签。
二、需求分析 ............................................... 错误!未定义书签。
三、总体设计 ............................................... 错误!未定义书签。
1、现行系统组织结构图:...................... 错误!未定义书签。
2、数据结构分析....................................... 错误!未定义书签。
3、工作原理等........................................... 错误!未定义书签。
三、详细设计 ............................................... 错误!未定义书签。
四.系统调试与结果分析 ........................... 错误!未定义书签。
六、总结 ....................................................... 错误!未定义书签。
七、附件 ....................................................... 错误!未定义书签。
参考文献.................................................... 错误!未定义书签。
C语言程序设计课程设计报告

C语言程序设计课程设计实验报告一、设计名称:学生成绩治理查询系统实验项目性质:综合性所涉及课程:C语言程序设计打算学时:实验学时12二、设计目的:1.通过本课程设计,培育上机动手能力,使学生巩固《C语言程序设计》课程学习的内容,把握工程软件设计的大体方式,强化上机动手能力,闯过编程关;2.为后续各门运算机课程的学习打下坚实基础。
3.明白得程序设计的思路,把握结构化程序设计的方式,综合利用C语言进行程序编写,巩固常常利用的C语言概念,如数组、指针、结构体、链表、文件操作等,注意良好的程序设计风格的培育。
提高编写程序解决实际问题的能力、调试程序的技术。
三、设计环境(软件、硬件及条件)1.硬件:PC机2.软件:Turbo C++四、设计说明:程序系统的结构:用一系列图表列出本程序系统内的每一个程序(包括每一个模块和子程序)的名称、标识符和它们之间的层次结构关系。
主程序:新建:输入记录(遇#号时停止输入)。
插入:在指定位置插入记录。
显示:列出所有记录。
查询:一、按学号查询;二、按名字排序。
删除:一、按学号删除;二、按名字删除;3、删除所有记录。
排序:一、按语文成绩排序;二、按英语成绩排序;3、按数学成绩排序。
保留:保留为任意名字,系统自动加后缀名为.txt。
读取:读取程序目录下的后缀名为.txt的文件。
退出:退出程序。
五、各功能模块的具体实现,用图表表示。
输入记录显示开始:输入学号输入的学号是否为#Y N 结束,返回主菜单输入记录循环输入结束开始p=hp!=NULL输出学生信息;p=p->next结束按学号(姓名)查询信息Y N读取文件六、各模块(函数)的功能介绍,数据结构设计描述,参数说明等。
STUDENT *init(); /*初始化链表*/STUDENT *create(); /*新建链表*/STUDENT *del_no(STUDENT *h);/*按学号删除信息*/STUDENT *del_name(STUDENT *h); /*按姓名删除信息*/void print(STUDENT *h); /*显示信息函数*/void search_no(STUDENT *h); /*按学号搜索*/void search_name(STUDENT *h); /*按姓名搜索*/STUDENT *insert(STUDENT *h); /*插入信息函数*/void sort(STUDENT *h);/* 排序函数*/void save(STUDENT *h);/*保留数据到文件*/void load(STUDENT *h); /*从文件读取数据*/int menu_main(); /*菜单函数*/void inputs(char *prompt,char *s,int count);/*输出信息*/七、程序代码:Enter records\n");printf(" 2. Add records\n");printf(" 3. List records\n");printf(" 4. Search records\n");printf(" 5. Delete records\n");printf(" 6. Sort records\n");printf(" 9. Quit\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~9):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>9); /*选择项不在1~9之间重输*/return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Search records on number\n");printf(" 2. Search records on name\n");printf(" 3. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~3):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>3);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Chinese\n");printf(" 2. English\n");printf(" 3. Math\n");printf(" 4. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~4):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>4);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Delete records on number\n");printf(" 2. Delete records on name\n");printf(" 3. Delete all records\n");printf(" 4. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~4):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>4);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}.");/*提示*/getch(); /*读入任意字符*/}.\n");getch(); /*读入任意字符*/if(p==h)h=p->next;elseq->next=p->next;free(p); /*释放*/printf("\n%s had been deleted\n",s); }printf("\nPress any key to continue..."); getch(); /*读入任意字符*/return h;}.\n");getch();if(p==h)h=p->next;else q->next=p->next;free(p); /*释放*/printf("\n%s had been deleted\n",s);}printf("\nPress any key to continue...");getch(); /*读入任意字符*/return h;}.");getch(); /*读入任意字符*/}.");getch(); /*读入任意字符*/}xt"};STUDENT *p;FILE *fp; /*指向文件的指针*/printf("\n Input the filename:");scanf("%s",outfile);strcat(outfile,last);if((fp=fopen(outfile,"wb"))==NULL) /*打开文件,并判定打开是不是正常*/ {printf("\nCannot open file!\n");exit(1); /*退出*/}p=h;while(p!=NULL){if(fwrite(p,sizeof(STUDENT)-sizeof(p->next),1,fp)!=1){printf("Error!\n");exit(1);} /*写入*/p=p->next;}fclose(fp); /*关闭文件*/printf("\n------OK------\n");printf("Press any key to continue...");getch(); /*读入任意字符*/}xt"};STUDENT *p,*a1=NULL,*a2=NULL;FILE *fp;/*概念文件指针*/printf("\n Input the filename:");scanf("%s",outfile);strcat(outfile,last);if((fp=fopen(outfile,"rb"))==NULL)/*打开文件*/{printf("\nCannot open file!\n");exit(1); /*退出*/}p=h;a1=a2=(STUDENT *)malloc(LEN);fread(a1,sizeof(STUDENT)-sizeof(a1->next),1,fp); while(!feof(fp)){n++;if(n==1)h=a1;else a2->next=a1;a1=(STUDENT *)malloc(LEN);fread(a1,sizeof(STUDENT)-sizeof(a1->next),1,fp);}a2->next=NULL;printf("\n------OK------\n");printf("Press any key to continue...");getch(p); /*读入任意字符*/}///////////////////////////////////////////void sort(STUDENT *h) /*排序函数*/{int i=0,j;STUDENT *p,*q,*t,*h1,*z;clrscr(); /*清屏*/printf("Enter you choice :\n");scanf("%d",&j);z=h;h1=h->next;h->next=NULL;while(h1!=NULL){t=h1;h1=h1->next;q=h;while(t->score[--j]<p->score[--j]&&p!=NULL){q=p;p=p->next;}if(p==q){t->next=p;h=t;}else{t->next=p;q->next=t;}}p=h;while(p!=NULL){i++;p=p->next;}h=z;printf("------OK------\n");}//////////////////////////////////////////////////九、体会、总结本课程设计完成了设计一个学生成绩治理系统,学生的学习成绩进行治理,具有查询和检索功能,而且能够对指定文件操作。
C语言建筑工地管理系统

C语言课程设计实验报告班级:****姓名:***实验名称及序号:建筑工地管理系统所属院系:计算机网络工程指导老师:张冬梅运行结果截图若选择1 :输入建筑工地信息若选择2:输入配件信息若选择3:输入销售商信息若选择4:输入销售商—配件—建筑工的信息若选择5:修改建筑工地信息若选择6:修改配件信息等等、、整体E-R图设计的程序:1、定义了四个结构体:struct building{char name[20];/*工地名称*/char num[20];/*工地号*/char city[20];/*工地所在城市*/};struct peijian{char p_name[20];/*配件名称*/char p_num[20];/*配件号码*/char p_colour[20];/*配件颜色*/char p_weight[20];/*配件重量*/char p_area[20];/*配件产地*/};struct business{char b_name[20];/*销售商名字*/char b_num[20];/*销售商号码*/char b_state[20];/*销售状态*/char b_city[20];/*所在城市*/};struct total{char b_num[20];/*销售商号码*/char p_num[20];/*配件号*/char num[20];/*工地号*/char num2[20];/*销售商为工地提供配件数量*/ };2、在定义了十四个子函数:void add1();void add2();void add3();void add4();void find1();void find2();void find3();void find4();void del1();void del2();void del3();void del4();void seek1();void seek2();char flag='y';int n;这是函数类型void add1(){char flag='y';struct building build;FILE *fp;if((fp=fopen("d:/c.txt","a+b"))==NULL) {exit(0);}while(flag=='y'){printf("请输入建筑工地名称:");scanf("%s",);printf("请输入建筑工地编号:");scanf("%s",build.num);printf("请输入工地所在城市:");scanf("%s",build.city);fwrite(&build,sizeof(struct building),1,fp); printf("是否继续y/n:\n");scanf(" %c",&flag);}fclose(fp);}这为建筑工地信息输入函数void add2(){char flag='y';struct peijian pj;FILE *fp;if((fp=fopen("d:/d.txt","a+b"))==NULL) {exit(0);}while(flag=='y'){printf("请输入配件名称:");scanf("%s",pj.p_name);printf("请输入配件编号:");scanf("%s",pj.p_num);printf("请输入配件颜色:");scanf("%s",pj.p_colour);printf("请输入配件重量:");scanf("%s",pj.p_weight);printf("请输入配件产地:");scanf("%s",pj.p_area);fwrite(&pj,sizeof(struct peijian),1,fp); printf("是否继续y/n:\n");scanf(" %c",&flag);}fclose(fp);这为配件信息输入函数void add3(){char flag='y';struct business bus;FILE *fp;if((fp=fopen("d:/e.txt","a+b"))==NULL) {exit(0);}while(flag=='y'){printf("请输入销售商名称:");scanf("%s",bus.b_name);printf("请输入销售商编号:");scanf("%s",bus.b_num);printf("请输入销售商状态:");scanf("%s",bus.b_state);printf("请输入销售商所在城市:"); scanf("%s",bus.b_city);fwrite(&bus,sizeof(struct business),1,fp); printf("是否继续y/n:\n");scanf(" %c",&flag);}fclose(fp);}这是销售商行输入函数void add4(){char flag='y';struct total bpb;FILE *fp;if((fp=fopen("d:/f.txt","a+b"))==NULL) {exit(0);}while(flag=='y'){printf("请输入销售商号码:");scanf("%s",bpb.b_num);printf("请输入配件编号:");scanf("%s",bpb.b_num);printf("请输入建筑工地编号:");scanf("%s",bpb.num);printf("请输入销售商为工地提供配件数量:");scanf("%s",bpb.num2);fwrite(&bpb,sizeof(struct total),1,fp);printf("是否继续y/n:\n");scanf(" %c",&flag);}fclose(fp);}这是销售商—配件—建筑工地信息输入函数void find1(){FILE *fp;struct building build;char flag='y',find;char name[20];if((fp=fopen("d:/c.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");while(flag=='y'){printf("请输入您要修改的建筑工地名称:");scanf("%s",name);find='n';rewind(fp);while((fread(&build,sizeof(build),1,fp))==1&&find=='n') {if(strcmp(name,)==0){find='y';break;}}if(find=='y')printf("建筑工地名称:%s\n",);printf("建筑工地编号:%s\n",build.num);printf("建筑工地所在城市:%s\n",build.city);printf("请输入建筑工地名称:");scanf("%s",);printf("请输入建筑工地编号:");scanf("%s",build.num);printf("请输入建筑工地所在城市:");scanf("%s",build.city);fseek(fp,-(long)(sizeof(struct building)),1);/*文件标记向下*/ fwrite(&build,sizeof(build),1,fp);}printf("是否继续:");/*提示是否继续修改另一建筑工地信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}修改建筑工地信息函数void find2(){FILE *fp;struct peijian pj;char flag='y',find;char name[20];if((fp=fopen("d:/d.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");while(flag=='y'){printf("请输入您要修改的配件名称:");scanf("%s",name);find='n';rewind(fp);while((fread(&pj,sizeof(pj),1,fp))==1&&find=='n'){if(strcmp(pj.p_name,name)==0){find='y';break;}if(find=='y'){printf("配件名称:%s\n",pj.p_name);printf("配件编号:%s\n",pj.p_num);printf("配件颜色:%s\n",pj.p_colour);printf("配件重量:%s\n",pj.p_weight);printf("配件产地:%s\n",pj.p_area);printf("请输入配件名称:");scanf("%s",pj.p_name);printf("请输入配件编号:");scanf("%s",pj.p_name);printf("请输入配件颜色:");scanf("%s",pj.p_colour);printf("请输入配件重量:");scanf("%s",pj.p_weight);printf("请输入配件产地:");scanf("%s",pj.p_name);fseek(fp,-(long)(sizeof(struct peijian)),1);/*文件标记向下*/ fwrite(&pj,sizeof(pj),1,fp);}printf("是否继续:");/*提示是否继续修改另一配件信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}修改配件信息函数void find3(){FILE *fp;struct business bus;char flag='y',find;char name[20];if((fp=fopen("d:/e.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");while(flag=='y'){printf("请输入您要修改的销售商名称");scanf("%s",name);find='n';rewind(fp);while((fread(&bus,sizeof(bus),1,fp))==1&&find=='n'){if(strcmp(bus.b_name,name)==0){find='y';break;}}if(find=='y'){printf("销售商名称:%s\n",bus.b_name);printf("销售商编号:%s\n",bus.b_name);printf("销售商状态:%s\n",bus.b_state);printf("所在城市:%s\n",bus.b_city);printf("请输入名称:");scanf("%s",bus.b_name);printf("请输入编号:");scanf("%s",bus.b_num);printf("请输入状态:");scanf("%s",bus.b_state);printf("请输入所在城市名:");scanf("%s",bus.b_city);fseek(fp,-(long)(sizeof(struct business)),1);/*文件标记向下*/ fwrite(&bus,sizeof(bus),1,fp);}printf("是否继续:");/*提示是否继续修改另一已存用户信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}修改销售商信息函数void find4()/*按销售商号修改*/{FILE *fp;struct total bpb;char flag='y',find;char num[20];if((fp=fopen("d:/f.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");while(flag=='y'){printf("请输入您要修改的对应对中销售商编号:");scanf("%s",num);find='n';rewind(fp);while((fread(&bpb,sizeof(bpb),1,fp))==1&&find=='n'){if(strcmp(num,bpb.b_num)==0){find='y';break;}}if(find=='y'){printf("销售商编号:%s\n",bpb.b_num);printf("配件编号:%s\n",bpb.p_num);printf("建筑工地编号:%s\n",bpb.num);printf("提供配件数量:%s\n",bpb.num2);printf("请输入销售商编号:");scanf("%s",bpb.b_num);printf("请输入配件编号:");scanf("%s",bpb.p_num);printf("请输入建筑工地编号:");scanf("%s",bpb.num);printf("请输入提供配件数量:");scanf("%s",bpb.num2);fseek(fp,-(long)(sizeof(struct total)),1);/*文件标记向下*/ fwrite(&bpb,sizeof(bpb),1,fp);}printf("是否继续:");/*提示是否继续修改另一已存用户信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}修改销售商—配件—建筑工地信息函数void del1(){struct building build;FILE *fp;if((fp=fopen("d:/c.txt","r+w"))==NULL)printf("打开文件出错");char flag='y';char find='n';char mc[30];char n;while(flag=='y'){printf("请输入姓名:");scanf("%s",mc);rewind(fp);while((fread(&build,sizeof(build),1,fp))==1&&find=='n') {if(strcmp(mc,)==0){find='y';break;}}if(find=='y'){printf("建筑工地名称:%s\n",);printf("建筑工地编号:%s\n",build.num);printf("建筑工地所在城市:%s\n",build.city);printf("是否确定删除y/n:");scanf("%c",&n);if(n=='y')strcpy(,"");strcpy(build.num,"");strcpy(build.city,"");fseek(fp,-(long)(sizeof(struct building)),1);fwrite(&build,sizeof(build),1,fp);printf("删除成功\n");}printf("是否继续删除y/n:\n");scanf(" %c",&flag);}fclose(fp);}删除建筑工地信息函数void del2()struct peijian pj;FILE *fp;if((fp=fopen("d:/d.txt","r+w"))==NULL)printf("打开文件出错");char flag='y';char find='n';char mc[30];char n;while(flag=='y'){printf("请输入配件名称:");scanf("%s",mc);rewind(fp);while((fread(&pj,sizeof(pj),1,fp))==1&&find=='n') {if(strcmp(mc,pj.p_name)==0){find='y';break;}}if(find=='y'){printf("名称:%s\n",pj.p_name);printf("编号:%s\n",pj.p_num);printf("颜色:%s\n",pj.p_colour);printf("重量:%s\n",pj.p_weight);printf("产地:%s\n",pj.p_area);printf("是否确定删除y/n:");scanf("%c",&n);if(n=='y')strcpy(pj.p_name,"");strcpy(pj.p_num,"");strcpy(pj.p_colour,"");strcpy(pj.p_weight,"");strcpy(pj.p_area,"");fseek(fp,-(long)(sizeof(struct peijian)),1);fwrite(&pj,sizeof(pj),1,fp);printf("删除成功\n");}printf("是否继续删除y/n:\n");scanf(" %c",&flag);fclose(fp);}删除配件信息函数void del3(){struct business bus;FILE *fp;if((fp=fopen("d:/e.txt","r+w"))==NULL)printf("打开文件出错");char flag='y';char find='n';char mc[30];char n;while(flag=='y'){printf("请输入销售商名称:");scanf("%s",mc);rewind(fp);while((fread(&bus,sizeof(bus),1,fp))==1&&find=='n') {if(strcmp(mc,bus.b_name)==0){find='y';break;}}if(find=='y'){printf("销售商名称:%s\n",bus.b_name);printf("销售商编号:%s\n",bus.b_num);printf("销售商状态:%s\n",bus.b_state);printf("销售商所在城市:%s\n",bus.b_city);printf("是否确定删除y/n:");scanf("%c",&n);if(n=='y')strcpy(bus.b_name,"");strcpy(bus.b_num,"");strcpy(bus.b_state,"");strcpy(bus.b_city,"");fseek(fp,-(long)(sizeof(struct business)),1);fwrite(&bus,sizeof(bus),1,fp);printf("删除成功\n");printf("是否继续删除y/n:\n");scanf(" %c",&flag);}fclose(fp);}删除销售商信息函数void del4(){struct total bpb;FILE *fp;if((fp=fopen("d:/f.txt","r+w"))==NULL)printf("打开文件出错");char flag='y';char find='n';char bh[30];char n;while(flag=='y'){printf("请输入销售商编号:");scanf("%s",bh);rewind(fp);while((fread(&bpb,sizeof(bpb),1,fp))==1&&find=='n') {if(strcmp(bh,bpb.b_num)==0){find='y';break;}}if(find=='y'){printf("销售商编号:%s\n",bpb.b_num);printf("配件编号:%s\n",bpb.p_num);printf("建筑工地编号:%s\n",bpb.num);printf("提供配件数量:%s\n",bpb.num2);printf("是否确定删除y/n:");scanf("%c",&n);if(n=='y')strcpy(bpb.b_num,"");strcpy(bpb.p_num,"");strcpy(bpb.num,"");strcpy(bpb.num2,"");fseek(fp,-(long)(sizeof(struct total)),1);fwrite(&bpb,sizeof(bpb),1,fp);printf("删除成功\n");}printf("是否继续删除y/n:\n");scanf(" %c",&flag);}fclose(fp);}删除销售商—配件—建筑工地信息函数void seek1(){FILE *fp1,*fp2;struct peijian pj;struct business bus;char flag='y',seek;if((fp1=fopen("d:/d.txt","r+w"))==NULL||(fp2=fopen("d:/e.txt","r+w"))==NULL)printf("\n\tThe system can't open the files!!");while (flag='y'){seek='n';rewind(fp1);rewind(fp2);while ((fread(&pj,sizeof(pj),1,fp1))==1&&(fread(&bus,sizeof(bus),1,fp2))==1&&seek=='n') {if(strcmp(pj.p_area,bus.b_city)==0){seek='y';break;}}if(seek='y'){printf("配件名称:%s\n",pj.p_name);printf("配件编号:%s\n",pj.p_num);printf("配件颜色:%s\n",pj.p_colour);printf("配件重量:%s\n",pj.p_weight);printf("配件产地:%s\n",pj.p_area);printf("名称:%s\n",bus.b_name);printf("编号:%s\n",bus.b_num);printf("状态:%s\n",bus.b_state);printf("销售商所在城市:%s\n",bus.b_city);}printf("是否继续:");/*提示是否继续修改另一配件信息*/scanf(" %c",&flag);}fclose(fp1);fclose(fp2);/*关闭文件*/}查询与供应商所在城市相同零件—供应商记录对函数void seek2(){FILE *fp1,*fp2;struct building build;struct business bus;char flag='y',seek;if((fp1=fopen("d:/c.txt","r+w"))==NULL||(fp2=fopen("d:/e.txt","r+w"))==NULL)printf("\n\tThe system can't open the files!!");while (flag='y'){seek='n';rewind(fp1);rewind(fp2);while ((fread(&build,sizeof(build),1,fp1))==1&&(fread(&bus,sizeof(bus),1,fp2))==1&&seek=='n') {if(strcmp(build.city,bus.b_city)==0){seek='y';break;}}if(seek='y'){printf("建筑工地名称:%s\n",);printf("建筑工地编号:%s\n",build.num);printf("建筑工地所在城市:%s\n",&build.city);printf("名称:%s\n",bus.b_name);printf("编号:%s\n",bus.b_num);printf("状态:%s\n",bus.b_state);printf("销售商所在城市:%s\n",bus.b_city);}printf("是否继续:");/*提示是否继续修改另一配件信息*/scanf(" %c",&flag);}fclose(fp1);fclose(fp2); /*关闭文件*/}查询与供应商所在城市相同项目—供应商记录对函数最后是主函数:void main() {while(n!=15) {printf("1.增加建筑工地信息\n2.增加配件信息\n3.增加销售商信息\n4.增加销售商-配件-建筑工地信息\n5.修改建筑工地信息\n6.修改配件信息\n7.修改销售商信息\n8.修改销售商-配件-建筑工地信息\n9.删除建筑工地信息\n10.删除配件信息\n11.删除销售商信息\n12.删除销售商-配件-建筑工地信息\n13.查询与供应商所在城市相同的零件-供应商记录对\n14.查询与供应商所在城市相同的项目-供应商记录对\n15.退出系统\n请选择:"); scanf("%d",&n); if(n==1)add1();else if(n==2) add2();else if(n==3) add3();else if(n==4) add4();else if(n==5) find1();else if(n==6) find2();else if(n==7) find3();else if(n==8) find4();else if(n==9) del1();else if(n==10) del2();else if(n==11) del3();else if(n==12) del4();else if(n==13) seek1();else if(n==14) seek2();}}C语言程序设计报告。
C语言课程信息管理系统课程设计报告

《C语言程序设计》课程设计报告专业:班级:姓名:指导教师:二零一二年十二月二十六日目录一、设计题目 (2)二、设计目的 (2)三、设计内容 (2)3.1需求分析 (2)3.2 概要设计 (3)3.3 详细设计 (6)3.5 编写过程中遇到的问题及解决办法 (7)3.4 调试结果 (8)3.6课程设计总结 (16)四、参考书目 (17)附录A 程序源代码 (18)一、设计题目:课程信息管理系统二、设计目的1、熟练掌握C语言课程中所学的理论知识;2、通过综合C语言的基本知识来解决实际问题;3、加强分析和解决问题的能力。
三、设计内容3.1 需求分析设计对n门课程进行管理的课程信息管理系统,每门课程有课程编号,课程名称,课程性质(B为必修,X为选修),总学时,学分等。
系统功能包括:1、系统以菜单方式工作,密码登陆。
2、课程信息的录入功能(增加数据)。
用数组数据类型赋初值的方法把课程信息送到各个数组中(但注意要是合法数据),然后把它们输出显示。
3、课程信息的删除(删除数据)。
任意输入一门课程的编号,将它所有的信息从数组中删除。
4、课程信息的浏览功能(查找数据)。
任意输入一门课程的编号,打印出所有相关数据。
要求能多次查找。
5、课程信息的删除(修改数据)。
任意输入一门课程的编号,打印出所有相关信息后,可对某一项信息进行修改并保存。
6、课程信息的计算并排序。
计算所有课程的总学分及平均学分(aver,单精度,输出一位小数),将包括所有数据的数组元素按价格从高到低的顺序排序打印出来。
3.2 概要设计程序流程图:模块分解:void pasd(); //声明密码函数声明部分(1)主函数模块void zhujie(); //声明zhujie()函数zhujie(); //调用zhujie()函数调用部分pasd(); //调用密码函数联系//声明业务函数(2调用部分:yewu(); //调用业务函数联系void inputcouinfo(void); //声明输入函数void updatecouinfo(void); //声明修改函数void addcouinfo(void); //声明添加函数声明部分void findcouinfo(void); //声明查询函数void ordercouinfo(void); //声明排序函数(3)业务模块void delcouinfo(void); //声明删除函数inputcouinfo(); //调用输入函数case '1':findcouinfo();break; //调用课程信息查询调用部分case '2':delcouinfo();break; //调用课程信息删除case '3':updatecouinfo();break; //调用课程信息修改case '4':ordercouinfo();break; //调用课程信息排序case '5':addcouinfo(); break; //调用课程信息添加数据结构的说明:#define n1 20 //控制课程个数的存储空间#define m1 5 //控制课程属性个数的存储空间空间char couinfo[n1][m1][16]; //定义全局数组char password[]={"123456"}; //原密码int a, i,j,t=0,c=0,n=4,m=5; //定义全局变量密码模块:char p[9]; //定义密码数组p[i]==8 //控制退格p[i]==13 //回车控制strcmp(p,password)==0 //密码匹配字符串比较函数int n=3; //密码输入次数控制业务模块:system("cls"); //清屏函数3.3 详细设计密码模块:注释删除模块:3.4 编写过程中遇到的问题及解决办法(1)在调试函数的过程时,一般高级语言要求函数实参与形参个数与类型一致,但在C语言编译在该点检查不严格。
c语言课程设计报告书3篇

c语言课程设计报告书3篇c语言课程设计报告书1我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。
在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
包括了程序模块处理。
简单界面程序。
高级界面程序。
程序的添加修改。
用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。
课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1、加深对课堂讲授内容的理解课堂上要讲授许多关于c语言的.语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。
C语言课程信息管理系统课程设计报告

课程设计报告课程名称C语言课程设计课题名称课程信息管理系统专业班级学号姓名指导教师湖南工程学院课程设计任务书课程名称C语言课程设计课题课程信息管理系统专业班级学生姓名学号指导老师审批任务书下达日期2014 年09 月01 日任务完成日期2014年09 月08 日目录一、设计题目 (4)二、设计目的 (4)三、设计内容 (4)3.1需求分析 (4)3.2 概要设计 (5)3.3 详细设计 (8)3.5 编写过程中遇到的问题及解决办法 (9)3.4 调试结果 (10)3.6课程设计总结 (18)附录A 程序源代码 (19)一、设计内容与设计要求1.设计内容:课题八:课程信息管理系统。
具体内容见附录。
2.设计要求:1)设计正确,方案合理。
2)界面友好,使用方便。
3)程序精炼,结构清晰。
4)上机演示。
3.设计报告要求:课程设计报告格式如下:1)正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体,行距为22。
2)正文的内容:课题的主要功能、课题的功能模块的划分、主要功能的实现、程序调试、总结、附件(所有程序的源代码,要求对程序写出必要的注释),课程设计报告需5000字左右(不含附件)。
3)课程设计报告装订顺序:封面、任务书、目录、正文、评分、程序清单附件。
二、进度安排3.2 概要设计程序流程图:模块分解:void pasd(); //声明密码函数声明部分(1)主函数模块void zhujie(); //声明zhujie()函数zhujie(); //调用zhujie()函数调用部分//调用密码函数//声明业务函数(2//调用业务函数void inputcouinfo(void); //声明输入函数void updatecouinfo(void); //声明修改函数//声明添加函数//声明查询函数//声明排序函数(3void delcouinfo(void); //声明删除函数inputcouinfo(); //调用输入函数调用课程信息查询//调用课程信息删除调用课程信息修改调用课程信息排序case '5':addcouinfo(); break; //调用课程信息添加数据结构的说明:#define n1 20 //控制课程个数的存储空间#define m1 5 //控制课程属性个数的存储空间空间char couinfo[n1][m1][16]; //定义全局数组char password[]={"123456"}; //原密码int a, i,j,t=0,c=0,n=4,m=5; //定义全局变量密码模块:char p[9]; //定义密码数组p[i]==8 //控制退格p[i]==13 //回车控制strcmp(p,password)==0 //密码匹配字符串比较函数int n=3; //密码输入次数控制业务模块:system("cls"); //清屏函数3.3 详细设计删除模块:3.4 编写过程中遇到的问题及解决办法(1)在调试函数的过程时,一般高级语言要求函数实参与形参个数与类型一致,但在C 语言编译在该点检查不严格。
教学信息管理系统c语言课程设计报告

教学信息管理系统c语言课程设计报告《程序设计基础》课程设计报告题目:学院教学信息管理系统日期:2012.5.21班级:计算机应用技术1102班学号:姓名:一.设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计基础(C语言)》课程后进行的一次全面的综合练习。
本课程设计的目的:1. 巩固和加深学生对C语言课程的基本知识的理解和掌握2. 掌握C语言编程和程序调试的基本技能3. 利用C语言进行基本的软件设计4. 掌握书写程序设计说明文档的能力5. 提高运用C语言解决实际问题的能力二.课程设计任务书题目:学院教学信息管理系统学院教学信息管理系统,每一条记录包括一位教师的职工号、姓名、职称、性别、3门课程教学效果、综合评分。
系统要求实现以下功能:1、输入:输入每一位教师记录,将其信息写入文件中。
2、显示:显示每位教师记录。
3、排序:按职工号或教学效果综合评分进行排序,并显示。
4、查找:完成按姓名或职工号查找教师的相关记录,并显示。
分步实施:1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数。
2、建立一个文件,将每位教师的相关(教学)信息写入文件中并能显示于屏幕上。
3、完成排序(按职工号、姓名、职称等)、查找等功能。
要求:1、用C语言实现程序设计;2、利用结构体数组或者链表实现教师信息的数据结构设计;3、系统的各个功能模块要求用函数实现;4、界面友好(良好的人机交互),程序加必要的注释。
三.系统设计方案用到数据结构的定义:在此程序中用到了结构体的定义,结构体数组的定义以及变量的申明,还用到了外部函数的申明及调用。
在主函数中,输出教师信息的函数是贯穿在程序始终的,例如要实现教师的排序这一模块时,排完序后就需要用输出信息的函数来输出排序后的信息。
这就得需要多个函数共同实现这一个模块。
此程序的流程:由于系统需要实现返回主界面的功能,那么在程序的开头就需要使用do....while语句,在do....while语句内首先将系统的主界面写下来,然后又要根据不同的按键实现排序、查找、结束等功能,这就必须使用switch 语句来实现,由于实现一个功能后,还需要跳出此功能进入下一个功能,这样就要需要使用while语句来循环,直到用户需要返回主界面时就设定一个条件跳出while语句。
课程信息管理系统c语言课程设计

课程信息管理系统c语言课程设计一、课程目标知识目标:1. 让学生掌握C语言中数组、结构体和文件操作等基本知识,并能够运用这些知识设计简单的信息管理系统。
2. 使学生了解课程信息管理系统的基本功能,如增加、删除、修改和查询等。
技能目标:1. 培养学生运用C语言进行程序设计的能力,能够独立编写、调试和运行简单的信息管理系统程序。
2. 培养学生分析问题、解决问题的能力,使其能够根据需求进行系统功能的设计和实现。
情感态度价值观目标:1. 培养学生对待编程的兴趣和热情,激发他们主动学习和探索的精神。
2. 培养学生的团队协作意识,学会与他人共同解决问题,提高沟通与协作能力。
3. 引导学生认识到编程在现代社会中的重要作用,培养他们利用技术手段解决实际问题的意识。
课程性质分析:本课程为C语言课程设计,旨在让学生将所学的C语言知识应用于实际项目中,提高编程实践能力。
学生特点分析:学生已具备一定的C语言基础,对数组、结构体和文件操作等知识有一定的了解,但可能缺乏将这些知识综合运用的经验。
教学要求:1. 结合课程信息管理系统的实际需求,引导学生运用所学知识进行程序设计。
2. 注重培养学生的动手实践能力,鼓励学生积极参与课程设计和讨论。
3. 关注学生的个体差异,提供有针对性的指导,帮助每位学生达成课程目标。
二、教学内容1. 数组与字符串操作:回顾数组的基本概念,掌握一维、二维数组的使用,以及字符串的存储和处理方法。
结合课程设计,实现对课程信息的批量存储和显示。
2. 结构体与链表:讲解结构体的定义和用法,引导学生利用结构体表示课程信息,并掌握链表的基本操作,如增加、删除节点等,以实现课程信息的动态管理。
3. 文件操作:介绍文件的基本概念,教授文件的打开、关闭、读写等操作,使学生能够将课程信息保存到文件中,并从文件中读取数据。
4. 函数与模块化编程:强调模块化编程的重要性,让学生掌握函数的定义、调用和参数传递方法,将程序划分为多个功能模块,提高代码的可读性和可维护性。
c语言课程设计信息管理系统

c语言课程设计信息管理系统一、课程目标知识目标:1. 理解C语言在信息管理系统的基本应用,掌握结构体、文件操作等核心知识点的使用;2. 学会使用C语言编程实现简单的信息管理系统,包括数据的增、删、改、查等功能;3. 了解信息管理系统的基本原理,理解数据组织、存储和检索的重要性。
技能目标:1. 能够运用所学知识,独立设计并编写简单的信息管理系统程序;2. 培养良好的编程习惯,编写规范、可读性强的代码;3. 学会使用调试工具,分析和解决程序中出现的错误。
情感态度价值观目标:1. 培养学生对C语言的兴趣,激发学习热情,提高自主学习和解决问题的能力;2. 增强学生的团队合作意识,培养合作解决问题的能力;3. 通过编程实践,培养学生勇于尝试、不断优化的精神。
课程性质:本课程为C语言高级应用课程,注重理论与实践相结合,强调学生动手实践能力的培养。
学生特点:学生已经掌握了C语言的基础知识,具有一定的编程能力,但对信息管理系统的开发较为陌生。
教学要求:结合学生特点,以实践为导向,注重知识点的巩固和拓展,培养学生解决实际问题的能力。
通过本课程的学习,使学生能够将所学知识应用于实际项目中,提高其职业素养。
二、教学内容1. 知识点回顾:数据类型、运算符、控制结构、函数、数组、指针、结构体和文件操作等C语言基础知识。
2. 教学大纲:- 第一章:信息管理系统概述- 1.1 信息管理系统的基本概念- 1.2 信息管理系统的应用领域- 1.3 C语言在信息管理系统中的应用- 第二章:C语言基础知识回顾- 2.1 数据类型与运算符- 2.2 控制结构- 2.3 函数- 2.4 数组与指针- 2.5 结构体- 2.6 文件操作- 第三章:信息管理系统设计- 3.1 系统需求分析- 3.2 数据设计- 3.3 功能设计- 第四章:C语言实现信息管理系统- 4.1 系统框架搭建- 4.2 数据录入与显示- 4.3 数据增删改查功能实现- 4.4 系统测试与优化- 第五章:课程实践与拓展- 5.1 完成一个简易信息管理系统的开发- 5.2 优化系统性能- 5.3 探索C语言在信息管理系统中的其他应用教学内容安排与进度:共15课时,按照教学大纲逐步开展教学,每章节分配相应课时,确保学生充分理解和掌握所学知识。
c语言程序设计 项目信息管理系统 设计思路

c语言程序设计项目信息管理系统设计思路1.引言1.1 概述概述部分的内容是对整篇文章的简要介绍,重点阐述文章要解决的问题和提出的解决方案。
在这篇文章中,我们将探讨C语言程序设计中的项目信息管理系统的设计思路。
项目信息管理系统是一种用于管理项目的软件工具,它可以帮助我们高效地组织和管理项目相关的信息,包括项目计划、任务分配、进展跟踪等。
在本文中,我们将重点关注项目信息管理系统的设计思路,并介绍如何使用C语言编写一个简单而实用的项目信息管理系统。
该项目将通过C语言编写一个基于控制台界面的项目信息管理系统,通过使用C语言的相关知识和技巧,实现项目信息的录入、修改、查询和删除等功能。
我们将通过分析需求,设计合适的数据结构来存储项目信息,并编写相应的函数来实现各项功能。
在文章的后续部分,我们将详细讨论程序设计的概述以及具体的项目信息管理系统的设计思路。
通过本文的阐述,读者将能够了解到C语言程序设计的基本原理和技巧,并且能够运用这些知识来设计和实现自己的项目信息管理系统。
总之,在这篇文章中,我们将通过介绍C语言程序设计的基本原理和技巧,深入探讨项目信息管理系统的设计思路,帮助读者了解和掌握C语言中的项目信息管理系统的开发方法。
1.2 文章结构本文主要分为引言、正文和结论三个部分。
下面将针对每个部分进行详细说明。
1. 引言:引言部分主要包括概述、文章结构和目的三个小节。
首先,我们将介绍整篇文章的背景和目的,引入读者对项目信息管理系统设计思路的认识。
其次,我们将阐述文章结构,帮助读者建立清晰的思维框架,便于理解全文的逻辑结构。
最后,我们将明确文章的目的,即通过本文的阐述,让读者对C语言程序设计中项目信息管理系统的设计思路有一个全面而深入的了解。
2. 正文:正文部分主要包括程序设计概述和项目信息管理系统设计思路两个小节。
首先,我们将简要介绍C语言程序设计的概念和基本知识,引导读者对C语言程序设计有一个整体的了解。
c语言课程设计建筑工地

c语言课程设计建筑工地一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、数据结构、算法和编程技巧,培养学生运用C语言解决实际问题的能力。
具体目标如下:1.知识目标:(1)理解C语言的基本语法和编程规范;(2)掌握常用的数据类型、运算符和表达式;(3)熟悉控制结构、函数、数组和指针的概念及应用;(4)了解常见算法和编程思想。
2.技能目标:(1)能够使用C语言编写简单的程序;(2)具备调试和优化程序的能力;(3)学会使用常用的编程工具和开发环境;(4)能够独立解决问题,具备一定的编程实践经验。
3.情感态度价值观目标:(1)培养学生的团队合作意识和沟通能力;(2)激发学生对计算机科学的兴趣和热情;(3)培养学生的创新精神和批判性思维;(4)强化学生的自主学习能力和责任感。
二、教学内容根据课程目标,本课程的教学内容主要包括以下几个方面:1.C语言基本语法和编程规范;2.数据类型、运算符和表达式;3.控制结构、函数、数组和指针;4.常见算法和编程思想;5.编程实践和案例分析。
具体安排如下:第1-2周:C语言基本语法和编程规范;第3-4周:数据类型、运算符和表达式;第5-6周:控制结构、函数、数组和指针;第7-8周:常见算法和编程思想;第9-10周:编程实践和案例分析。
三、教学方法为了实现课程目标,本课程将采用以下教学方法:1.讲授法:用于讲解C语言的基本语法、数据结构、算法和编程技巧;2.案例分析法:通过分析实际案例,使学生更好地理解和运用所学知识;3.实验法:安排上机实验,让学生动手编写代码,培养实际编程能力;4.讨论法:课堂讨论,促进学生之间的交流与合作,提高问题解决能力。
四、教学资源为了支持教学内容和教学方法的实施,本课程将采用以下教学资源:1.教材:《C语言程序设计》;2.参考书:《C Primer Plus》、《C和指针》;3.多媒体资料:教学PPT、视频教程;4.实验设备:计算机、网络环境。
c语言课程信息管理系统实训总结

C语言课程信息管理系统实训总结一、项目背景1.1 项目目的本次实训的项目是为了让学生通过实践的方式提高C语言编程能力,了解信息管理系统的设计与实现。
1.2 项目内容通过本次实训,学生需要设计和实现一个基于C语言的课程信息管理系统,包括学生信息管理、课程信息管理、成绩管理等功能模块。
1.3 项目意义通过这个项目,学生将掌握C语言编程的基本技巧,加深对信息管理系统的理解,提高问题分析和解决能力。
二、项目实施过程2.1 项目需求分析在项目开始之前,首先进行了对需求的分析,明确了系统需要实现的功能模块和具体需求,为后续的开发工作奠定了基础。
2.2 系统设计基于需求分析的基础上,进行了系统的整体设计和模块设计,确定了系统的架构和各个模块之间的关系,明确了每个模块的功能和实现方式。
2.3 编码实现在系统设计完成后,学生开始进行编码实现,根据设计文档和模块需求进行编码工作,实现每个功能模块的具体逻辑。
2.4 测试调试编码实现完成后,进行了系统的测试和调试工作,确保系统的稳定性和功能的正确性,对系统进行了全面的测试覆盖。
三、项目总结与反思3.1 项目成果通过本次实训,学生们成功地设计并实现了一个完整的C语言课程信息管理系统,包括学生信息管理、课程信息管理、成绩管理等功能模块,实现了项目的预期目标。
3.2 学习收获通过这个项目,学生们不仅加深了对C语言编程的理解和掌握,还了解了信息管理系统的设计和实现方法,培养了问题分析和解决能力,提高了团队协作能力。
3.3 反思与展望在项目实施的过程中,我们也发现了一些问题和不足,比如需求分析不够清晰、部分模块设计不够合理等,对这些问题进行了总结和反思,并为未来的项目实施提出了改进和完善的建议。
四、结语通过本次C语言课程信息管理系统实训,学生们不仅掌握了C语言编程的基本技巧,而且加深了对信息管理系统的理解,提高了问题分析和解决能力。
希望学生们能够将实训中所学到的知识应用于实际工作中,不断提高自己的技术水平,为未来的职业发展打下坚实的基础。
c信息管理系统课程设计

c信息管理系统课程设计一、课程目标知识目标:1. 让学生掌握信息管理系统的基本概念、功能及组成;2. 了解信息管理系统的应用领域及实际案例;3. 理解数据库管理、信息检索、数据安全等基本知识。
技能目标:1. 学会使用至少一种信息管理系统软件,并能进行基本操作;2. 能够利用信息管理系统进行数据录入、查询、更新和删除;3. 掌握信息管理系统的简单维护和故障排除方法。
情感态度价值观目标:1. 培养学生对信息管理系统的兴趣,激发其主动学习的积极性;2. 增强学生的信息意识,使其认识到信息管理系统在现代生活中的重要性;3. 培养学生的团队协作精神,提高其沟通与表达能力。
课程性质:本课程为实践性较强的课程,旨在让学生在实际操作中掌握信息管理系统的相关知识。
学生特点:学生具备一定的计算机操作基础,对新鲜事物充满好奇,喜欢动手实践。
教学要求:结合学生特点,注重理论与实践相结合,以任务驱动教学,鼓励学生主动探究、合作交流,提高其解决实际问题的能力。
通过本课程的学习,使学生能够达到以上所述具体学习成果。
二、教学内容1. 信息管理系统概述- 信息管理系统的基本概念- 信息管理系统的功能与应用领域- 信息管理系统的组成与分类2. 数据库基础知识- 数据库的基本概念- 数据模型与关系数据库- 数据库设计原则与步骤3. 信息检索技术- 信息检索的基本概念与方法- 索引构建与检索策略- 检索效果评价与优化4. 数据安全技术- 数据安全的基本概念- 加密技术与安全协议- 访问控制与备份恢复5. 实践操作与案例分析- 信息管理系统软件的安装与配置- 数据库的创建、管理与维护- 信息检索与数据安全操作实践- 实际案例分析与讨论教学大纲安排:第一周:信息管理系统概述第二周:数据库基础知识第三周:信息检索技术第四周:数据安全技术第五周:实践操作与案例分析教材章节关联:《信息管理系统》第一章:信息管理系统概述《信息管理系统》第二章:数据库基础知识《信息管理系统》第三章:信息检索技术《信息管理系统》第四章:数据安全技术《信息管理系统》第五章:实践操作与案例分析教学内容科学系统,注重理论与实践相结合,确保学生能够循序渐进地掌握信息管理系统的相关知识。
c语言课程设计信息管理系统

c语言课程设计信息管理系统一、教学目标本课程的教学目标是使学生掌握C语言程序设计的基本知识和技能,能够运用C语言设计简单的信息管理系统。
具体分为以下三个部分:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,了解面向过程的编程思想。
2.技能目标:学生能够运用C语言编写简单的程序,具备调试和解决问题的能力,能够独立完成一个小型信息管理系统的设计。
3.情感态度价值观目标:培养学生对计算机科学的兴趣和热情,提高学生解决问题的能力,培养学生的创新精神和团队合作意识。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,以及面向过程的编程思想。
具体安排如下:1.第一章:C语言基础知识,介绍C语言的基本语法、数据类型、运算符等。
2.第二章:控制结构,介绍条件语句、循环语句等控制结构。
3.第三章:函数,介绍函数的定义、声明和调用,以及递归函数。
4.第四章:数组和字符串,介绍一维数组、多维数组、字符串的基本操作。
5.第五章:指针,介绍指针的概念、运算和应用。
6.第六章:结构体和联合体,介绍结构体、联合体的定义和应用。
7.第七章:文件操作,介绍文件的概念、文件操作函数和文件指针。
8.第八章:面向过程的编程思想,介绍模块化编程、函数指针等概念。
三、教学方法本课程的教学方法采用讲授法、案例分析法和实验法相结合的方式。
在教学过程中,教师会通过讲解和示例让学生掌握C语言的基本知识和编程技巧,同时通过案例分析法让学生了解信息管理系统的实现过程。
此外,实验法将用于培养学生的实际编程能力和问题解决能力。
四、教学资源本课程的教学资源包括教材、多媒体资料和实验设备。
教材选用《C程序设计语言》(K&R)作为主要参考书,多媒体资料包括教学PPT、视频教程等,实验设备包括计算机、网络等。
这些教学资源将用于支持教学内容和教学方法的实施,丰富学生的学习体验。
c信息管理系统课程设计

c 信息管理系统课程设计一、课程目标知识目标:1. 让学生理解信息管理系统的基本概念,掌握其功能、结构和应用场景。
2. 使学生掌握数据库的基本操作,包括数据的增删改查。
3. 帮助学生了解信息管理系统的设计与开发流程。
技能目标:1. 培养学生运用所学知识,设计并实现简单的信息管理系统。
2. 提高学生分析问题、解决问题的能力,使其能够根据实际需求进行系统设计。
3. 培养学生的团队协作能力,学会与他人共同完成项目。
情感态度价值观目标:1. 培养学生热爱信息技术,关注信息管理系统的发展趋势。
2. 增强学生的信息意识,使其认识到信息管理系统在现代社会中的重要性。
3. 引导学生树立正确的价值观,遵守国家法律法规,保护用户隐私。
课程性质:本课程属于信息技术学科,旨在让学生掌握信息管理系统的基本知识和技能。
学生特点:学生处于初中年级,具备一定的计算机操作基础,对新技术充满好奇心,喜欢动手实践。
教学要求:结合学生特点,注重理论与实践相结合,强调实践操作,提高学生的实际应用能力。
在教学过程中,关注学生的个体差异,激发学生的学习兴趣,引导他们主动参与课堂活动。
通过团队协作,培养学生良好的沟通能力和合作精神。
最终实现课程目标的分解和达成。
二、教学内容1. 信息管理系统概述- 了解信息管理系统的定义、功能及分类。
- 掌握信息管理系统的发展历程及其在各个领域的应用。
2. 数据库基础- 学习数据库的基本概念,如数据表、字段、记录等。
- 掌握数据库的基本操作,包括数据的增删改查。
3. 信息管理系统设计与开发- 了解系统设计的基本流程,包括需求分析、系统设计、编码实现、测试与维护等。
- 学习使用一种数据库管理系统(如Access、MySQL等)进行系统开发。
4. 实践项目- 设计并实现一个简单的信息管理系统,如学生管理系统、图书管理系统等。
- 分组进行项目实践,培养学生的团队协作能力和实际操作能力。
5. 信息安全与法律法规- 学习信息安全管理的基本知识,了解数据保护和隐私的重要性。
C语言课设之建筑工地信息管理系统【新版精品资料】

C 语言课程实习报告建筑工地信息管理系统一.题目要求《建筑工地信息管理系统》要求要建立与建筑相关的四个文件信息:1)项目2)工地3)配件 4)商家;建立文件以后,根据项目、工地或商家完成各项工作的追加、删除、修改和更新查询操作.二.需求分析要求整个系统设计为建筑工地的信息输入、追加、删除、修改、浏览、查询模块. 三.总体设计如示意图:四.详细设计1.主函数main(){menu();}2。
菜单menu(){int n,w1;do{puts(”\n\t\t********************MENU********************\n");puts("\t\t 建筑工地信息系统 \n\n");puts("\t\t\t\t1.Enter data”);puts("\t\t\t\t2。
Addition data”);puts(”\t\t\t\t3.Delete data”);puts(”\t\t\t\t4。
Modify data");puts("\t\t\t\t5。
Insert data");puts("\t\t\t\t6.Browse all");puts("\t\t\t\t7。
Browse project”);puts(”\t\t\t\t8.Browse site");puts("\t\t\t\t9.Browse outfit");puts(”\t\t\t\t10。
Browse sale");puts(”\t\t\t\t11。
Search date”);puts("\t\t\t\t12.Exit”);puts(”\n\n\t\t*******************************************\n");printf(”Choice your number(1—12):[]\b\b\b");scanf("%d”,&n);if(n<1||n>12){w1=1;getchar();}else w1=0;}while(w1==1);switch(n){case 1:enter();break;case 2:add();break;case 3:del();break;case 4:modify();break;case 5:insert();break;case 6:browse();break;case 7:browse_project();break;case 8:browse_site();break;case 9:browse_outfit();break;case 10:browse_sale();break;case 11:search();break;case 12:exit(0);}}3.各功能模块设计(1)输入模块//整个系统数据结构:struct project {char site_num[10];char site_city[20];char outfit_num[10];char outfit_name[20];char outfit_color[10];char outfit_place[20];char sale_num[10];char sale_name[20];char sale_state[10];char sale_city[20];int outfit_n;}pro[N];注意:pro[N]中的N为项目数量,本程序宏定义#define N 50//程序实现enter(){int i,n;printf("How many information(0—%d)?:”,N-1);scanf("%d",&n);printf(”\nEnter data now\n\n”);for(i=0;i<n;i++){printf(”\nInput %dth student record.\n”,i+1);input(i);}if(i!=0){save(n);save_project(n);save_site(n);save_outfit(n);save_sale(n);}printf_back();}(2)追加模块[流程图]//追加模块程序add(){int i,n,m,k;FILE *fp;n=load();printf("How many record are you want to add(0-%d)?:",N-1-n);scanf("%d",&m);k=m+n;for(i=n;i<k;i++){printf("\n Addtion %dth project record.\n",i—n+1);input(i);}for(i=n;i〈k;i++){if((fp=fopen("main.txt",”ab”))==NULL)printf("Cannot open file\n");if(fwrite(&pro[i],sizeof(struct project),1,fp)!=1)printf(”file write error\n");fclose(fp);if((fp=fopen(”project.txt","ab"))==NULL){printf("\nCannot open file\n”);return NULL;} fprintf(fp,”%s,%s,%s,%d”,pro[i].sale_num,pro[i].outfit_num,pro[i]。
C语言程序课程信息管理系统实训报告

题目:课程信息管理系统院系:桂林电子科技大学信息科技学院信息工程系专业:计算机科学与技术(信息管理)*名:***学号: ********** 指导教师:***日期: 2012年6月28日桂林电子科技大学信息科技学院实训报告目录前言....................................................................................... .. (3)1 问题定义 (4)2 系统设计 (4)2.1 总体设计 (4)2.2 详细设计 (5)2.2.1 数据结构设计 (6)2.2.2 主控流程 (6)2.2.3 增加记录模块 (7)2.2.4 显示记录模块 (7)2.2.5 查询记录模块 (7)2.2.6 修改记录模块 (7)2.2.7 删除记录模块 (7)2.2.8 存储记录模块 (7)2.2.9 函数功能描述 (7)3 系统实现 (8)3.1 编码 (8)3.1.1 程序预处理 (8)3.1.2 主函数main() (8)3.1.3 主菜单界面 (10)3.1.4 增加记录 (10)3.1.5 显示记录 (11)3.1.6 查询记录 (11)3.1.7 修改记录 (13)3.1.8 删除记录 (14)3.1.9 存储记录 (14)3.2 测试与调试 (15)3.2.1 概述 (15)3.2.2 程序测试 (16)4 系统维护 (20)5 归纳总结 (20)5.1 开发经验 (20)5.2 实训中遇到的问题及解决方法 (20)5.3 设计中的不足之处 (21)5.4 感想和心得体会 (21)6 参考资料 (21)前言课程设计环节是应用型本科院校非常重要的一个教学环节,是学完一门课后应用本课知识及以前的知识积累而进行的综合性、开放性的训练。
通过课程设计,不仅能够使学生得到系统的技能训练,巩固和加强所学得专业理论知识,而且能够培养学生工程意识、创新能力、团队精神等综合素质,培养学生的设计能力和解决实际问题的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言课程设计报告建筑工地信息管
理系统
C语言课程设计
名称: 建筑工地信息管理系统学院: 工程学院
班级: 055071-30
姓名: 文富奎
学号: 1003889
指导老师: 刘文中
前言
课程设计目的: C语言编程实践是学习C语言的一个重要环节, 为提高学生的程序设计能力, 经过课堂和上机实践使学生的程序设计能力有一个上升的台阶。
经过前四单元的温故而知新、庖丁解牛、举一反三、熟能生巧等过程的练习之后能够解决一些简单的实际问题。
1、题目要求
设计: ”建筑工地信息管理系统”
建立如下4个文件( 括号内为文件中每条记录的字段内容) :
(1)销售商-配件-建筑工地 ( 销售商号码, 配件号, 工地号, 数量) (2)建筑工地 ( 工地号, 名字, 城市)
(3)配件 ( 配件号, 配件名, 颜色, 重量, 产地)
(4)销售商 ( 号码, 名字, 状态, 城市)
功能:
(1)首先建立文件, 然后插入数据, 并进行删除、更新操作, 最后进行查询操作。
(2)查询与供应商所在城市相同的零件——供应商, 项目——供应商记录对。
2、分析
根据题目要求, 建立文件, 应选择结构体数组来存放数据, 再定义一个全局变量和文件指针进行程序的运行, 然后把数据信息存入文件中, 因此要提供结构体和文件的输入输出等操作; 在程序中要进行数据的插入、删除、更新、查询等操作, 因此需要建立相应的模块来实现, 为简便起见, 还应建立一个主菜单, 在每个模块中建立相应的副菜单; 另外, 还要提供键盘式选择菜单来实现选择功能, 使程序在运行时达到要求。
3、总体设计
根据题目要求, 能够将系统分为:
1)插入数据模块;
2)删除模块;
3)查询模块;
4)查找配对;
5)功能选择菜
图1 系统功能模块图
4、详细设计
一、主函数
【分析】主函数一般设计得比较简便, 只提供输入、处理和输出部分的函数调用。
其中各功能模块用菜单方式选择。
其流程图:
图2 主函数流程图
【程序】
/************************主菜单*********************************/
void menu()。