输入100个学生的学号 姓名和成绩 按从高分到低分的顺序排列后输出,输出后是乱码 输出错误吗?求道神,,

#include "stdio.h"struct student{ int num; char name[20]; int score;};void main(){ int i,j; struct student a[100],t; for(i=0;i<100;i++) scanf("%d%s%d",&a[i].num,a[i].name,&a[i].score); for(i=0;i<99;i++) for(j=i+1;j<100;j++) if(a[i].score<a[j].score) {t=a[i];a[i]=a[j];a[j]=t;} for(i=0;i<100;i++) printf("\n %5d,%15s,%5d",a[i].num,a[i].name,a[i].score);

}

程序没有问题,我输入了5个学生数据,完全正常的:

温馨提示:内容为网友见解,仅供参考
无其他回答

输入n个学生的学号、姓名、成绩。然后将学生按成绩从高到低排列后,输出...
struct Student { char name[20];int number ;float score ;struct Stuedent * next;}Stu[20] ;直接用套用(数组)冒泡法的算法.换个名字就可以了.你那应该有这算法把,不用我写出来.若用连表的冒泡排序:typedef struct Student { char name[20];int number ;float score ;struct Stuedent * ...

...从高到低进行顺序输出,并同时输入指定学生的学号和成绩
\/\/成绩排序方面,可以用平均成绩排序输出模块,按相应科目更改一下数组序号则可\/\/或者,再写一个科目选择,按选择中的科目引用相应的数组内容则可以实现按科目排序#include<string.h> #include<stdio.h> \/*定义学生结构体*\/ struct Student { char ID[20]; char Name[20]; float Mark1; float Mark2;...

向计算机输入某班n(n《=100)个同学学号,姓名,性别的m(m《=10)门的课 ...
向计算机输入某班n(n《=100)个同学学号,姓名,性别的m(m《=10)门的课程考试成绩,要求计算机输出全班各个学生的平均成绩,按名次输出同学的姓名和学号。提示:(1)定义结构体student用... 向计算机输入某班n(n《=100)个同学学号,姓名,性别的m(m《=10)门的课程考试成绩,要求计算机输出全班各个学生的平均成绩,...

查询学生各门课程的成绩,要求输出学号,姓名,课程名,成绩,查询结果,按...
首先,结果将包含多个记录,每个记录表示一个学生成绩条目。每条记录将包含四个字段:学号:学生的唯一标识符姓名:学生的全名课程名:学生所修课程的名称成绩:学生在该课程中的成绩所有的记录将按照学号从小到大的顺序排列,如果遇到相同学号的记录,则按成绩从高到低排序。这样的查询结果有助于教师或管理...

按平均成绩从高到低显示所有学生的
这个查询语句会从名为students的表中选取所有学生的信息,并按照平均成绩(AVG(score))从高到低进行排序。通过使用DESC关键字,你可以确保结果按照降序排列,即平均成绩最高的学生排在前面。执行该查询后,你将获得一个包含所有学生信息的结果集,并按照平均成绩从高到低进行排序。每个学生的姓名、学号...

...其中每个学生的信息包括学号、姓名、成绩三个数据项。试用C语言编写...
实现的功能和具体要求如下:1.输入每个学生的信息,按输入数据的顺序,以成绩作为关键字,创建一棵二叉搜索树(成绩可以相同);2.以该二叉搜索树为基础,将所有学生信息按成绩从高到低的顺序输出到一个顺序表中;3.顺序输出顺序表内容。在线等 展开  我来答 1...

编程输入3个学生的学号、姓名、三门课程的成绩,统计每总分,然后比较最...
\/ 从键盘输入38个学生的基本数据,包括学号,姓名,性别以及3门课程的单科成绩。(1) 计算每个学生3门课程的总分和平均成绩;(2) 找出每门课程中成绩最好和成绩最差的学生,并输出这些学生的基本数据;(3) 3门课程总成绩按由高分到低分的顺序排序,输出排序后的学生的基本数据。\/ \/ VC++ 6.0...

C语言:计算每个学生的平均成绩并按平均成绩由高到低排序
选择排序第二个for语句多了一个分号,去掉就好了、、、for (j = 0; j < N - 1; j++){ for (i = 0; i < N - j - 1; i++);

c++读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的...
int main(){ int number;string maxName,maxID,maxScore;string minName,maxID,minScore;string tempName,tempID,tempScore;cin >> number;for(int i=0;i<number;i++){ cin >> tempName >> tempID >> tempScore;if(i == 0){ maxName=tempName;maxID=tempID;maxScore=tempScore;min...

C++:输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩...
可以先声明一个具有姓名、学号、成绩3个数据成员的类,然后输出、输入可以写成类里的成员函数。完成了类声明之后,用这个类定义一个含有10个元素的数组,这样就可以很方便的实现输入学生信息、存储学生信息,再根据需要输出学生信息的功能。而且这样程序看起来也会相当简洁。具体代码如下: 【程序代码】#...

相似回答