回复 8楼 heroinearth
你能分析一下为什么q=0了就正确虽然q=0了确实就正确了
但是如果我就输入一个学生的成绩,那个q就不会运行q++那么q=0
接着运行下面的 那么在最后一个循环中不是就不对了吗?但是我用电脑试了一下 却是对了
谁能分析一下?
//运行环境VC6.0++ #include <stdio.h> void main() { int a[2000]={0},j,k,h,q=0; float b[2000]={0}; int i=0,m=3; int t=1,r=3; int g=0,v=3; char ch; for(j=1;j<=2000;j++) { printf("是否退出请输入\"Y\\N?\"\n"); if((ch=getchar())=='Y') { goto ioop; } else { fflush(stdin); //清楚键盘缓冲区垃圾数据; printf("请输入学生学号、三科成绩\n"); for(;i<=m;i++) { scanf("%d",&a[i]); } m+=4; printf("\n"); q++; } } ioop: for(k=0;k<q;k++) { for(;t<=r;t++) { b[k]+=a[t]; } b[k]=(float)b[k]/3; t+=1; r+=4; } for(h=0;h<q;h++) { for(;g<=v;g++) { printf("%5d",a[g]); } printf("%10.2f",b[h]); v+=4; printf("\n"); } }