case 4:
Student_Select();
break;
case 5:
Student_SortByAverage();
Student_Display();
break;
case 6:
exit(0);
break;
}
IO_WriteInfo();
}
}
c语言1)按成绩高低排序,输出排序后的成绩;2)统计并输出不及格成绩、人数;3)输出最高分、最低分?根据题目中信息所示:仅输入一科目成绩;人数不作为参数输入;
现在假设:及格线为60分(题目未明确给出)
#includestdio.h
//#include cstring
//#includealgorithm
typedef struct {
int grade;
}student;
//选择排序
void selectSort(student stu[10],int n){
for(int i=0;i=n;i++)
{int k=i;
for(int j=k+1;j=n;j++){
if(stu[j].gradestu[k].grade)
{k=j;
}}
int temp=stu[i].grade;
stu[i].grade=stu[k].grade;
stu[k].grade=temp;}}
//数据输出
void display(student stu[10],int n)
{
for(int j=0;jn;++j)
printf("%d ",stu[j].grade);
printf("\n");}
//数据最大值与最小值
void poll_values(student stu[2],int n){
printf("%d %d",stu[0].grade,stu[n].grade);
printf("\n");
}
int main(){
student stu[10];
student fail[10];
student poll[2];
int n=0;//总人数
int m=0;//不及格人数
while(n10){
scanf("%d",stu[n].grade);
if(stu[n].grade0){
break;
}
++n;}
selectSort(stu,n);
//--------------------------------------
for(int i=0;in;i++)
if(stu[i].grade60){
fail[m]=stu[i];
++m;}
selectSort(fail,m);
display(stu,n);
display(fail,m);
poll[0]=stu[0];
poll[1]=stu[n-1];
display(poll,2);
//poll_values(stu,n)
return 0;
}
运行结果如下
c语言如何编写一个输出学生成绩等级的程序?一、首先打开VC++
二、文件》》新建
三、创建一个C++空白文档头文件是必须声明的# include stdio.h
四、说下主体思想我们定义一个求每门课平均成绩的函数AverageCourse它的形参一个是二维数组,用来传递学生成绩;一个是指针变量(数组名),存放每门课的平均成绩:
void AverageCourse(float score[][4],float *avg)
{
int i,j;
float sum;
for(i=0;i4;i++)
{
sum=0;
for(j=0;j4;j++)
sum+=score[j][i];
avg[i]=sum/4;
}
}
五、之后我们定义一个求总平均成绩的函数AverageAll
它的形参一个是指针变量(数组名),传递一个首地址
n是要计算的成绩个数
float AverageAll(float *score, int n)
{
int i=0;
float sum = 0;
while(in)
{
sum+=score[i];
i++;
}
return sum/n;
}
六、我们还需定义一个查询学生成绩的函数AStudentScore
它的形参一个是指向数组的指针,n是要计算的学生号
void StudentScore(float(*score)[4], int n)
{
int i;
for(i=0; i4; i++)
printf("%4.2f ", *(*(score+n)+i));
printf("\n");
}
下面是主函数
int main()
{
int num,i;
//定义一个数组aveCourse来存储每门课的平均成绩,
定义变量aveAll来存储总的平均成绩
float aveAll,aveCourse[4];
float score[4][4] = {{67, 78, 45, 88}, {76, 54, 90, 69},
{99, 45, 88, 99}, {98, 69, 77, 87}};//这是成绩,可以用scanf输入,也可以在这里定义
/* 调用函数AverageAll求16个分数的平均分 */
aveAll=AverageAll(score[0][0],16);
printf("The average of all courses is:\n%f\n\n",aveAll);
/* 调用函数AverageCourse求4门客的平均分 */
AverageCourse(score,aveCourse);
for(i=0;i4;i++)
printf("The average of %dth course is:\n %f\n",i,aveCourse[i]);
推荐阅读
- 淘宝处罚如何优化营销,淘宝处罚后怎么做可以对店铺有帮助
- oracle存储过程怎么删除,oracle存储过程在哪个文件夹
- 淘宝直播封面素材图片素材,淘宝直播封面规则
- python怎么编函数 python函数编程200例
- 关于postgresql连接失败的信息
- 关于电商如何开具发票的信息
- 新号能不能用电脑直播呢,新抖音号可以直接直播吗
- vb.net找字符 vb中查找字符串
- flutter包体积很大,flutter 包