user-0 提问: 求助一个程序

回复:
user: user-1
content: #include "stdio.h" #include "string.h" #include "windows.h" #include "conio.h" void input(); void menu(); struct student { int code; char name[20]; char sex; int age; int chinese; int english; int computer; int math; int total; int average; }stud[100]; struct student temp; void input() { int num,i; printf("请问您要输入几个学生的信息？\n"); scanf("%d",&num); for(i=0;i<num;i++) { printf("请输入第%d个学生的学号:\n",i+1); scanf("%d",&stud[i].code); printf("请输入第%d个学生的姓名:\n",i+1); scanf("%s",&stud[i].name); fflush(stdin); printf("请输入第%d个学生的性别(F为女，M为男):\n",i+1); scanf("%c",&stud[i].sex); fflush(stdin); printf("请输入第%d个学生的年龄:\n",i+1); scanf("%d",&stud[i].age); printf("请输入第%d个学生的语文成绩:\n",i+1); scanf("%d",&stud[i].chinese); printf("请输入第%d个学生的英语成绩:\n",i+1); scanf("%d",&stud[i].english); printf("请输入第%d个学生的计算机成绩:\n",i+1); scanf("%d",&stud[i].computer); printf("请输入第%d个学生的数学成绩:\n",i+1); scanf("%d",&stud[i].math); stud[i].total = stud[i].chinese+stud[i].english+stud[i].computer+stud[i].math; stud[i].average = stud[i].total/4; } printf("您已经输入了%d个学生的信息",num); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void find() { int choice,i,code; char name[20]; printf("请问您需要按照哪一个方式来查找学员：\n"); printf("查找方式：1.按学号查找。2.按姓名查找。\n"); scanf("%d",&choice); if(choice==1) { printf("请输入您要查找的同学的学号:\n"); scanf("%d",&code); for(i=0;i<100;i++) { if(code == stud[i].code) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } } else if(choice==2) { printf("请输入您要查找的学生的姓名"); fflush(stdin); gets(name); for(i=0;i<100;i++) { if(strcmp(name,stud[i].name)==0) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } } else { printf("请输入1或者2,只能按照姓名或者学号来查找学生信息"); fflush(stdin); getch(); system("cls"); find(); } printf("学生相关信息打印完毕"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void insert() { int i,j=0; system("cls"); printf("请输入要插入学生的信息:\n"); printf("请输入学生的学号:\n"); scanf("%d",&temp.code); printf("请输入学生的姓名:\n"); scanf("%s",&temp.name); fflush(stdin); printf("请输入学生的性别(F为女，M为男):\n"); scanf("%c",&temp.sex); fflush(stdin); printf("请输入学生的年龄:\n"); scanf("%d",&temp.age); printf("请输入学生的语文成绩:\n"); scanf("%d",&temp.chinese); printf("请输入学生的英语成绩:\n"); scanf("%d",&temp.english); printf("请输入学生的计算机成绩:\n"); scanf("%d",&temp.computer); printf("请输入学生的数学成绩:\n"); scanf("%d",&temp.math); temp.total = temp.chinese+temp.english+temp.computer+temp.math; temp.average = temp.total/4; for(i=0;i<100;i++) { if(temp.code<stud[i].code) { for(j=99;j>i;j--) { stud[j]=stud[j-1]; } } stud[j]=temp; break; } printf("你成功已插入了学生的信息！"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void del() { int code,i,j; printf("请输入您要删除的学员的学号：\n"); scanf("%d",&code); for(i=0;i<100;i++) { if(code==stud[i].code) { for(j=i;j<100;j++) { stud[j]=stud[j+1]; } } if(strlen(stud[i].name)>0) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } printf("学生相关信息打印完毕"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void output() { int i; for(i=0;i<100;i++) { if(strlen(stud[i].name)>0) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } printf("学生相关信息打印完毕"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void sort() { int i,j; for(i=0;i<100;i++) { for(j=i+1;j<100;j++) { if(strlen(stud[i].name)>0 && strlen(stud[j].name)>0) { if(stud[i].average<stud[j].average) { temp=stud[i]; stud[i]=stud[j]; stud[j]=temp; } } } } printf("学生信息按照平均分降序排序完毕\n"); output(); } void error() { printf("输入错误，请输入(1-7):\n"); printf("按任意键结束。。。。。\n"); fflush(stdin); getch(); system("cls"); menu(); } void menu() { int choice; system("cls"); printf("\t\t学生信息管理系统\n"); printf("*************************************************\n"); printf("\t\t输入数据\n"); printf("\t\t查找数据\n"); printf("\t\t插入数据\n"); printf("\t\t删除数据\n"); printf("\t\t输出数据\n"); printf("\t\t排序数据\n"); printf("\t\t退出\n"); printf("*************************************************\n"); printf("请输入您的选择(1-7)\n"); scanf("%d",&choice); switch(choice) { case 1:input();break; case 2:find();break; case 3:insert();break; case 4:del();break; case 5:output();break; case 6:sort();break; case 7:exit(0);break; default:error();break; } } void main() { menu(); } 这个也是我找的，好多地方不是很明白，你自己看看

user: user-2
content: 应该不会有人帮你的,自己写吧.碰到不会的再查,再发帖问.

user: user-0
content: 引用 5 楼 clnlyjdm的回复:#include "stdio.h" #include "string.h" #include "windows.h" #include "conio.h" void input(); void menu(); struct student { int code; char name[20]; char sex; int age; int chinese; int english; int computer; int math; int total; int average; }stud[100]; struct student temp; void input() { int num,i; printf("请问您要输入几个学生的信息？\n"); scanf("%d",&num); for(i=0;i<num;i++) { printf("请输入第%d个学生的学号:\n",i+1); scanf("%d",&stud[i].code); printf("请输入第%d个学生的姓名:\n",i+1); scanf("%s",&stud[i].name); fflush(stdin); printf("请输入第%d个学生的性别(F为女，M为男):\n",i+1); scanf("%c",&stud[i].sex); fflush(stdin); printf("请输入第%d个学生的年龄:\n",i+1); scanf("%d",&stud[i].age); printf("请输入第%d个学生的语文成绩:\n",i+1); scanf("%d",&stud[i].chinese); printf("请输入第%d个学生的英语成绩:\n",i+1); scanf("%d",&stud[i].english); printf("请输入第%d个学生的计算机成绩:\n",i+1); scanf("%d",&stud[i].computer); printf("请输入第%d个学生的数学成绩:\n",i+1); scanf("%d",&stud[i].math); stud[i].total = stud[i].chinese+stud[i].english+stud[i].computer+stud[i].math; stud[i].average = stud[i].total/4; } printf("您已经输入了%d个学生的信息",num); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void find() { int choice,i,code; char name[20]; printf("请问您需要按照哪一个方式来查找学员：\n"); printf("查找方式：1.按学号查找。2.按姓名查找。\n"); scanf("%d",&choice); if(choice==1) { printf("请输入您要查找的同学的学号:\n"); scanf("%d",&code); for(i=0;i<100;i++) { if(code == stud[i].code) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } } else if(choice==2) { printf("请输入您要查找的学生的姓名"); fflush(stdin); gets(name); for(i=0;i<100;i++) { if(strcmp(name,stud[i].name)==0) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } } else { printf("请输入1或者2,只能按照姓名或者学号来查找学生信息"); fflush(stdin); getch(); system("cls"); find(); } printf("学生相关信息打印完毕"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void insert() { int i,j=0; system("cls"); printf("请输入要插入学生的信息:\n"); printf("请输入学生的学号:\n"); scanf("%d",&temp.code); printf("请输入学生的姓名:\n"); scanf("%s",&temp.name); fflush(stdin); printf("请输入学生的性别(F为女，M为男):\n"); scanf("%c",&temp.sex); fflush(stdin); printf("请输入学生的年龄:\n"); scanf("%d",&temp.age); printf("请输入学生的语文成绩:\n"); scanf("%d",&temp.chinese); printf("请输入学生的英语成绩:\n"); scanf("%d",&temp.english); printf("请输入学生的计算机成绩:\n"); scanf("%d",&temp.computer); printf("请输入学生的数学成绩:\n"); scanf("%d",&temp.math); temp.total = temp.chinese+temp.english+temp.computer+temp.math; temp.average = temp.total/4; for(i=0;i<100;i++) { if(temp.code<stud[i].code) { for(j=99;j>i;j--) { stud[j]=stud[j-1]; } } stud[j]=temp; break; } printf("你成功已插入了学生的信息！"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void del() { int code,i,j; printf("请输入您要删除的学员的学号：\n"); scanf("%d",&code); for(i=0;i<100;i++) { if(code==stud[i].code) { for(j=i;j<100;j++) { stud[j]=stud[j+1]; } } if(strlen(stud[i].name)>0) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } printf("学生相关信息打印完毕"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void output() { int i; for(i=0;i<100;i++) { if(strlen(stud[i].name)>0) { printf("\n第%d个学生的学号是：%d\n",i+1,stud[i].code); printf("第%d个学生的姓名是：%s\n",i+1,stud[i].name); printf("第%d个学生的性别是：%c\n",i+1,stud[i].sex); printf("第%d个学生的年龄是：%d\n",i+1,stud[i].age); printf("第%d个学生的语文成绩是：%d\n",i+1,stud[i].chinese); printf("第%d个学生的英语成绩是：%d\n",i+1,stud[i].english); printf("第%d个学生的计算机成绩是：%d\n",i+1,stud[i].computer); printf("第%d个学生的数学成绩是：%d\n",i+1,stud[i].math); printf("第%d个学生的总成绩是：%d\n",i+1,stud[i].total); printf("第%d个学生的平均分是：%d\n",i+1,stud[i].average); printf("══════════════════════════════\n"); } } printf("学生相关信息打印完毕"); printf("\n请按任意键返回主菜单！"); fflush(stdin); getch(); system("cls"); menu(); } void sort() { int i,j; for(i=0;i<100;i++) { for(j=i+1;j<100;j++) { if(strlen(stud[i].name)>0 && strlen(stud[j].name)>0) { if(stud[i].average<stud[j].average) { temp=stud[i]; stud[i]=stud[j]; stud[j]=temp; } } } } printf("学生信息按照平均分降序排序完毕\n"); output(); } void error() { printf("输入错误，请输入(1-7):\n"); printf("按任意键结束。。。。。\n"); fflush(stdin); getch(); system("cls"); menu(); } void menu() { int choice; system("cls"); printf("\t\t学生信息管理系统\n"); printf("*************************************************\n"); printf("\t\t输入数据\n"); printf("\t\t查找数据\n"); printf("\t\t插入数据\n"); printf("\t\t删除数据\n"); printf("\t\t输出数据\n"); printf("\t\t排序数据\n"); printf("\t\t退出\n"); printf("*************************************************\n"); printf("请输入您的选择(1-7)\n"); scanf("%d",&choice); switch(choice) { case 1:input();break; case 2:find();break; case 3:insert();break; case 4:del();break; case 5:output();break; case 6:sort();break; case 7:exit(0);break; default:error();break; } } void main() { menu(); } 这个也是我找的，好多地方不是很明白，你自己看看 谢了，不过我自己写完了，哈哈哈

user: user-0
content: 。。。来人啊，来人啊。。

user: user-0
content: 对了，用一个程序写出来。。。（一道题目五个要求，不是五个小题）