用循环实现统计5个学生的平均成绩和总成绩请 1楼写的我看不懂啊、、、、

来源:学生作业帮助网 编辑:六六作业网 时间:2024/05/05 11:54:29
用循环实现统计5个学生的平均成绩和总成绩请1楼写的我看不懂啊、、、、用循环实现统计5个学生的平均成绩和总成绩请1楼写的我看不懂啊、、、、用循环实现统计5个学生的平均成绩和总成绩请1楼写的我看不懂啊、、

用循环实现统计5个学生的平均成绩和总成绩请 1楼写的我看不懂啊、、、、
用循环实现统计5个学生的平均成绩和总成绩

1楼写的我看不懂啊、、、、

用循环实现统计5个学生的平均成绩和总成绩请 1楼写的我看不懂啊、、、、
/*这个项目的核心是对存放学员信息的结构数组的操作*/
#includestdio.h
/*首先创建一个学员信息的结构*/
struct student
{
int num; //学号
char name[20]; //姓名
float score[3]; //三门课的成绩
float ave; //三门课的平均成绩
}stu[50];//声明一个结构类型的数组
/*定义录入学员信息的录入函数.因为要给结构数组stu[]赋值,
所以是有返回值的,返回类型是一个结构*/
struct student input()
{
struct student in;
int i;
float sum=0;
printf("\n 学号:");
scanf("%d",in.num);//注意,这里的in.num它是一个成员变量,是个变量,所以''别忘了
printf(" 姓名:");
fflush(stdin);
gets(in.name);
printf(" 三门课的成绩 \n");
/*用一个循环来为score[]赋值并累加成绩*/
for(i=0;i3;i++)
{
printf(" 成绩%d:",i+1);
scanf("%f",in.score[i]);
sum+=in.score[i];
}
in.ave=sum/3;//计算出平均成绩
return in;
}
/*定义显示学员信息的函数*/
void display(struct student *s,int n)
{
int i;
printf("\n 学号\t姓名\t平均成绩\n");
for(i=0;in;i++,s++)//指针循环遍历结构数组时,要让指针也++
{
printf(" %d\t%s\t%5.2f\n",s-num,s-name,s-ave);
}
}
/*定义按学员平均成绩排序的函数*/
void sort(struct student *s,int n)
{
int i,j;
struct student d;//定义一个中间交换变量
for(i=0;in;i++)
{
for(j=0;jn-1-i;j++)
{
if((s+j)-ave(s+j+1)-ave)
{ //交换的是结构数组里的结构变量
d=*(s+j);
*(s+j)=*(s+j+1);
*(s+j+1)=d;
}
}
}
}
/*定义插入函数*/
void insert(struct student *s,int n)
{
int i,j;
struct student in;
printf("\n 请输入要插入的学员信息");
in=input();
for(i=0;in;i++,s++)
{
if(s-avein.ave)//前面定义的排序函数是个降序排列,所以寻找一个比插入的平均成绩小的位置
break;
}
if(in)
{
for(j=n;ji;j--)
{
*(s+j)=*(s+j-1);//为插入的结构变量留出位置,其他结构变量往后移一位
}
*(s+i)=in;
}
else//当插入的平均成绩最低时
{
for(j=n;j0;j--)
{
*(s+j)=*(s+j-1);
}
*(s+0)=in;
}
}
/*定义删除函数*/
void delet(struct student *d,int n)
{
int i,j,no;
printf("\n 请输入要删除学员的学号:");
scanf("%d",no);
for(i=0;in;i++,d++)
{
if(d-num==no)
break;
}
if(i=n)
printf("\n 没有该学员.\n");
else
{
d=d-i;
for(j=i;jn;j++)
{
*(d+j)=*(d+j+1);
}
}
}
void main()
{
int i,count=0;//count用来统计输入学员的个数
char ans;
float sum=0;
/*由于不确定学员个数,所以用“回答 y or n ”
来确定是否继续输入学员信息*/
printf("\n 请输入所有学员的信息");
ans='y';
while(ans=='y')
{
if(count=50)
{
stu[count]=input();//调用录入函数
count++;
printf("\n 是否还要输入学员信息?(y/n)");
fflush(stdin);
ans=getchar();
}
else
printf("\n 学员的个数已超过了最多人数50");
}
printf("\n 排序前的学员信息如下:");
display(stu,count);//调用显示学员信息函数,传递的参数是结构数组和学员的个数
sort(stu,count);//调用排序函数
printf("\n 排序后的学员信息如下:");
display(stu,count);
printf("\n 是否要插入新学员?(y/n)");
fflush(stdin);
ans=getchar();
while(ans=='y')
{
insert(stu,count);//调用插入函数
count++;//插入一个,学员的人数也要加一个
printf("\n 是否还要插入新学员?(y/n)");
fflush(stdin);
ans=getchar();
}
printf("\n 插入新学员后的学员信息如下:");
display(stu,count);
printf("\n 是否要删除某个学员?(y/n)");
fflush(stdin);
ans=getchar();
while(ans=='y')
{
delet(stu,count);//调用删除函数
count--;//删除一个,学员的人数也要减一个
printf("\n 是否还要删除某个学员?(y/n)");
fflush(stdin);
ans=getchar();
}
printf("\n 删除某个学员后的学员信息如下:");
display(stu,count);
}

用循环实现统计5个学生的平均成绩和总成绩请 1楼写的我看不懂啊、、、、 用二维数组做:输入n个学生的数学,英语成绩,然后统计每门课程的总成绩,平均分,最高分和最低分,最后输 4. 编程实现:从键盘上输入5位学生的《C语言程序设计》的成绩,统计这门课程的平均成绩,并输出最高成绩 学生成绩计算 已知10个学生的5门课程的成绩,将其存入一个二维数组,求每一个学生的总成绩和每一个学生的输入:10个学生的5门课程的成绩 输出:每一个学生的总成绩和每一个学生的平均成 用inputbox输入一个班10个学生的成绩,要求10个学生的平均成绩,然后统计高于平均分的人数.用inputbox输入一个班10个学生的成绩,要求10个学生的平均成绩,然后统计高于平均分的人数.将10个学生 vb编写应用程序输入若干学生一门课程的成绩,统计平均成绩,及格和不及格的人数现在学的是循环语句,希望有循环语句的答案 用C语言编程:从键盘输入6名学生的5门成绩,依次分别统计出每个学生的平均成绩并打印之. C语言编程,从键盘上输入学生的三门课程成绩,求总成绩和平均成绩 C语言 输入全班学生成绩,统计优良合格不及格人数,并输出总分平均分,用函数实现 编写应用程序,输入若干学生一门课程的成绩,统计平均成绩,及格和不及格的人数. 编写c程序,有5个学生,考3门功课.求出每一个学生的总分及平均分,统计平均成绩低于60分 C语言编程题:从键盘输入10个学生的成绩,计算平均成绩,统计及格人数,计算高于平均分的学生的分数 用C++编写.设某班有3门课程(语文,数学,英语)的成绩.先输入学生人数,然后按学号(设为3位)从小到大的顺序依次输入学生学号和学生成绩.编写实现:1,统计每门课程全班的总成绩 C语言 编程!二、实验题目:有10个学生,每个学生的数据包括学号,姓名,及三门课成绩,总,平均.二、实验题目:有10个学生,每个学生的数据包括学号,姓名,及三门课成绩,总成绩和平均成绩,从键 编写程序,从键盘输入6名同学的5门成绩,分别统计出每个学生的平均成绩.用C语言编写 C++ 求平均成绩 6个人3门课使用数组编写一个统计学生课程平均分的程序:输入6个学生的学号和3门课程的成绩(整数形式),统计每个学生3门课程的平均分(整数形式),最后输出统计结果.程 C语言:从键盘任意输入某班10个学生的成绩,计算总成绩并统计成绩不及格的学生人数,要求用一维数组做函数从键盘任意输入某班10个学生的成绩,计算总成绩并统计成绩不及格的学生人数,要 利用函数算出各科的平均成绩和每个学生的总成绩(计算平均成绩时不包括总成绩),平均分数值保留2位小数;