当前位置:首页 » 考试成绩 » 给n个学生成绩排序

给n个学生成绩排序

发布时间: 2021-01-27 12:51:32

学生成绩排序

冒泡法,FOR循环

② 输入n个学生的基本信息,然后对学生信息按成绩高低进行排序,将结果输出

GetStuInfo函数里的STUDENT *p是临时变量,函数返回后,p就无效了,你应该把pstu[i]传到函数内部去

③ 编写一个函数,要求对n个学生的成绩进行排序,要求用数组名作函数参数。

public int[] to_sort(int[] score)
{
if (score.Length >= 1)
{
for (int i = 0; i < score.Length - 1; i++)//排序开始
{
int flag = score[0];
for (int j = i; j < score.Length-1; j++)
{
if (score[i] < score[j+1])
{
flag = score[i];
score[i] = score[j+1];
score[j+1] = flag;
}
}
}
}
return score;
}

④ 请大师编写一c语言程序: 输入n个学生成绩,然后用插入法排序。

#include <stdio.h>

#include <stdlib.h>

//直接插入排序

void InsertSort(int arr[], int n)

{

int iter = 0;

int pointer = 0;

int temp = 0;

for(iter = 1; iter < n; iter++)

{

pointer = iter - 1;

temp = arr[iter];

while(pointer >= 0 && temp < arr[pointer])

{

arr[pointer + 1] = arr[pointer];

pointer--;

}

arr[pointer + 1] = temp;

}

}

int main(void)

{

int *Arr;

int cnt = 0;

printf("Input n :");

scanf("%d", &cnt);

Arr = (int *)malloc(sizeof(int) * cnt);


printf("Students' score: ");

int i = 0;

for(i = 0; i < cnt; i++)

{

scanf("%d", &Arr[i]);

}

InsertSort(Arr, cnt);

//ShellSort(Arr, cnt); //希尔排序

//int i;

printf("After sorting :");

for(i = 0; i < cnt; i++)

{

printf("%-4d", Arr[i]);

}

printf(" ");

return 0;

}

⑤ 学生成绩排序 老师要对 n 个学生进行成绩汇总和排序。要求程序按成绩降序进行排序。 帮忙看一下程序

你想问什么?是程序版出问题了吗?
#include "stdio.h"
#include "string.h"
struct student
{ char name[20];
int score;
}stu[100];
main()
{ struct student *pt,*p[100];
int n,i,j;
scanf("%d",&n);
for (i=0;i<n;i++)
{ scanf("%[^,],%d", stu[i].name,&stu[i].score);
p[i]=&stu[i];}
for (i=0;i<n-1;i++)
{
权for (j=i;j<n;j++)
if (p[i]->score<p[j]->score)
{ pt=p[i];
p[i]=p[j];
p[j]=pt; }
}
for (i=0;i<n;i++)
printf("%s,%d\n",p[i]->name,p[i]->score);
getch();
}

⑥ 帮忙编程序,急用。“给出n个学生的考试成绩表,每条信息由学号、姓名与分数组成。按学号排序。”可用文件

#include<stdio.h>
#define N 30
#define S 3
int main()
{float ave[N];
int n,i,j,k,m;
int sum[N]={0};
int num[N],s[N][S];
printf("请输入参加考试的学生总数:n=");
scanf("%d",&n);
printf("请输入学生学号及MA、EN、PH成绩:\n");
for(i=0;i<n;i++)
{scanf("%d",&num[i]);
for(j=0;j<S;j++)
{scanf("%d",&s[i][j]);
sum[i]+=s[i][j];}
ave[i]=(float)sum[i]/(float)S;
}
printf("Before Sort!\nNO.\tMA\tEN\tPH\tSUM\tAVE\n");
printf("=====================================================\n");
for(i=0;i<n;i++)
{printf("%d\t",num[i]);
for(j=0;j<S;j++)
{printf("%d\t",s[i][j]);}
printf("%d\t%5.2f",sum[i],ave[i]);
printf("\n");}
printf("=====================================================\n");

return 0;}

⑦ 老师要对 n 个学生进行成绩汇总和排序。C语言程序求改错。

scanf("%s,%d",&stu[i].name,&stu[i].score);
这句话出问题了,来输入stu[i].name时,按字符串输自入,所以当输入“a,1”时,"a,1"被整体当做stu[i].name了,因而stu[i].score并未被初始化,所以输出时stu[i].score的值为无效值。
可将scanf("%s,%d",&stu[i].name,&stu[i].score); 改成
scanf("%s %d",&stu[i].name,&stu[i].score);
即将逗号改成空格,因为空格输入空白符,可用作分隔符,而逗号无此效果

⑧ 用数组方式输入 N 个学生的成绩,求总分和平均分进行从高到低的排序

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n;
cout << "输入学生来个数:自";
cin >> n;
int a[10000];
cout << "输入每个学生成绩:";
for (int i = 0; i < n; i++) cin >> a[i];
sort(a, a+n);
double sum = 0;
for (int i = 0; i < n; i++) sum += a[i];
cout << "平均成绩为:" << sum / n << endl;
cout << "成绩从高到低为:" << endl;
for (int i = n-1; i >= 0; i--) cout << a[i] << " ";
cout << endl;
}

⑨ 给若干学生成绩排序

#include <stdio.h>
typedef struct stu
{
int num;
int score;
int order;
}stu;

void main()
{
int n;
int i, j;
stu s[1000];
stu temp;
printf("输入人数n:\n");
scanf("%d",&n);
for (i = 0; i < n; i++)
scanf("%d%d",&s[i].num,&s[i].score);
for (i = 0; i < n-1; i++)
{
for (j = i+1; j < n; j++)
{
if (s[i].score < s[j].score)
{
temp = s[i];
s[i] = s[j];
s[j] = temp;
}
}
}
s[0].order = 1;
for (i = 1; i < n; i ++)
{
if (s[i].score == s[i-1].score )
s[i].order = s[i-1].order ;
else
s[i].order = s[i-1].order + 1;
}
printf("输入序号和成绩\n");
for (i = 0; i < n; i ++)
printf("%d\t%d\t%d\n",s[i].num ,s[i].score ,s[i].order );
}

⑩ 用选择法对N个学生的成绩按从大到小的顺序排序,N个学生的成绩整数用scanf 输入,输入的成绩在[0,100]之

//这里抄sco前要&
if(sco!=s[i])printf("no this score!\n");//这里应该循环袭查找sco!=s[i]
else chang(s,50);//这里的50超过n了
for(i=0;i<50;i++)//这里的循环50超过n了
{
if(s[i]>sco)n++;//这里为什么n++
printf("%d",n);
}
还有,按照题目的要求,排序用快速排序好一些,查找用二分
另外,团IDC网上有许多产品团购,便宜有口碑

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919