今天,大学路小编为大家带来了输入成绩自动选择院校排名 学生成绩排名 采用选择法,将学生成绩从高到低进行排...,希望能帮助到广大考生和家长,一起来看看吧!
(资料图片仅供参考)
学生成绩排名 采用选择法,将学生成绩从高到低进行排...
#include
//#define num 10 //int a[10]; void main() { int a[10]; int studentNum; int i; void Ascending(int a[],int studentNum); //声明升序函数 void Descending(int a[],int studentNum);//声明降序函数 void Input(int a[],int studentNum);//插入新成绩函数 studentNum = 10; printf("请输入%d个学生成绩\n",studentNum); for(i = 0;i < studentNum;i++) { scanf("%d",&a[i]); } Descending(a,studentNum); printf("经排序后的数为:\n"); for(i = 0;i < studentNum;i++) { printf("%d\t",a[i]); } Input(a,studentNum); } //升序排列 void Ascending(int a[10],int studentNum) { int i,j; for(i = 0;i < studentNum;i++) { for(j = i + 1;j <= studentNum;j++) { if(a[j] < a[i]) { int t = a[i]; a[i] = a[j]; a[j] = t; } } } } //降序排列 void Descending(int a[10],int studentNum) { int i; Ascending(a,studentNum); for(i = 0;i < (studentNum - 1)/2;i++) { int t = a[i]; a[i] = a[studentNum - 1 - i]; a[studentNum - 1 - i] = t; } } //插入新成绩函数 void Input(int a[10],int studentNum) { int b[11]; int i,newScore; int con; printf("是否要插入一个新成绩1/0:"); scanf("%d",&con); if(con == 1) { printf("请输入新的成绩:"); scanf("%d",&newScore); for(i = 0;i < studentNum;i++) { b[i] = a[i]; } b[studentNum] = newScore; studentNum++; Ascending(b,studentNum); printf("经升序后的数为:\n"); for(i = 0;i < studentNum;i++) { printf("%d\t",b[i]); } Descending(b,studentNum); printf("\n经降序后的数为:\n"); for(i = 0;i < studentNum;i++) { printf("%d\t",b[i]); } Input(b,studentNum); } else { printf("程序结束!"); } }在excel中,怎样能在输入学生成绩后就能显示出每科的...
每科排名方式如下(按图说明)
图表中,D、F、H、J等四列为计算名次的列,其中用到了rank函数,
格式:rank(目标单元格,比较区域,排名方式)
D2=rank(C2,C:C,0)
F2=rank(E2,E:E,0)
H2=rank(G2,G:G,0)
J2=rank(I2,I:I,0)
或者:
D2=rank(C2,C$2:C$11,0)
F2=rank(E2,E$2:E$11,0)
H2=rank(G2,G$2:G$11,0)
J2=rank(I2,I$2:I$11,0)
注意:等号前面为单元格名称
简要说明:rank为排名函数,目标单元格为要排名的单元格,目标区域为用于比较的区域,排名方式分从小到大(1)和从大到小(0)
以上两种表达方式为
第一种:单元格与整列比较
第二种,单元格与指定区域比较(用这种方式时,防止拖动自动填充出现错误,特在此加了绝对
符号$。
希望以上能对你有帮助
(一)学生成绩排名 采用选择法,将学生成绩从高到低进...
#include //#define num 10 //int a[10]; void main() { int a[10]; int studentNum; int i; void Ascending(int a[],int studentNum); //声明升序函数 void Descending(int a[],int studentNum);//声明降序函数 void Input(int a[],int studentNum);//插入新成绩函数 studentNum = 10; printf("请输入%d个学生成绩\n",studentNum); for(i = 0;i < studentNum;i++) { scanf("%d",&a[i]); } Descending(a,studentNum); printf("经排序后的数为:\n"); for(i = 0;i < studentNum;i++) { printf("%d\t",a[i]); } Input(a,studentNum); } //升序排列 void Ascending(int a[10],int studentNum) { int i,j; for(i = 0;i < studentNum;i++) { for(j = i + 1;j <= studentNum;j++) { if(a[j] < a[i]) { int t = a[i]; a[i] = a[j]; a[j] = t; } } } } //降序排列 void Descending(int a[10],int studentNum) { int i; Ascending(a,studentNum); for(i = 0;i < (studentNum - 1)/2;i++) { int t = a[i]; a[i] = a[studentNum - 1 - i]; a[studentNum - 1 - i] = t; } } //插入新成绩函数 void Input(int a[10],int studentNum) { int b[11]; int i,newScore; int con; printf("是否要插入一个新成绩1/0:"); scanf("%d",&con); if(con == 1) { printf("请输入新的成绩:"); scanf("%d",&newScore); for(i = 0;i < studentNum;i++) { b[i] = a[i]; } b[studentNum] = newScore; studentNum++; Ascending(b,studentNum); printf("经升序后的数为:\n"); for(i = 0;i < studentNum;i++) { printf("%d\t",b[i]); } Descending(b,studentNum); printf("\n经降序后的数为:\n"); for(i = 0;i < studentNum;i++) { printf("%d\t",b[i]); } Input(b,studentNum); } else { printf("程序结束!"); } }