#include<stdio.h>
#include<string.h>
struct student
{
char name[20];
}stu[5]={
{"wangwei"},
{"zhangli"},
{"hujuanjuan"},
{"leiren"},
{"lijian"}
};
void main()
{
int i,j;
struct student *p1;
char *temp[5],**p,*temp1;//二级指针
p1=stu;
for(i=0;i<5;i++)
{
temp[i]=(p1+i)->name;
}
p=temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
{
if(strcmp(*(p+j),*(p+j+1))>0)
{
temp1=*(p+j);
*(p+j)=*(p+j+1);
*(p+j+1)=temp1;
}
}
for(i=0;i<5;i++)
printf("%s\t",*(p+i));
}
本文通过C语言实现了一个简单的学生姓名排序程序。该程序定义了一个包含姓名字段的结构体数组,并使用指针和字符串比较函数实现了对学生姓名的冒泡排序。排序后的结果按顺序输出。
1628

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



