回复 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");
}
}
