c语言排序学号函数,c语言 排序

用C语言编程:从键盘输入10个学生的成绩和学号,将其排序输出,并输出中要有相应的学生学号

# includestdio.h

目前创新互联已为上千余家的企业提供了网站建设、域名、网络空间、成都网站托管、企业网站设计、惠水网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

struct student

{

int id;

int score;

}stu[10];

int main(void)

{

int i,m;

struct student j;

for( i=0; i10; i++)

{

printf("请输入学生的学号:");

scanf("%d",stu[i].id);

printf("请输入学生的成绩:");

scanf("%d",stu[i].score);

printf("\n");

}

printf("\n\n");

for( i=0; i10; i++)

{

for( m=i; m10; m++)

{

if(stu[i].scorestu[m+1].score)

{

j = stu[i];

stu[i] = stu[m+1];

stu[m+1] = j;

}

}

}

for( i=0; i10; i++)

{

printf("该学生的学号为:%d\n",stu[i].id);

printf("该学生的成绩为:%d\n",stu[i].score);

printf("\n\n");

}

return 0;

}

C语言~输入5个学生的学号,成绩,按成绩排序(升序),查找90分以上的

代码:

#includelt;stdio.hgt;

struct student

{

int num,score[3],age;

char name[20];

float aver;

}stu[1000];

main()

{

int i,j,n;

struct student temp;

/*注意:变量temp的类型与数组stu的元素类型为相同结构体的时候,才可交换两个结构体数组元素,所以此处需要定义temp的类型*/

printf("请输入学生人数:\n");

scanf("%d",n);

printf("请按顺序输入名字、学号、年龄、分数:\n");

for(i=0;ilt;n;i++)

{

scanf("%s",stult;igt;.name);

scanf("%d",stult;igt;.num);

scanf("%d",stult;igt;.age);

for(j=0;jlt;3;j++)

scanf("%d",stult;igt;.score[j]);

}

for(i=0;ilt;n;i++)

{int sum=0;

for(j=0;jlt;3;j++)

sum+=stult;igt;.score[j];

stult;igt;.aver=sum/3.0;

}

for(i=0;ilt;n-1;i++)/*利用冒泡排序法按平均分高低排序*/

{for(j=0;jlt;n-i-1;j++)

{

if(stu[j].avergt;stu[j+1].aver)

{temp=stu[j];/*此处交换的应当是数组元素,而不是平均分*/

stu[j]=stu[j+1];

stu[j+1]=temp;

}

}

}

printf("学生信息如下(姓名、学号、年龄、成绩、平均分):\n");

for(i=0;ilt;n;i++)

{

printf("%s%d%d",stult;igt;.name,stult;igt;.num,stult;igt;.age);

for(j=0;jlt;3;j++)

printf("%d",stult;igt;.score[j]);

printf("%.2f\n",stult;igt;.aver);

}

}

扩展资料:

头文件#includelt;stdio.hgt;中

stdio.h是stand inputoutput的缩写,意思是标准输入输出头文件。凡是用到标准输入输出函数,就要调用该头文件。

查看stdio.h目录下包含哪些函数:主要有文件访问、二进制输入/输出、格式化和非格式化输入/输出、文件定位、错误处理、文件操作等。

具体打开自己的VS安装目录,找到include文件夹,打开include夹下面的stdio.h文件即可查看

(C:\Program Files(x86)\Microsoft Visual Studio 14.0\VC\vcpackages\IntelliSense\iOS\OSS\musl-1.1.10\include)

常用标准输入输出函数:

scanf()从屏幕格式输入

printf()格式输出到屏幕

getchar()从屏幕得到一个字符

putchar()字符输出到屏幕

gets()从屏幕得到一个字符串

puts()字符串输出到屏幕

fscanf()从磁盘格式输入

fprintf()格式输出到磁盘

fgetc()从磁盘得到一个字符

fputc()字符输出到磁盘

fgets()从磁盘得到一个字符串

fputs()字符串输出到磁盘

#号是预处理语句,表明在编译之前预先进行处理。

.h是header file的缩写,表面这是一个头文件。

include是文件包含命令,后面跟着引号""或者尖括号lt;gt;,意思是将引号或尖括号内指定的文件包含到本程序中,成为本程序的一部分,而包含的文件通常是由系统提供的。

c语言怎么用自定义函数排序

for(i=0;iN;i++)

//开始外层for循环,从i=0,每次加1,直到i=4

{

//外层循环体开始

for(j=0;jN-1-i;j++)

//开始外层for循环,从j=0,每次加1直到i等于外层循环的N-j-1

{

//内层循环体开始

if(stu[j].sumstu[j+1].sum)

//条件判断

{

//如果整形数组前面的数比其后的小,执行以下语句

temp=stu[j+1.sum];

//将比较大的数赋值给temp

stu[j+1].sum=stu[j].sum;

//将比较小的数赋值给数组中后面的变量

stu[j].sum=temp;

//将比较大的数赋值给数组中前面的变量

}for(i=0;iN;i++)printf("%d%d",stu[i].学号,stu[i].姓名);}

c语言学生成绩管理系统按照学号排序怎么排

#include stdio.h

#include stdlib.h

#include string.h

typedef struct student

{

char name[12];

char student_id[12];

unsigned short Chinese;

unsigned short English;

unsigned short Math;

unsigned short average;

}student_t;

unsigned short num;

unsigned short pass_rate;

void enter_message(student_t *p);

void sort(student_t *p);

void print_message(student_t *p);

void swit_student(student_t *p,student_t *q);

int main(int argc, char const *argv[])

{

printf("Enter the number of students:");

scanf("%hu",num);

student_t *p = NULL;

p = (student_t *)malloc(num * sizeof(student_t));

printf("Enter students message,example: name student_id Chinese English Math\n");

enter_message(p);

sort(p);

print_message(p);

free(p);

return 0;

}

unsigned short num;

unsigned short pass_rate;

void enter_message(student_t *p);

void sort(student_t *p);

void print_message(student_t *p);

void swit_student(student_t *p,student_t *q);

int main(int argc, char const *argv[])

{

printf("Enter the number of students:");

scanf("%hu",num);

student_t *p = NULL;

p = (student_t *)malloc(num * sizeof(student_t));

printf("Enter students message,example: name student_id Chinese English Math\n");

enter_message(p);

sort(p);

print_message(p);

free(p);

return 0;

}

void swit_student(student_t *p,student_t *q)

{

student_t temp;

strcpy(temp.name,p-name);

strcpy(p-name,q-name);

strcpy(q-name,temp.name);

strcpy(temp.student_id,p-student_id);

strcpy(p-student_id,q-student_id);

strcpy(q-student_id,temp.student_id);

temp.Chinese = p-Chinese;

p-Chinese = q-Chinese;

q-Chinese = temp.Chinese;

temp.English = p-English;

p-English = q-English;

q-English = temp.English;

temp.Math = p-Math;

p-Math = q-Math;

q-Math = temp.Math;

temp.average = p-average;

p-average = q-average;

q-average = temp.average;

}

C语言输入10个学生的姓名和学号 按照学号从小到大顺序排序 姓名随之调整

#includestdio.h

#includestring.h

void sort(int a[], char b[][11])//a为数组地址

{

int i, j,v;

char s[11];

for(i = 0; i  9; i ++)

for(j = i+1; j10; j ++)

{

if(a[i]  a[j])

{

v = a[i];

a[i] = a[j];

a[j] = v;

strcpy(s,b[i]);

strcpy(b[i],b[j]);

strcpy(b[j],s);

}

}

}

main()

{

int a[10],i;

char b[10][11];

for(i=0;i=9;i++)

{ scanf("%d",a[i]);

scanf("%s",b[i]);

}

sort(a,b);

for(i=0;i=9;i++)

printf("%d %s\n",a[i],b[i]);

}

}


分享名称:c语言排序学号函数,c语言 排序
文章来源:http://myzitong.com/article/hoojje.html