目录一、项目一:学生成绩排名(实验指导老师李环宇)............................................................ - 1 -1.1 实训目的..................................................................................................................................... - 1 -1.2 实训内容..................................................................................................................................... - 1 -1.3 实训要求................................................................................................................................... - 1 -1.4 实训过程................................................................................................................................... - 1 -二、项目二:按条件实现学生成绩排名(实验指导老师张琴) ............................................ - 6 -2.1 实训目的..................................................................................................................................... - 6 -2.2 实训内容..................................................................................................................................... - 6 -2.3 实训要求..................................................................................................................................... - 6 -2.4 实训过程..................................................................................................................................... - 6 -三、项目三:数组优化学生成绩排名(指导老师李环宇、殷玉法) .................................. - 12 -3.1 实训目的................................................................................................................................... - 12 -3.2 实训内容................................................................................................................................... - 12 -3.3 实训要求................................................................................................................................... - 12 -3.4 实训过程................................................................................................................................... - 12 -四、项目四:学生成绩单制作(指导老师:李环宇).............................................................. - 17 -4.1 实训目的................................................................................................................................... - 17 -4.2 实训内容................................................................................................................................... - 17 -4.3 实训要求................................................................................................................................... - 17 -4.4 实训过程................................................................................................................................... - 18 -五、项目五:设计和编写学生成绩管理系统的系统主菜单(指导老师:张琴) .................. - 23 -5.1 实训目的................................................................................................................................... - 23 -5.2 实训内容及要求....................................................................................................................... - 23 -5.3 实训过程................................................................................................................................... - 23 -六、项目六:学生成绩管理项目实现(指导老师:殷玉法、张琴、李环宇) ...................... - 28 -6.1 实训目的................................................................................................................................... - 28 -6.2 实训内容及要求....................................................................................................................... - 28 -6.3 实训过程................................................................................................................................... - 28 -七、实训总结.................................................................................................................................. - 45 -八、附录(参考文献,源代码).................................................................................................. - 45 -一、项目一:学生成绩排名(实验指导老师李环宇)1.1 实训目的(1)熟悉变量、数组定义、使用、输入、输出等基本操作;(2)进行选择、循环结构程序设计练习;(3)掌握冒泡法排序的算法。
1.2 实训内容2、实训内容(1)定义一个数组a[11],用以存放学生的成绩;(2)从键盘输入10个学生及成绩;(3)采用冒泡法,将学生成绩按照从高到低进行排序;(4)再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组;(5)将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列。
1.3 实训要求1、将以上每一步骤的结果均打印输出,验证程序是否正确实现题目要求2、在实训报告中画出程序流程图,说明程序设计的算法,附主要程序段。
1.4 实训过程1.思路输入10个学生成绩输出这10个学生成绩m=1 升序,m=2降序m等于1 m等于2 n=’a’冒泡法,n=’b’选择法n=’a’冒泡法,n=’b’选择法n=’a’n=’b’n=’a’n=’b’for(i=0;i<9;i++) for(i=0;i<9;i++) for(i=0;i<9;i++) for(i=0;i<9;i++)for(j=0;j<9-i;j++) for(j=0;j<9-i;j++) for(j=0;j<9-i;j++) for(j=0;j<9-i;j++) a[j]<a[j+1] a[i]<a[j] a[j]>a[j+1] a[i]>a[j]T F T F T F T Fa[j]与a[j]与a[i]与a[j+1]互a[i]与a[j+1]互换a[j]互换换a[j] 互换for(i=9:i>=0;i--)a[0]>=a[1]T Fa[i]小于插入数a[i]大于插入数T F T Fa[i+1]=a[i] 终止循环a[i+1]=a[i] 终止循环将插入数赋值给a[i+1]输出插入后的排列for(i=0;i<=5;i++)a[i]与a[9-i]互换输出倒序排列2.程序过程#include <stdio.h>#include <conio.h>void main(){int a[11],i,j,m,t;char n;printf("请输入十个数:");for(i=0;i<=9;i++)scanf("%d",&a[i]);//数组输入printf("\n原数组:");for(i=0;i<10;i++)printf("%d ",a[i]);//数组输出printf("\n");printf("升序排序按1,降序排序按2!\n");scanf("%d",&m);getchar();if(m==1){printf("冒泡法按a;选择法按b\n");scanf("%c",&n);if(n=='a'){for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(a[j]<a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}if(n=='b'){for(i=0;i<9;i++)for(j=i;j<9;j++)if(a[i]<a[j]){ t=a[i];a[i]=a[j];a[j]=t;}}}if(m==2){printf("冒泡法按a;选择法按b\n");scanf("%c",&n);if(n=='a'){for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}if(n=='b'){for(i=0;i<9;i++)for(j=0;j<9;j++)if(a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}}}printf("排序后:\n");for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");printf("请输入插入数t:");scanf("%d",&t);for(i=9;i>=0;i--){if(a[0]>=a[1])if(a[i]<t){a[i+1]=a[i];}else break;else if(a[i]>t){a[i+1]=a[i];}else break;}a[i+1]=t;//插入一个数,顺序不变printf("插入后:");for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");for(i=0;i<=5;i++)//将数组倒序排列{t=a[i];a[i]=a[9-i];a[9-i]=t;}printf("倒序:");for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");getch();}3.程序输出结果运行结果1:运行结果2:二、项目二:按条件实现学生成绩排名(实验指导老师张琴)2.1 实训目的(1)复习数组,选择、循环结构程序设计;(2)掌握函数的定义、调用、声明,以及参数的两种传递方式。