當前位置:首頁 » 考試成績 » 給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