C语言课程设计(成绩管理系统)
C语言课程设计(成绩管理系统)
翻到了大学写的C语言课程设计,缅怀一下
内容:
增加学生成绩
查询学生成绩
删除
按照学生成绩进行排序
等
1 #include <stdio.h> 2 #include <string.h> 3 #include <stdlib.h> 4 #define N 20 5 struct student 6 { 7 int num; 8 char name[30]; 9 int chinese; 10 int math; 11 int english; 12 int sum; 13 }; 14 struct student stu[N],temp; 15 int choose; 16 void tianjiachengji(); //添加成绩 17 void xianshichengji(); //显示成绩 18 void chaxunchengji(); //查询成绩 19 void shanchuchengji(); //删除成绩 20 void chengjipaixu(); //成绩排序 21 void ruanjiantuichu(); //软件退出 22 int c=0; 23 24 25 void tianjiachengji() 26 { 27 int i; 28 printf("请输入你要添加的学生个数:\n"); 29 scanf("%d",&c); 30 for(i=0;i<c;i++) 31 { 32 printf("请输入学号:\n"); 33 scanf("%ld",&stu[i].num); 34 printf("请输入名字:\n"); 35 scanf("%s",stu[i].name); 36 printf("请输入语文成绩:\n"); 37 scanf("%d",&stu[i].chinese); 38 printf("请输入数学成绩:\n"); 39 scanf("%d",&stu[i].math); 40 printf("请输入英语成绩:\n"); 41 scanf("%d",&stu[i].english); 42 stu[i].sum=stu[i].chinese+stu[i].english+stu[i].math; 43 } 44 45 } 46 47 48 void xianshichengji() 49 { 50 int i; 51 printf("学号\t姓名\t语文成绩\t数学成绩\t英语成绩\t总分\n"); 52 for(i=0;i<c;i++) 53 { 54 printf("%ld\t%s\t%d\t\t%d\t\t%d\t\t%d\n",stu[i].num,stu[i].name,stu[i].chinese,stu[i].math,stu[i].english,stu[i].sum); 55 } 56 } 57 58 59 void chaxunchengji() 60 { 61 char name[20]; 62 int k,f=0; 63 printf("请输入您所要查找的姓名: "); 64 getchar();//吸收回车符 65 gets(name); 66 for(k=0;k<c;k++) 67 if(strcmp(name,stu[k].name)==0) 68 { 69 printf("学号\t姓名\t语文成绩\t数学成绩\t英语成绩\t总分\n"); 70 printf("%ld\t%s\t%d\t\t%d\t\t%d\t\t%d\n",stu[k].num,stu[k].name,stu[k].chinese,stu[k].math,stu[k].english,stu[k].sum); 71 f=1; 72 } 73 if(f==0) 74 printf("木有这个人~~~TOT"); 75 } 76 77 78 void shanchuchengji() 79 { 80 int k; 81 char newname[20]; 82 printf("请输入所要删除学生的名字:\n"); 83 getchar(); //吸收回车符 84 gets(newname); 85 printf("所有学生记录为:\n"); 86 xianshichengji(); 87 for(k=0;k<c;k++) 88 if(strcmp(newname,stu[k].name)==0) 89 { 90 printf("你选择的学生为:\n"); 91 printf("%ld,%s,%d,%d,%d",stu[k].num,stu[k].name,stu[k].chinese,stu[k].math,stu[k].english); 92 stu[k].num=stu[k+1].num; 93 strcpy(stu[k].name,stu[k+1].name); 94 stu[k].chinese=stu[k+1].chinese; 95 stu[k].math=stu[k+1].math; 96 stu[k].english=stu[k+1].english; 97 stu[k].sum=stu[k+1].sum; 98 } 99 printf("学生记录删除完毕!\n"); 100 return 1; 101 } 102 103 104 void chengjipaixu() 105 { 106 int i,j; 107 temp.sum=stu[0].sum; 108 for(i=0;i<c;i++) 109 { 110 for(j=0;j<c;j++) 111 { 112 if(stu[j].sum<stu[i].sum) 113 { 114 temp.sum=stu[i].sum; 115 stu[i].sum=stu[j].sum; 116 stu[j].sum=temp.sum; 117 temp.num=stu[i].num; 118 stu[i].num=stu[j].num; 119 stu[j].num=temp.num; 120 temp.chinese=stu[i].chinese; 121 stu[i].chinese=stu[j].chinese; 122 stu[j].chinese=temp.chinese; 123 temp.math=stu[i].math; 124 stu[i].math=stu[j].math; 125 stu[j].math=temp.math; 126 strcpy( temp.name,stu[i].name); 127 strcpy( stu[i].name,stu[j].name); 128 strcpy( stu[j].name,temp.name); 129 } 130 } 131 } 132 xianshichengji(); 133 } 134 135 void ruanjiantuichu() 136 { 137 system("cls"); 138 printf(" .......................................\n"); 139 printf(" .................★︵___︵★...............\n"); 140 printf(" ................./ \...............\n"); 141 printf(" .................︴● ● ︴..............\n"); 142 printf(" .................︴≡ ﹏ ≡ ︴..............\n"); 143 printf(" .................\_____/...............\n"); 144 printf(" ..........╭╧╮╭╧╮╭╧╮╭╧╮╭╧╮╭╧╮╭╧╮........\n"); 145 printf(" ..........│亲││们││,││再││见││哦││!│........\n"); 146 printf(" ..........╘∞╛╘∞╛╘∞╛╘∞╛╘∞╛╘∞╛╘∞╛........\n"); 147 printf(" .......................................\n"); 148 printf(" *******************************************************************************\n"); 149 printf(" 正在退出管理系统,欢迎再次使用! \n\n"); 150 printf("********************************************************************************\n\n\n"); 151 exit(0); 152 } 153 154 155 void main() 156 { 157 printf("\t★∵☆.◢◣ ◢◣\n"); 158 printf("\t ◢■■◣ ◢■■◣\n"); 159 printf("\t ◢■■■■■■■■■◣\n"); 160 printf("\t ◢■■■ ╭~~*╮ ((((( ◣\n"); 161 printf("\t ◥■■■/( '-' )(' .' )◤\n"); 162 printf("\t ◥■■■/■ ..../■ ◤\n"); 163 printf("\t ◥■国庆ㄉ快乐■◤\n"); 164 printf("\t ◥■■■■■◤\n"); 165 printf("\t ◥■■■◤\n"); 166 printf("\t ◥■◤\n"); 167 printf("\t ▼\n"); 168 printf("\t \\\n"); 169 printf("\t 祝 \\n"); 170 printf("\t 同 \\n"); 171 printf("\t 学 \ 祝你们幸福~○( ̄0 ̄)○\n"); 172 printf("\t 们 国 \\n"); 173 printf("\t 庆 \\n"); 174 printf("\t 快 \\n"); 175 printf("\t 乐 ● \ ●\n"); 176 printf("\t 《 》 》》\n"); 177 printf("\t 》 《 \n"); 178 printf("\t ▂▃▄▅▆▇███▇▆▅▄▃▂ by__六班 \n"); 179 system("pause"); 180 system("cls"); 181 printf(" \n\n\n\ |-------------------------------------------|\n"); 182 printf(" | 学生管理系统 |\n"); 183 printf(" |-------------------------------------------|\n"); 184 printf(" | 1.添加成绩:加入新的成绩 |\n"); 185 printf(" |-------------------------------------------|\n"); 186 printf(" | 2.显示成绩:显示原有成绩 |\n"); 187 printf(" |-------------------------------------------|\n"); 188 printf(" | 3.查询成绩:查询原有成绩 |\n"); 189 printf(" |-------------------------------------------|\n"); 190 printf(" | 4.删除成绩:删除原有成绩 |\n"); 191 printf(" |-------------------------------------------|\n"); 192 printf(" | 5.成绩排序:按照成绩排名 |\n"); 193 printf(" |-------------------------------------------|\n"); 194 printf(" | 6.软件退出:退出管理系统 |\n"); 195 printf(" |-------------------------------------------|\n"); 196 printf("请输入您要进行的操作(1~5):\n"); 197 scanf("%d",&choose); 198 while(choose!=1&&choose!=2&&choose!=3&&choose!=4&&choose!=5&&choose!=6) 199 { 200 printf(" \n\n\n\t\t\t..____.╭╮╭╮.____...\n"); 201 printf(" \t\t\t.._...╭-┴┴★╮_......\n"); 202 printf(" \t\t\t.._...│◎ ︵│_......\n"); 203 printf(" \t\t\t...※※※╰○--○╯※※※....\n"); 204 printf(" \t\t\t....错了哦!请重新输入!.....\n"); 205 printf(" \t\t\t...................\n"); 206 printf("请输入您要进行的操作:\n"); 207 scanf("%d",&choose); 208 } 209 while(choose==1||choose==2||choose==3||choose==4||choose==5||choose==6) 210 { 211 switch(choose) 212 { 213 case 1:tianjiachengji(); break; //添加成绩 214 case 2:xianshichengji(); break; //显示成绩 215 case 3:chaxunchengji(); break; //查询成绩 216 case 4:shanchuchengji(); break; //删除成绩 217 case 5:chengjipaixu(); break; //成绩排序 218 case 6:ruanjiantuichu(); break; //软件退出 219 } 220 printf("请输入您要进行的操作(1~6):\n"); 221 scanf("%d",&choose); 222 } 223 224 }