.h文件
#ifndef __NN__
#define __NN__
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 5
typedef struct
{
char name[10];
int age;
char sex[2];
}student,*Pstudent;
//输入函数
void input_data(Pstudent,int);
//排序函数
void stro_data(Pstudent,int);
//输出函数
void output_data(Pstudent,int);
#endif
.c文件
#include "001.h"
void input_data(Pstudent p,int n)
{
for(int i=0;i<n;i++)
{
printf("请输入第%d个学生名字:",i+1);
scanf("%s",p->name);
getchar();
printf("请输入第%d个学生年龄:",i+1);
scanf("%d",&p->age);
getchar();
printf("请输入第%d个学生性别:",i+1);
scanf("%s",p->sex);
getchar();
p++;
//printf("\t\t%s\t\t%d\t\t%s\n",p[i].name,p[i].age,p[i].sex);
}
}
void stro_data(Pstudent p,int n)
{
for(int i=0;i<n-1;i++)
{
for(int m=i+1;m<n;m++)
{
if(p[i].age > p[m].age)
{
student t;
strcpy(t.name,p[i].name),strcpy(p[i].name,p[m].name),strcpy(p[m].name,t.name);
t.age=p[i].age,p[i].age=p[m].age,p[m].age=t.age;
strcpy(t.sex,p[i].sex),strcpy(p[i].sex,p[m].sex),strcpy(p[m].sex,t.sex);
//t.sex=p[i].sex,p[i].sex=p[m].sex,p[m].sex=t.sex;
//printf("\t\t%s\t\t%d\t\t%s\n",p[i].name,p[i].age,p[i].sex);
}
}
}
}
void output_data(Pstudent p,int n)
{
for(int i=0;i<n;i++)
printf("\t\t%s\t\t%d\t\t%s\n",p[i].name,p[i].age,p[i].sex);
}
main.c文件
#include "001.h"
int main()
{
Pstudent Pdata=(student*)malloc(sizeof(student)*N);
//
input_data(Pdata,N);
stro_data(Pdata,N);
output_data(Pdata,N);
free(Pdata);
Pdata=NULL;
return 0;
}