中南大学c语言课程设计报告,中南大学c语言课程实践报告材料.doc

《中南大学c语言课程实践报告材料.doc》由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关《中南大学c语言课程实践报告材料.doc》文档请在天天文库搜索。

1、中南大学  C语言程序设计实践报告      题 目 学生信息管理系统 学生 眼 指导教师 伟荣 学 院 信息科学与工程学院 专业班级 电气信息1113班 完成时间 2012年6月28日星期四  1.设计任务及设计目标学生信息管理系统是基于系统主菜单的操作来实现学生数据的录入、修改、查询和统计等系统的基本功能。达到对学生信息的存储、统计、管理的目的。需要处理的数据如:班级、学号、等。实现的功能模块如:数据的录入、数据的修改、数据的插入、数据的查询和数据的统计等。在实践过程中熟练掌握C语言的基本知识:数据类型(整型、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握函数嵌套调用、文件的读写、链表的应用等。2.总体设计将整个系统分成若干子模块,设计流程图。

2、如下:学生信息管理系统【1】输入学生信息【2】浏览学生信息【3】查询学生信息【4】删除学生信息【5】修改学生信息【6】不及格学生列表【7】学生平均成绩【8】学生课程信息查询【0】退出系统3.详细设计①主函数:一般比较简单,只提供输入,处理,输出的调用函数,void main(){int z;    printf("\t\t\t +---------------------------+\n");    printf("\t\t\t |  学生信息管理系统欢迎您    |\n");    printf("\t\t\t +---------------------------+\n");    printf("\t\t\t +                设计者:眼\n");printf("\t\t\t +                指导老师:伟荣\n");printf("重要提示:为保。

3、证您的操作得到保存,请按正常顺序退出系统!合作\n");    do    {        printf("\n\t\t\t+++++++++++++++++++++++++++++\n");        printf("\t\t\t|**          菜单          **|\n");        printf("\t\t\t+++++++++++++++++++++++++++++++++\n");        printf("\t\t\t*    [1]----录入/插入学生信息  *\n");        printf("\t\t\t*    [2]----浏览学生信息       *\n");        printf("\t\t\t*    [3]----查询学生信息       *\n");        printf("\t\t\t*    [4]-。

4、---删除学生信息       *\n");        printf("\t\t\t*    [5]----修改学生信息       *\n");        printf("\t\t\t*    [6]----不及格学生列表     *\n");        printf("\t\t\t*    [7]----成绩信息查询       *\n");        printf("\t\t\t*    [8]----平均成绩           *\n");        printf("\t\t\t*    [0]----退出系统           *\n");        printf("\t\t\t********************************\n");        printf("请输入您的选择:");        scanf("%d", &z);。

5、        switch(z)        {        case 0 :tc();break;        case 1 :lr();break;        case 2 :ll();break;        case 3 :cx();break;        case 4 :sc();break;        case 5 :xg();break;        case 6 :bj();break;        case 7 :kc();break;        case 8 :pj();break;        default:printf("\n无效选项!");        }  }    while(z!= 0);}②输入模块:输入部分包括学生的,学号等基本信息以及学生的大学物理,英语,微积和信号的成绩,可以通过函数void lr() 实现此功能。。

6、void lr()/*录入函数*/{ int y; if(n==0)  p=stu; do {   printf("--------------------\n");   printf("请输入学生的学号:");   scanf("%ld",&p->num);   printf("请输入学生的:");   scanf("%s",p->name);   printf("请输入学生的年龄:");   scanf("%d",&p->age);   printf("请输入学生的性别:");   scanf("%s",p->sex);   printf("请输入学生的班级:");   scanf("%d",&p->clas);   printf("请输入大物考试成绩:");   scanf("%d",&p->pt);   printf("请输入大物平时成绩:");。

7、   scanf("%d",&p->ps);   printf("请输入英语考试成绩:");   scanf("%d",&p->et);   printf("请输入英语平时成绩:");   scanf("%d",&p->es);   printf("请输入微积分考试成绩:");   scanf("%d",&p->ct);   printf("请输入微积分平时成绩。省略部分。tu[0].xt*0.7+stu[0].xe*0.3)/4;printf("学号\t\t年龄\t性别\t班级\t平均成绩\n");printf("----------------------------------------------------------------------------\n");printf("%ld\t%s\t%d\t%s\t%d\t%3.1f\n",stu[0].n。

8、um,stu[0].name,stu[0].age,stu[0].sex,stu[0].clas,ave[0]);}}⑧学生课程信息查询模块:该模块通过用户输入的选项来查询该学生的各个科目的信息,信息包括课程名称,课程编号,学分,平时成绩,考试成绩,综合成绩,并最终以表格的形式输出。该功能通过函数void  kc()来实现。void kc()/*课程查询函数*/{ int c; int w,i,j=0; char name[20]; if(n!=0) { do{    printf("\n");        printf("+--------------------+\n");        printf("| 按学号查询  请按 1 |\n");        printf("| 按查询  请按 2 |\n");                printf("| 取消        请。

9、按 0 |\n");        printf("+--------------------+\n");        printf("请输入您的选择:");        scanf("%d", &c);        switch(c)        {            case 0:break;            case 1:                   printf("请输入学生的学号;");                   scanf("%ld", &w);                   printf("\n");                   for(i=0;i

10、分\t平时成绩\t考试成绩\t综合成绩\n");  printf("大学物理\t0001\t\t4.0\t%d\t\t%d\t\t%3.1f\n",stu[i].ps,stu[i].pt,0.7*stu[i].pt+0.3*stu[i].ps);printf("大学英语\t0002\t\t4.0\t%d\t\t%d\t\t%3.1f\n",stu[i].es,stu[i].et,0.7*stu[i].et+0.3*stu[i].es);printf("微积分\t\t0003\t\t3.0\t%d\t\t%d\t\t%3.1f\n",stu[i].cs,stu[i].ct,0.7*stu[i].ct+0.3*stu[i].cs);printf("信号\t\t0004\t\t3.0\t%d\t\t%d\t\t%3.1f\n",stu[i].xt,stu[i].xe,0.7*stu[i].xt+。

11、0.3*stu[i].xe);                    j=1;                   }                   if(j==0)                   printf("提示:没有该学生记录,请核对!");                   break;            case 2:                   printf("请输入学生的:");                   scanf("%s", name);                   printf("\n");                   for(i=0;i

12、课程名称\t课程编号\t学分\t平时成绩\t考试成绩\t综合成绩\n");  printf("大学物理\t0001\t4.0\t%d\t%d\t%3.1f\n",stu[i].ps,stu[i].pt,0.7*stu[i].pt+0.3*stu[i].ps);printf("大学英语\t0002\t4.0\t%d\t%d\t%3.1f\n",stu[i].es,stu[i].et,0.7*stu[i].et+0.3*stu[i].es);printf("微积分\t0003\t3.0\t%d\t%d\t%3.1f\n",stu[i].cs,stu[i].ct,0.7*stu[i].ct+0.3*stu[i].cs);                    j=1;                   }                  if(j==0)                  p。

13、rintf("提示:没有该学生记录,请核对!");                  break;        default:                printf("\n提示:无效选项!");                break;       }    }while(c!= 0);  }else  printf("提示:无学生数据,请输入数据!");}⑨退出系统模块:当用户选择退出程序选项【0】时,执行函数void  tc()输出“登陆!再见”而后退出运行。4.设计总结本学期我们的c语言课程实践课题——学生信息管理系统是在老师的指导下,同学间相互的帮助下,设计出来的。通过C语言的课程设计,我们对c语言中的重要的容有了一个很好的认识与了解,同时我们也对c语言的应用有了了解。C语言的实质就是以一定的语法规为准,通过对数据量的复杂结构运算,完成一定功能的程序,是一门计算机的基础语言,我们通过这两周的课程实践对其特点和算法有了跟好的了解。 通过这次课程设计,我懂得一个程序的设计就是一个实际问题的解决的过程,从解决问题的角度,我们可以这样来看:首先了解这个问题的基本要求,即输入,输出,完成输入到输出的要什么,讲问题一一分开;其次,我们要捋清思路,逐一解决问题,着重考虑如何从输入导出输出,在这个过程中,可以确定所需的变量,数据,函数,然后确定处理过程——算法。 总的来说,这次实践让我受益匪浅,让我对c语言有了进一步的认识,c语言功能高,表达能力强,使用灵活方便,目标程序效率高,是我们日后工作的良好工具。。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSU 大一上 C语言实验报告 (1)教材第2章编程题第2题:编写计算球体体积的程序。 说明:本题声明适当变量,用户键入数据,运算并输出结果,较简单。 (2)教材第2章编程题第8题:编写程序计算第一、第二、第三月还贷后剩余贷款金额。 说明:本题要求用户输入总额、利率、每月还贷净额,输出每月剩余,对输入输出、类型定义考查。 (3)教材第3章编程题第2题:编写程序实现对用户输入的产品信息进行格式化。 说明:本题考查格式化输入输出、转义字符的运用。 (4)教材第4章编程题第4题:编写程序实现将输入的整数按八进制输出。 说明:本题重在考查简单的运算符和表达式运用。 (5)用户输入一个三位数,输出各位数字之和。 说明:本题重在考查如何从一个整数中取出每一个数字。 (6)教材第5章编程题第5题:编写程序计算用户输入所得额的税金。 说明:本题考查简单的选择结构。 (7)教材第5章编程题第11题:编写程序实现将用户输入的两位数转化为英文。 说明:本题考查switch语句的应用。 (8)教材第6章编程题第8题:编写程序显示单月日历,用户指定这个月的天数和该月起始日是星期几。 说明:本题考查循环结构和选择结构的综合应用,判断是否一个星期最后一天,换行符。 (9)教材第6章编程题第11题:编程序实现利用无穷级数法估计e的值。 说明:本题考查根据公式设计循环结构并实现。 (10)因子之和等于其本身的数称为完数,如28的因子为1、2、4、7、14,而28=1+2+4+7+14,因此28为完数。编程序找出2~5000中的完数。 说明:本题利用变量i在2~5000中变化,判断其是否是完数。 (11)教材第7章编程题第12题:编程计算从左至右求值的表达式的值。 说明:本题考查对运算符和操作数的判断。 (12)教材第7章编程题第14题:编程序用牛顿计算法计算浮点数平方根。 说明:本题考查对循环结构的掌握,对表达式的合理运用,对基本类型的理解。 (13)教材第8章编程题第14题:编写程序颠倒句子中单词的顺序。 说明:本题考查对字符数组的处理,对一些循环选择结构的理解。 (14)教材第8章编程题第15题:编写程序实现凯撒密码加密。 说明:本题考查对字符数组的掌握,对字符处理的理解。 (15)编程序实现将用户输入的数字字符串转化为整数输出。 说明:本题考察对字符、整数关系的掌握与理解,对循环结构的熟练运用。 (16)教材第9章编程题第1题:编写选择排序的函数,并递归调用。 说明:本题利用函数简化程序、使得结构更清晰、熟练掌握。 (17)教材第9章编程题第7题:编写计算xn的函数。 说明:本题考查函数定义、调用,并初步考察递归运用。 (18)教材第10章编程题第6题:编写程序实现逆波兰运算。 说明:本题考查对程序每部分的理解、掌握,外部、内部变量,主函数,小函数的编写与应用。初步了解栈的一些实现函数。 (19)编程序找出2~5000中满足条件的数x:x是素数且x的每位数字是素数、每位数字之和是素数,如23、223、2333等。 说明:本题考查函数方法与循环选择结构的综合运用。 (20)教材第11章编程题第3题:用指针变量编写简化一个分数的函数。 说明:本题用来解决函数无法传回传递的实际参数,指针变量。 (21)教材第12章编程题第2题:编写函数读入用户输入的一条消息,检测是否是回文,分别用数组、指针来解决。 说明:本题可以体会到数组与指针的特点,利用指针的便利。 (22)利用指针编写程序,实现从键盘键入字符串,将此字符串从m个字符开始的n个字符复制成另一个字符串。 说明:本题用指针指向字符串,进行跟踪和复制操作。 (23)教材第13章编程题第5题:编写程序实现对输入命令行参数求和。 说明:本题加深对命令行参数的理解、考查知识的综合应用。 (24)教材第16章编程题第5题:用结构变量解决搜索离用户输入时间最近的航班信息,并输出。 说明:本题考查结构与数组的结合运用,有助于理解结构。首先,定义一个存储起飞、到达时间的结构,再定义一个该类型的数组,循环搜索即可。 (25)教材第17章编程题第5题:用指针数组存储键入的字符串,对数组排序。 说明:本题应用动态分配内存、数组排序,考查综合能力。
中南大学C语言课程设计,对一次跳水比赛的成绩进行管理,要求输入每位运动员的数据包括:编号、姓名、年龄、 国别以及五名评委给出的成绩(0-10 分,一位小数) 编写的跳水比赛评分系统应该具有以下功能: 1、输入功能:输入运动员相关信息,如:编号、姓名、年龄、国别、五位评委的成绩。 (要求:① 至少输入 10 名运动员的信息;② 可以在原有记录的基础上,添加新的记录; ③ 要求编号不能重复,输入过程中如果出现相同的编号,应给出报错信号,并重新输入; ④ 编号、姓名、国别要求用字符数组或字符指针;年龄要求用整数;五位评委的成绩用实 数,输入五位评委给出的成绩后,计算出总成绩,总成绩由去掉最高分和最低分后三个数的 平均值计算得到,所有成绩保留一位小数。) 2、排序功能:对所有录入的运动员记录进行排序,并以表 1 的方式输出。(要求:至少 提供三种排序方式,如按编号排序、按姓名排序、按年龄排序等。) 3、统计功能:对运动员的成绩进行统计。(要求:自己设计统计表格的形式,但必须包 括以下统计信息:冠、亚、季军的所有信息,每个国家的总得分【计分方式:冠军 5 分、亚 军 3 分、季军 1 分、4-6 名 0.5 分】) 4、查询功能:查找满足一定条件的运动员成绩信息,并将满足条件的运动员所有信息 (包括编号、姓名、年龄、国别、五名评委给出的成绩、平均成绩)输出。(要求:① 提供 三种查询方式:按编号查询、按姓名查询、按平均成绩是否在某个区间查询;② 如果满足 条件的记录有多条,应全部列出;③ 如果没有满足条件的记录,应给出相应的提示。) 5、修改功能:输入运动员编号,若存在,则可以对五位评委给出的成绩进行修改;如 果该运动员不存在,必须有相应的提示。(要求:修改之前应再次确认是否修改。) 6、删除功能:输入运动员编号,若存在,删除其所有信息;否则,须有相应的提示。 (要求:删除之前应再次确认是否删除。) 7、退出系统:退出系统之前,要再次确认。 8、各位同学可以根据自己的想法,不完全按照上述功能要求来设计,可以设计一些其 他功能,但所设计的软件功能数目不能少于上述要求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值