/*
Copyright(c)2016,烟台大学计算机学院
All rights reserved.
文件名称:tset.cpp
作者:尤文敏
完成日期:2016年12月15日
版本号:v1.0
题目描述 :
学生信息排序
问题及代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct Student
{
char name[20];
char num[10];
char s;
char yuan[20];
};
int main()
{
struct Student stu[5],t;
int i,j;
for(i=0; i<5; i++)
{
scanf("%s %s %c %s",&stu[i].name,&stu[i].num,&stu[i].s,&stu[i].yuan);
}
for(j=0; j<4; j++)
for(i=0; i<4-j; i++)
{
if(strcmp(stu[i].num,stu[i+1].num)>0)
{
t=stu[i+1];
stu[i+1]=stu[i];
stu[i]=t;
}
}
for(i=0; i<5; i++)
{
printf("%s %s %c %s",stu[i].name,stu[i].num,stu[i].s,stu[i].yuan);
printf("\n");
}
return 0;
}
运行结果:
知识点总结:
在学生信息排序中。应对学号进行排序,而排序后的其他内容也要相应的输出。而在排序中,要一一进行大小比较。
学习心得:
挖掘问题本质!