#include <stdio.h>
int getAvg(int a, int b, int c);
int main()
{
int a,b,c;
int i;
int avg[5];
char name[5][10] ;
int korean[5], english[5], maths[5] ;
char message[2][10] = {"Pass","No Pass"};
for ( i = 0; i < 5; i++ )
{
printf("Enter your marks <name,korean,english,maths \n");
scanf("%s%d%d%d",name[i],&korean[i],&english[i],&maths[i]);
}
for (i = 0; i < 5; i++)
{
printf("name:%s, korean:%d, english:%d, maths:%d, average:%d",name[i],korean[i],english[i],maths[i],avg[i]);
avg[i] = getAvg(a,b,c);
if (avg[i]>60)
{
printf("==%s",message[0]);
}
else
{
printf("==%s",message[1]);
}
}
int getAvg(int a, int b, int c)
{
int avg;
avg = (a+b+c)/3;
return avg;
}
}
我想这样打印
Enter your marks <name,korean,english,maths>
kim 10 50 60
Enter your marks <name,korean,english,maths>
hanna 50 60 70
Enter your marks <name,korean,english,maths>
lee 80 70 60
Enter your marks <name,korean,english,maths>
lori 70 80 90
Enter your marks <name,korean,english,maths>
kang 60 70 80
name:kim,korean:10,english:50,maths:60,average:40 == no pass
name:hanna,korean:50,english:60,maths:70,average:60 == no pass
name:lee,korean:80,english:70,maths:60,average:70 == pass
name:lori,korean:70,english:80,maths:90,average:80 == pass
name:kang,korean:60,english:70,maths:80,average:70 == pass
如果结果是我的错误或者问题太简单了,我真的很抱歉.. 5 小时后到期,但我不知道出了什么问题.. 它一直告诉我 getAve 函数未定义引用,我看不出有什么问题..请有人帮助我吗? :(
最佳答案
您的getAvg
位于main
内。将其移出(或者等效地将一个外大括号从代码末尾移到 getAvg
定义开始的上方)。平均值的计算也有问题,但这是一个逻辑错误,而不是语法错误。 (具体来说,您正在计算 a
、b
和 c
的平均值 - 检查您定义这些变量值的位置,然后您'在计算之前重新打印内容)。
关于c - 请任何人检查我的代码看看有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26154618/