/*作业名:指针->输出maxname
谭胜 16计科3班
学号后五位:02864
2016年12月1日
*/
#include <stdio.h>
#include <string.h>
#define num 7
struct s{
int id; char name[32]; float score;
}p[num],*a;
int main(){
void outputMaxName2(struct s *a,int);
printf("请输入学生的学号、姓名和成绩\n");
for(a=p;a<p+num;a++)
scanf("%d%s%f",&a->id,a->name,&a->score);
a=p;
outputMaxName2(a,num);
return 0;
}
void outputMaxName2(struct s *a,int n){
int i,j;
struct s t;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp((a+i)->name,(a+j)->name)<0){
t=*(a+i);*(a+i)=*(a+j);*(a+j)=t;
}
printf("maxname:\n%d\t%s\t%f\n",(*a).id,(*a).name,(*a).score);
for(i=1;i<n;i++)
if(strcmp(a->name,(a+i)->name)==0)
printf("%d\t%s\t%f\n",(a+i)->id,(a+i)->name,(a+i)->score);
return;
}
/*
请输入学生的学号、姓名和成绩
1001 zhang 75
1010 zhang 88
1014 zhuo 99
1015 zhuo 90
1011 wu 90
1012 wu 99
1013 liu 90
maxname:
1014 zhuo 99.000000
1015 zhuo 90.000000
*/
/*
请输入学生的学号、姓名和成绩
7 李白 73
8 韩信 88
9 李白 88
10 明世隐 59
11 小乔 84
12 小乔 99
13 阿珂 100
maxname:
11 小乔 84.000000
12 小乔 99.000000
*/
indicator output MAXname.zip_指针
版权申诉
140 浏览量
2022-09-21
00:05:48
上传
评论
收藏 1KB ZIP 举报
御道御小黑
- 粉丝: 61
- 资源: 1万+