大神帮忙看看程序有问题没,代码里面有题目。总分和平均分输出后依然乱码,大神指点一下该怎么解决???

/*1、输入5位同学的一组信息,
包括学号、姓名、数学成绩、计算机成绩,
求得每位同学的平均分和总分,然后按照总分从高到低排序。*/
#include<stdio.h>
int main()
{
	int i;
	struct Student//声明结构体类型
	{
		int num;
		char name[20];
		float mathScore;
		float computerScore;
		float sum;
		float average;
	};
	struct Student stu[5],t;//定义结构体数组stu,和结构体变量t
	
	for(i=0;i<5;i++)//录入信息,并计算总分和平均分
	{
		printf("---请输入第%d个同学的信息---\n",i+1);
		scanf("%d,%s,%f,%f",&stu[i].num,&stu[i].name,&stu[i].mathScore,&stu[i].computerScore);
		printf("结果:\n");
		stu[i].sum=stu[i].mathScore+stu[i].computerScore;
		printf("第%d个同学的总分为:%4.2f\n",i+1,stu[i].mathScore+stu[i].computerScore);
		stu[i].average=stu[i].sum/2;
		printf("第%d个同学的平均分为:%4.2f\n",i+1,stu[i].average);
	}
	
	
	for(i=0;i<5;i++)//进行升序
	{
		if(stu[i].sum<stu[i+1].sum)
			t=stu[i],stu[i]=stu[i+1],stu[i+1]=t;
		
	}
	
	for(i=0;i<5;i++)//排序后依次输出
	{
		printf("%d-%s-%f-%f",stu[i].num,stu[i].name,stu[i].mathScore,stu[i].computerScore);
		
	}


	return 0;
}


奕吉啊
浏览 1252回答 1
1回答

望远

 scanf("%d,%s,%f,%f",&stu[i].num,&stu[i].name,&stu[i].mathScore,&stu[i].computerScore);//这里的问题scanf("%d,%s,%f,%f",&stu[i].num,stu[i].name,&stu[i].mathScore,&stu[i].computerScore);//name是数组名本就是一个地址
打开App,查看更多内容
随时随地看视频慕课网APP