C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/04 04:52:38
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
/*有一个班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门课程的平均分; ……](/uploads/image/z/4600768-40-8.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)
//错误看代码里的注释
#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");
}
#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");
}
C语言错误,指针,有一个班4个学生,5门课程. ①求第1门课程的平均分; ……
C语言:有一个班4个学生5门课程:1要求计算每一门课程的平均分;2找两门课程不及格的学生,
有一个班4个学生,5门课程.1、求第1门课程的平均分;2、找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及
C语言 有一个班4个学生,5门课程分别用函数求:
用c语言实现一个程序:有五个学生,四门课程,求每个学生的平均分和每门课程平均分,并求平均分最高的学生
C语言输入M个学生N门课程的成绩,要求输出成绩单(包括每个学生的平均分及每门课程的平均分)
C语言 求一个学生n门课程的平均成绩
C语言编程求助!(关于数组)“输入5个学生的3门课程成绩,输出5个学生中的最高平均分”.
用C语言编写程序:输入某位学生的数学、英语和计算机课程的成绩,求该生3门课程的平均分.
用c语言写 有三个学生四门课成绩,统计每人课程及各门课程的平均分
C语言,编写程序,依次输入某位学生的数学、英语和计算机课程的成绩,计算并输出该生3门课程的平均分
编写一个程序,为选修3,4和5门课程的学生计算平均分,其中求平均分要用重载函数实现.