栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

结构体数组内数组的所有数据大小比较,c语言学生成绩,所有成绩中的最高分并输出,总成绩最高的学生,输出该学生的基本信息及总成绩。

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

结构体数组内数组的所有数据大小比较,c语言学生成绩,所有成绩中的最高分并输出,总成绩最高的学生,输出该学生的基本信息及总成绩。

给定结构体数据类型 struct stu {   char stuID[13],

                                                    char stuName[10],

                                                    float scoreEMP[3],

                                           };

编写程序完成如下功能:主函数定义基于结构体struct stu数据类型的5名学生的数组student,调用函数void inputData(...)通过键盘输入5名学生的信息,stuID保存学生的12位学号,stuName保存学生的姓名,scoreEMP保存学生的英语、数学和程序设计3门课的成绩;调用函数void findMAXscore(...)找出所有成绩中的最高分并输出;调用函数void totalScores(...)计算出3门课总成绩最高的学生,输出该学生的基本信息及总成绩。说明:3个被调用函数的参数的数据类型及名字,自己决定。

输入提示信息:"Input stuID:n"

                        "Input stuName:n"

                        "Input scoreEMP:n"

输入格式:    字符串用gets()函数,成绩用scanf("%f%f%f",....)。

输出格式:    

"The high score is %.2f.n"

"The student's stuID %s,stuName %s,scoreEMP:%.2f,%.2f,%.2f,total score %.2f.n"
 

#include
#define N 4
struct stu 
{ 
	char stuID[13];
 	char stuName[10];
 	float scoreEMP[3];
};	
void inputdata(struct stu s[N]);
void findMAXscore(struct stu s[N]);
void totalScore(struct stu s[N]);
int main()
{
	struct stu s[N];
	inputdata(s);
	findMAXscore(s);
	totalScore(s);
	return 0;
}
void inputdata(struct stu s[N])
{
	int i;
	for(i=0;i<=4;i++)
    	{
			printf("input stuID:n");
    		gets(s[i].stuID);
    		printf("input stuName:n");
    		gets(s[i].stuName);
    		printf("input scoreEMP:n");
    		scanf("%f%f%f",&s[i].scoreEMP[0],&s[i].scoreEMP[1],&s[i].scoreEMP[2]);
    		while(getchar()!='n');
		}
}
void findMAXscore(struct stu s[])
{
	float maxscore;
	int x,y,i;
	float z[14],max;
	y=0;
	for(i=0;i<15;i=i+3)
		{
			z[i]=s[y].scoreEMP[0];
        	z[i+1]=s[y].scoreEMP[1];
        	z[i+2]=s[y].scoreEMP[2];
        	y++;
		}
		max=z[0];	
	for(x=0;x<15;x++)
	{
		if(max<=z[x])
		{
	   		max=z[x];
		}
	}
	maxscore=max;
	printf("The high score is %.2f.n",maxscore);
}
void totalScore(struct stu s[])
{
	int i,j;
	int m;
	float sum[N],k,total;
	for(i=0;i<5;i++)
	{
		sum[i]=s[i].scoreEMP[0]+s[i].scoreEMP[1]+s[i].scoreEMP[2];
	}
	k=sum[0];
	m=0;
	for(j=1;j<5;j++)
     	{
    		if(k 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/648287.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号