赞
踩
1.代码实现
- #include<stdio.h>
- #include<stdlib.h>
- #include<string.h>
-
- typedef struct student{
- int num;
- char gender[32];
- char name[64];
- int chi;
- int mat;
- int eng;
- int avr;
- }S;
-
- void stu_add(S *p);
- void stu_delete(S *p);
- void stu_search(S *p);
- void stu_modify(S *p);
- void stu_show(S *p);
- void stu_chi(S *p);
- void stu_mat(S *p);
- void stu_eng(S *p);
- void stu_avr(S *p);
-
- int cnt=0;
-
- int main(int argc, const char *argv[])
- {
- S stu[20];
- int key;
- while(1){
- printf("---------------功能选择---------------\n");
- printf("------------1.学生信息录入------------\n");
- printf("------------2.学生信息删除------------\n");
- printf("------------3.学生信息查询------------\n");
- printf("------------4.学生信息修改------------\n");
- printf("------------5.学生信息显示------------\n");
- printf("---------6.按语文成绩降序排名---------\n");
- printf("---------7.按数学成绩降序排名---------\n");
- printf("---------8.按英语成绩降序排名---------\n");
- printf("---------9.按平均成绩降序排名---------\n");
- printf("-------------10.退出系统---------------\n");
- printf("---------------选择操作---------------\n");
- scanf("%d",&key);
- switch(key){
- case 1:
- stu_add(stu);
- break;
- case 2:
- stu_delete(stu);
- break;
- case 3:
- stu_search(stu);
- break;
- case 4:
- stu_modify(stu);
- break;
- case 5:
- stu_show(stu);
- break;
- case 6:
- stu_chi(stu);
- break;
- case 7:
- stu_mat(stu);
- break;
- case 8:
- stu_eng(stu);
- break;
- case 9:
- stu_eng(stu);
- break;
- case 10:
- printf("---------------------结束---------------------\n");
- return -1;
- default:
- printf("ERROR\n");
- }
- }
- return 0;
- }
-
- void stu_add(S *p){
- int i,jud;
- while(1){
- printf("请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩\n");
- scanf("%d %s %s %d %d %d",&p[cnt].num,p[cnt].gender,p[cnt].name,\
- &p[cnt].chi,&p[cnt].mat,&p[cnt].eng);
- p[cnt].avr=(p[cnt].chi+p[cnt].mat+p[cnt].eng)/3;
- cnt++;
- printf("是否继续添加 \"1\"是 \"0\"否\n");
- scanf("%d",&jud);
- if(jud==0)
- break;
- }
- }
-
- void stu_delete(S *p){
- int num=0;
- printf("输入被删除学生学号:");
- scanf("%d",&num);
- int i=0,j=0;
- S t1;
- for(i=0;i<cnt;i++){
- if(p[i].num==num){
- for(j=i;j<cnt;j++){
- t1=p[j];
- p[j]=p[j+1];
- p[j+1]=t1;
- }
- cnt--;
- }
- }
- }
-
- void stu_search(S *p){
- int num;
- printf("输入该学生学号:");
- scanf("%d",&num);
- int i;
- for(i=0;i<cnt;i++){
- if(p[i].num==num){
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- }
- }
- }
-
- void stu_modify(S *p){
- int num;
- printf("输入该学生学号:");
- scanf("%d",&num);
- int i;
- for(i=0;i<cnt;i++){
- if(p[i].num==num){
- printf("请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩\n");
- scanf("%d %s %s %d %d %d",&p[i].num,p[i].gender,p[i].name,\
- &p[i].chi,&p[i].mat,&p[i].eng);
- printf("该学生信息已被修改为:\n");
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- break;
- }
- }
- }
-
- void stu_show(S *p){
- int i;
- for(i=0;i<cnt;i++){
- printf("--------------------录入显示---------------------\n");
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- }
- }
-
- void stu_chi(S *p){
- int i,j;
- S t;
- for(i=0;i<cnt-1;i++){
- for(j=0;j<cnt-1-i;j++){
- if(p[j].chi<p[j+1].chi){
- t=p[j];
- p[j]=p[j+1];
- p[j+1]=t;
- }
- }
- }
- for(i=0;i<cnt;i++){
- printf("---------------按语文成绩降序显示---------------\n");
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- }
- }
-
- void stu_mat(S *p){
- int i,j;
- S t;
- for(i=0;i<cnt-1;i++){
- for(j=0;j<cnt-1-i;j++){
- if(p[j].mat<p[j+1].mat){
- t=p[j];
- p[j]=p[j+1];
- p[j+1]=t;
- }
- }
- }
- for(i=0;i<cnt;i++){
- printf("---------------按数学成绩降序显示---------------\n");
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- }
- }
-
- void stu_eng(S *p){
- int i,j;
- S t;
- for(i=0;i<cnt-1;i++){
- for(j=0;j<cnt-1-i;j++){
- if(p[j].eng<p[j+1].eng){
- t=p[j];
- p[j]=p[j+1];
- p[j+1]=t;
- }
- }
- }
- for(i=0;i<cnt;i++){
- printf("---------------按英语成绩降序显示---------------\n");
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- }
- }
-
- void stu_avr(S *p){
- int i,j;
- S t;
- for(i=0;i<cnt-1;i++){
- for(j=0;j<cnt-1-i;j++){
- if(p[j].avr<p[j+1].avr){
- t=p[j];
- p[j]=p[j+1];
- p[j+1]=t;
- }
- }
- }
- for(i=0;i<cnt;i++){
- printf("---------------按平均成绩降序显示---------------\n");
- printf("学号:%-7d 性别:%-7s 姓名:%-7s 语文成绩:%-7d 数学成绩:%-7d 英语成绩:%-7d 平均成绩:%-7d\n",p[i].num,p[i].gender,p[i].name,p[i].chi,p[i].mat,p[i].eng,p[i].avr);
- }
- }
2.运行结果
ubuntu@ubuntu:day1$ gcc hw.c
ubuntu@ubuntu:day1$ ./a.out
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
1
请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩
1 male hcf 115 90 115
是否继续添加 "1"是 "0"否
1
请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩
2 male syh 110 100 130
是否继续添加 "1"是 "0"否
1
请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩
3 male lc 110 95 110
是否继续添加 "1"是 "0"否
1
请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩
4 male czy 90 90 90
是否继续添加 "1"是 "0"否
1
请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩
5 female yj 120 110 130
是否继续添加 "1"是 "0"否
0
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
5
--------------------录入显示---------------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
--------------------录入显示---------------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
--------------------录入显示---------------------
学号:3 性别:male 姓名:lc 语文成绩:110 数学成绩:95 英语成绩:110 平均成绩:105
--------------------录入显示---------------------
学号:4 性别:male 姓名:czy 语文成绩:90 数学成绩:90 英语成绩:90 平均成绩:90
--------------------录入显示---------------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
4
输入该学生学号:3
请输入--->学号 性别 姓名 语文成绩 数学成绩 英语成绩
3 male lc 115 100 110
该学生信息已被修改为:
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
3
输入该学生学号:3
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
5
--------------------录入显示---------------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
--------------------录入显示---------------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
--------------------录入显示---------------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
--------------------录入显示---------------------
学号:4 性别:male 姓名:czy 语文成绩:90 数学成绩:90 英语成绩:90 平均成绩:90
--------------------录入显示---------------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
6
---------------按语文成绩降序显示---------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------按语文成绩降序显示---------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
---------------按语文成绩降序显示---------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------按语文成绩降序显示---------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
---------------按语文成绩降序显示---------------
学号:4 性别:male 姓名:czy 语文成绩:90 数学成绩:90 英语成绩:90 平均成绩:90
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
7
---------------按数学成绩降序显示---------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------按数学成绩降序显示---------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------按数学成绩降序显示---------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
---------------按数学成绩降序显示---------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
---------------按数学成绩降序显示---------------
学号:4 性别:male 姓名:czy 语文成绩:90 数学成绩:90 英语成绩:90 平均成绩:90
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
8
---------------按英语成绩降序显示---------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------按英语成绩降序显示---------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
---------------按英语成绩降序显示---------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
---------------按英语成绩降序显示---------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------按英语成绩降序显示---------------
学号:4 性别:male 姓名:czy 语文成绩:90 数学成绩:90 英语成绩:90 平均成绩:90
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
9
---------------按英语成绩降序显示---------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------按英语成绩降序显示---------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
---------------按英语成绩降序显示---------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
---------------按英语成绩降序显示---------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------按英语成绩降序显示---------------
学号:4 性别:male 姓名:czy 语文成绩:90 数学成绩:90 英语成绩:90 平均成绩:90
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
2
输入被删除学生学号:4
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
5
--------------------录入显示---------------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
--------------------录入显示---------------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
--------------------录入显示---------------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
--------------------录入显示---------------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
6
---------------按语文成绩降序显示---------------
学号:5 性别:female 姓名:yj 语文成绩:120 数学成绩:110 英语成绩:130 平均成绩:120
---------------按语文成绩降序显示---------------
学号:1 性别:male 姓名:hcf 语文成绩:115 数学成绩:90 英语成绩:115 平均成绩:106
---------------按语文成绩降序显示---------------
学号:3 性别:male 姓名:lc 语文成绩:115 数学成绩:100 英语成绩:110 平均成绩:105
---------------按语文成绩降序显示---------------
学号:2 性别:male 姓名:syh 语文成绩:110 数学成绩:100 英语成绩:130 平均成绩:113
---------------功能选择---------------
------------1.学生信息录入------------
------------2.学生信息删除------------
------------3.学生信息查询------------
------------4.学生信息修改------------
------------5.学生信息显示------------
---------6.按语文成绩降序排名---------
---------7.按数学成绩降序排名---------
---------8.按英语成绩降序排名---------
---------9.按平均成绩降序排名---------
-------------10.退出系统---------------
---------------选择操作---------------
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。