编的是一个计分器,共25道选择题,每道题是4分;要求输入10个学生的答案和标准答案,然后给出这10个学生的成绩,并输出最高分数。
这是我写的程序,菜鸟级别,希望高手不要笑啊!
int sco(char a[25],char b[25])
{ int k=0,i,s;
for(i=0;i<25;i++)
{ if(a[i]==b[i])
k++;
else
k=k;
}
s=4*k;
return s;
}
main()
{ int i,j,score[10],High;
char ANS[25],ZDA[25];
printf(“Enter the right answer:\n”);
for(i=0;i<25;i++)
scanf(“%c”,&ZDA[i]);
for(j=0;j<10;j++)
{ printf(“Enter the %d student’s answer:\n”,j+1);
for(i=0;i<25;i++)
scanf(“%c”,&ANS[i]);
score[j]=sco(ANS,ZDA);
}
for(j=0;j<10;j++)
printf(“The %d student’s score is %d\n”,j+1,score[j]);
High=score[0];
for(j=0;j<10;j++)
{ if(High<score[j])
High=score[j];
}
printf(“The hightest score is %d”,High);
}
>> 本文固定链接: http://www.vcgood.com/archives/1923
没有人愿意帮忙郁闷阿
没看出错误,要不少了#include “stdio.h”
但是运行的时候总是有错误啊!!当我把学生的答案输成一样的时候,得到的分数却是乱七八糟的啊。
你的这个….测试数据输入的好麻烦.
先问楼主个问题:你在第1次循环时输入了多少个数据??貌似连续scanf会有问题(输入输出缓存区).
sco函数的实参和形参不匹配.你的形参是字符,而实参是指针.