网上编译系统提示的错误?求解?
2015-11-13 19:01
218 查看
#include <stdio.h> #include <stdlib.h> #include<string.h> struct Student{ int ID; int class; char name[10]; float score[3]; float sum; }stu[3]; int id1; //标记删除的学生学号 void print(void) { printf("1.input\n"); printf("2.delete\n"); printf("3.select\n"); printf("4.order\n"); printf("5.output\n"); printf("6.quit\n"); printf("please input your option\n"); } void input(struct Student stu[],int j) //用来输入数据的函数,当用户输入1时,执行此函数。 { char ch[10],ch1[10]={"yes"},ch2[10]={"no"}; printf("id "); scanf("%d",&stu[j].ID); printf("class "); scanf("%d",&stu[j].class); printf("name "); scanf("%s",stu[j].name); printf("score1 "); scanf("%f",&stu[j].score[0]); printf("score2 "); scanf("%f",&stu[j].score[1]); printf("score3 "); scanf("%f",&stu[j].score[2]); stu[j].sum=stu[j].score[0]+stu[j].score[1]+stu[j].score[2]; printf("continue?"); scanf("%s",ch); if(strcmp(ch,ch1)==0) { j++; input(stu,j); } if(strcmp(ch,ch2)==0) print(); } int delete(struct Student stu[]) //当用户输入数字2时,操作此函数,进行学生数据的删除 { char ch1[10]={"yes"},ch2[10]={"no"},ch3[10]; int i,j; scanf("%d",&id1); for(i=0;i<3;i++) { if(id1!=stu[i].ID) { printf("%d,%d,%s,",stu[i].ID,stu[i].class,stu[i].name); for(j=0;j<3;j++) {printf("%.1f,",stu[i].score[j]); } printf("%.1f\n",stu[i].sum); } } printf("continue?"); scanf("%s",ch3); return id1; if(strcmp(ch3,ch1)==0) delete(stu); if(strcmp(ch3,ch2)==0) print(); } void select(struct Student stu[]) //当用户输入数字3时,运行这个函数 { char ch[10],ch1[10]={"yes"},ch2[10]={"no"},ch3[10]; int id,cla,i,j,flag=0; scanf("%d",&id); for(i=0;i<3;i++) { if(id==stu[i].ID) { printf("%d,%d,%s,",stu[i].ID,stu[i].class,stu[i].name); for(j=0;j<3;j++) {printf("%.1f,",stu[i].score[j]);} printf("%.1f\n",stu[i].sum); flag++; } } if(flag==0) printf("there is no eligible student"); printf("continue?"); scanf("%s",ch); if(strcmp(ch,ch1)==0) { scanf("%d",&cla); for(i=0;i<3;i++) { if(cla==stu[i].class) { printf("%d,%d,%s,",stu[i].ID,stu[i].class,stu[i].name); for(j=0;j<3;j++) {printf("%.1f,",stu[i].score[j]);} printf("%.1f\n",stu[i].sum); } } } printf("continue?"); scanf("%s",ch3); if(strcmp(ch3,ch2)==0) print(); } void order(struct Student stu[]) //当用户输入4时,进行此函数,进行排序 { int i,j; struct Student temp; for(i=0;i<2;i++) for(j=0;j<2-i;j++) { if(stu[i].ID!=id1) { if(stu[j].class>stu[j+1].class) {temp=stu[j];stu[j]=stu[j+1];stu[j+1]=temp;} if(stu[j].class==stu[j+1].class) { if(stu[j].sum>stu[j+1].sum) {temp=stu[j];stu[j]=stu[j+1];stu[j+1]=temp;} } } } for(i=0;i<3;i++) { if(stu[i].ID!=id1) { printf("%d,%d,%s,",stu[i].ID,stu[i].class,stu[i].name); for(j=0;j<3;j++) {printf("%.1f,",stu[i].score[j]);} printf("%.1f\n",stu[i].sum); } } print(); } void output(struct Student stu[]) //当用户输入5时,进行数据的输出。 { int i,j; for(i=0;i<3;i++) { if(stu[i].ID!=id1) { printf("%d,%d,%s,",stu[i].ID,stu[i].class,stu[i].name); for(j=0;j<3;j++) {printf("%.1f,",stu[i].score[j]);} printf("%.1f\n",stu[i].sum); } } print(); } void match(int n) //将用户输入的数字与函数进行搭配 { switch(n) { case 1:input(stu,0); break; case 2:delete(stu);break; case 3:select(stu);break; case 4:order(stu);break; case 5:output(stu);break; case 6:break; } } int main() { int a[6]; //用数组存储这输入的数字,并进行搭配。 print(); scanf("%d",&a[0]); if(a[0]!=6) { match(a[0]); scanf("%d",&a[1]); if(a[1]!=6) {match(a[1]); scanf("%d",&a[2]); if(a[2]!=6) {match(a[2]); scanf("%d",&a[3]); if(a[3]!=6) {match(a[3]); scanf("%d",&a[4]); if(a[4]!=6) {match(a[4]); scanf("%d",&a[5]); if(a[5]!=6) {match(a[5]);} } } } } } return 0; }
相关文章推荐
- 【数据结构】二叉树
- python 解析json
- Android WiFi框架学习-打开WiFi
- Hadoop运维记录系列(十七)
- Hadoop运维记录系列(十七)
- protobuf java 反射
- android 进程优先级
- Modeling Video Evolution For Action Recognition - cvpr - 2015
- Spring 学习日记 (1)配置文件的装载
- Android之Toast显示不出来原因
- html
- @selector 调用方法 传递多参数
- 问题:-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "BlueView" nib but the view outlet was not set.
- [Java][RCP] 引入第三方jar包时出错: XXXcannot be found XXX
- 点击屏幕任意区域软键盘消失
- The target principal name is incorrect. Cannot generate SSPI context
- 单元测试 函数的完成
- binder驱动使用的数据结构说明
- 动手动脑之异常处理
- 111 AddressBookUI