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 }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏咸鱼不闲

聊天机器人与Alice的AIML

聊天机器人从20世纪80年代起相继出现:TalkBot、Elbot、eLise、Alice、Laylahbot、爱情玩偶等,其中Alice曾被认为是最聪明的机器...

37570
来自专栏牛客网

今日头条前端实习一面

面试官没通知有二面,于是觉得自己凉凉了。面试氛围还不错, 就是自己网络不好,老是卡很尴尬,所以请一定要检查好网络环境再开始。 一上来估计是在看投的简历,随便聊...

77790
来自专栏程序员宝库

比较优雅地编码

命名很重要,随便一本逻辑学教材(如果读者有兴趣,此处推荐《逻辑学导论》)里都会有长篇大论来讨论命名的问题,我国古代在人才辈出的百家争鸣时期曾经出现过一个学派叫“...

15330
来自专栏牛客网

秋招时间规划,知识点汇总,以及面试总结一、知识储备二、面试问题三、心态变化四、总结

秋招已结束,作为一个平时潜水的牛友,很感激牛客网和广大牛友们。在我无知时,给与我知识;在我烦恼时,给与我慰藉;现在自己也拿到了心仪的offer,就简单写写这段时...

419110
来自专栏java一日一条

程序员面试技巧总结

热爱技术。表达你对你所做的一切感到骄傲,你对自己的选择充满自信,你对语言和工作流有着自己的看法。

7120
来自专栏coding for love

ES6常用新特性学习

说起ES6,想必大家都不陌生了。ES6 的第一个版本,在 2015 年 6 月发布,正式名称是《ECMAScript 2015 标准》(简称 ES2015)。这...

9430
来自专栏CDA数据分析师

帮你提升 Python 的 27 种编程语言

作为全球最流行的编程语言联合设计者之一,我经常看到的一种令人沮丧的行为(在Python社区和其它社区都有),就是那些有影响力的人试图把“缺失”的恐惧感灌输给其它...

25650
来自专栏数据库

SQL:数据与运算的融合体

本公众号主要关注大数据中的非结构处理,但在实际应用中,通常也离不开结构化数据处理,只不过相对而言其工具和开发环境比较成熟了。 SQL语言是结构化数据处理最常用的...

20880
来自专栏牛客网

美团、java后台实习、面经

3月27号投了美团java后台,29号收到面试邀请,好像是金融服务平台(提交简历的时候,我当时没注意随便填的···) 一面: 介绍项目经历 根据简历问一些问题:...

50080
来自专栏CSDN技术头条

帮你提升 Python 的 27 种编程语言

【编者按】本文作者是 Python 的设计者之一 Nick Coghlan,总结了提升 Python 的 27 种编程语言,包括过程式编程、面向对象的数据模型、...

37180

扫码关注云+社区

领取腾讯云代金券