#include<stdio.h>
#include<string.h>
#include<stdlib.h>#define N 50 //输入人数限定为50
static int count=0; //count 来统计输入的人数
static int n=0;static char *p[N];
void accept();
void output();
void sort();
void main()
{ int stunumber;
char choice;
printf("请输入学生人数:"); scanf("%d",&stunumber);
fflush(stdin);
do{
accept();
printf("是否要继续输入:y or n");
fflush(stdin);
choice=getchar();
}
while(choice=='y'||choice=='Y');
printf("排序前的学生编号:\n");
output();
sort();
printf("排序后的学生编号:");
output();
}
void accept()//输入函数
{
printf("请输入第%d个学生编号:(长度为6)\n",(n++)+1);
p[count]=(char*)malloc(7*sizeof(char));
for(int i=0;i<7;i++)
{
scanf("%c",p[count]+i);
}
*(p[count]+i)='\0';
count++; }
void output()//输出函数
{ int i=0;
for(;i<count;i++)
{
puts(p[i]); }
}
void sort()//排序函数
{ int i,j;
char* temp;
for(i=0;i<count;i++)
{
for(j=0;j<count-i-1;j++)
{
if(strcmp(p[j],p[j+1])<0)
{
temp=p[j];
p[j]=p[j+1];
p[j+1]=temp;
}
}
}
}
#include<string.h>
#include<stdlib.h>#define N 50 //输入人数限定为50
static int count=0; //count 来统计输入的人数
static int n=0;static char *p[N];
void accept();
void output();
void sort();
void main()
{ int stunumber;
char choice;
printf("请输入学生人数:"); scanf("%d",&stunumber);
fflush(stdin);
do{
accept();
printf("是否要继续输入:y or n");
fflush(stdin);
choice=getchar();
}
while(choice=='y'||choice=='Y');
printf("排序前的学生编号:\n");
output();
sort();
printf("排序后的学生编号:");
output();
}
void accept()//输入函数
{
printf("请输入第%d个学生编号:(长度为6)\n",(n++)+1);
p[count]=(char*)malloc(7*sizeof(char));
for(int i=0;i<7;i++)
{
scanf("%c",p[count]+i);
}
*(p[count]+i)='\0';
count++; }
void output()//输出函数
{ int i=0;
for(;i<count;i++)
{
puts(p[i]); }
}
void sort()//排序函数
{ int i,j;
char* temp;
for(i=0;i<count;i++)
{
for(j=0;j<count-i-1;j++)
{
if(strcmp(p[j],p[j+1])<0)
{
temp=p[j];
p[j]=p[j+1];
p[j+1]=temp;
}
}
}
}
{
int i,j;
char temp;
for(i=0;i <count;i++)
{
for(j=0;j <count-i-1;j++)
{
if(strcmp(p[j],p[j+1]) <0)
{
temp=p[j];
p[j]=p[j+1];
p[j+1]=temp;
}
}