#include <stdio.h>
#include<string.h>
#define N 5
void sort(char **p,int *q,int *r,int b[N],int c[N])
{
int i,j,t,m,v;
for(i=0;i<N;i++)
{ for(j=i+1;j<N;j++)
if(*(r+i)<*(r+j))
{
t=**(p+i),**(p+i)=**(p+j),**(p+j)=t;
m=*(b+i),*(b+i)=*(b+j),*(b+j)=m;
v=*(r+i),*(r+i)=*(r+j),*(r+j)=v;
}
}
for(j=0;j<N;j++)
{
printf("%s %d %d \n",*(p+j),b[j],c[j]);
}}
void main()
{
int *q,*r,i,j,t,m,v;
char **p,*a[N],str[N][6],g[6];
int b[N],c[N];
for(i=0;i<N;i++)
{
printf("请输入第%d个人姓名、学号、成绩:",i+1);
scanf("%s%d%d",str[i],&b[i],&c[i]);
a[i]=str[i];
}
p=a;
q=b;
r=c;
sort(p,q,r,b,c);
printf("输入要查找学生的姓名:");
scanf("%s",&g);
for(i=0;i<N;i++)
{ if(strcmp(str[i],g)==0)
printf("姓名:%s 学号:%d 成绩:%d\n",*(p+i),*(q+i),*(r+i));
}
}
带函数的输入学生信息按成绩排序并查找
最新推荐文章于 2022-12-05 16:17:39 发布
该程序实现了一个C语言功能,用于输入并排序一组学生的信息(姓名、学号、成绩),然后按姓名查找并打印指定学生的信息。程序首先读取N个学生的信息,然后使用冒泡排序对学号进行升序排列,并保持姓名和成绩对应。最后,用户可以输入一个姓名来查找对应的学生记录。

8401

被折叠的 条评论
为什么被折叠?



