C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……/*有一个班4个学生,5门课程.①求第1门课程的平均分;②找出有两门以上课程不及格的学生,输出他们的学号和全部课
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/20 04:39:27
![C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……/*有一个班4个学生,5门课程.①求第1门课程的平均分;②找出有两门以上课程不及格的学生,输出他们的学号和全部课](/uploads/image/z/4367446-70-6.jpg?t=C%E8%AF%AD%E8%A8%80%E9%94%99%E8%AF%AF%2C%E6%8C%87%E9%92%88%2C%E6%9C%89%E4%B8%80%E4%B8%AA%E7%8F%AD4%E4%B8%AA%E5%AD%A6%E7%94%9F%2C5%E9%97%A8%E8%AF%BE%E7%A8%8B.+%E2%91%A0%E6%B1%82%E7%AC%AC1%E9%97%A8%E8%AF%BE%E7%A8%8B%E7%9A%84%E5%B9%B3%E5%9D%87%E5%88%86%EF%BC%9B+%E2%80%A6%E2%80%A6%2F%2A%E6%9C%89%E4%B8%80%E4%B8%AA%E7%8F%AD4%E4%B8%AA%E5%AD%A6%E7%94%9F%2C5%E9%97%A8%E8%AF%BE%E7%A8%8B.%E2%91%A0%E6%B1%82%E7%AC%AC1%E9%97%A8%E8%AF%BE%E7%A8%8B%E7%9A%84%E5%B9%B3%E5%9D%87%E5%88%86%EF%BC%9B%E2%91%A1%E6%89%BE%E5%87%BA%E6%9C%89%E4%B8%A4%E9%97%A8%E4%BB%A5%E4%B8%8A%E8%AF%BE%E7%A8%8B%E4%B8%8D%E5%8F%8A%E6%A0%BC%E7%9A%84%E5%AD%A6%E7%94%9F%2C%E8%BE%93%E5%87%BA%E4%BB%96%E4%BB%AC%E7%9A%84%E5%AD%A6%E5%8F%B7%E5%92%8C%E5%85%A8%E9%83%A8%E8%AF%BE)
F,Irēs9&m}\>9nѴa#S?ٻrDuw wjg _rHj%M-7o&q/g졉?S%E+}*
C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……/*有一个班4个学生,5门课程.①求第1门课程的平均分;②找出有两门以上课程不及格的学生,输出他们的学号和全部课
C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……
/*有一个班4个学生,5门课程.①求第1门课程的平均分;②找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩;③找出平均成绩在90分以上或全部课程成绩在85分以上的学生.【除了cour_aver函数可以正常输出,其他两个函数打出一堆“0.0”,并夹杂着很多很长的数字!究竟哪里错了?】
#include
int main()
{ float cour_aver(float (*p)[5],int cour);
void fail_two(float (*p)[5]);
void excellent(float (*p)[5]);
int i,j;
float score[4][5];
for(i=0;i
C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……/*有一个班4个学生,5门课程.①求第1门课程的平均分;②找出有两门以上课程不及格的学生,输出他们的学号和全部课
//错误看代码里的注释
#include<stdio.h>
int main()
{
\x09float cour_aver(float (*p)[5],int cour);
\x09void fail_two(float (*p)[5]);
\x09void excellent(float (*p)[5]);
\x09int i,j;
\x09float score[4][5];
for(i=0;i<4;i++)
\x09{
\x09\x09printf("Please input 5 scores of student No.%d:",i+1);
\x09\x09for(j=0;j<5;j++)
\x09\x09\x09scanf("%f",&score[i][j]);
\x09}
\x09printf("\tCour1\tCour2\tCour3\tCour4\tCour5\n");
\x09for(i=0;i<4;i++)
\x09{
\x09\x09printf("No.%d\t",i+1);
\x09\x09for(j=0;j<5;j++)
\x09\x09\x09printf("%.1f\t",score[i][j]);
\x09\x09printf("\n");
\x09}
\x09printf("The average of Course 1 is %.1f .\n",cour_aver(score,0));//第一门课程下标是0,不是1
\x09fail_two(score);
\x09excellent(score);
\x09return 0;
}
float cour_aver(float (*p)[5],int cour)
{
\x09int i;
\x09float sum=0;
\x09for(i=0;i<4;i++)
\x09\x09sum=sum+*(*(p+i)+cour);
\x09return sum/4;
}
void fail_two(float (*p)[5])
{
\x09int i,j,b;
float sum;
\x09for(i=0;i<4;i++)
\x09{
\x09\x09b=0;//每一次循环都要初始化b=0和sum=0
\x09\x09sum=0;
\x09\x09for(j=0;j<5;j++)
\x09\x09\x09if(*(*(p+i)+j)<60)
\x09\x09\x09\x09b++;
\x09\x09if(b>=2)
\x09\x09{
\x09\x09\x09printf("Student No.%d\t",i+1);
\x09\x09\x09for(j=0;j<5;j++)//j++不是i++
\x09\x09\x09{
\x09\x09\x09\x09printf("%.1f\t",*(*(p+i)+j));
\x09\x09\x09\x09sum=sum+*(*(p+i)+j);
\x09\x09\x09}
\x09\x09\x09printf("average:%.1f\n",sum/5);
\x09\x09}
\x09}
}
void excellent(float (*p)[5])
{
\x09int i,j,b;
\x09float stu_aver,sum;
\x09for(i=0;i<4;i++)
\x09{
\x09\x09b=0;//每一次循环都要初始化b=0和sum=0
\x09\x09sum=0;
\x09\x09for(j=0;j<5;j++)
\x09\x09{
\x09\x09\x09sum=sum+*(*(p+i)+j);
\x09\x09\x09if(*(*(p+i)+j)>=85)
\x09\x09\x09\x09b++;
\x09\x09}
\x09\x09stu_aver=sum/5;\x09
\x09\x09if(stu_aver>=90||b==5)
\x09\x09\x09printf("Student No.%d\t",i+1);
\x09}
\x09printf("\n");
}