c++ 编制函数sortstr,其功能是对多个字符串进行排序。【我是初学者,望强人给个答案,我好作为例题】

要求:欲排序的字符串在主函数中输入,排好序的字符串在主函数中输出。
提示:可用一个二维数组用来接受各个字符串;排序算法可改为由一个函数sortstr实现。字符串的比较应用strcmp函数进行比较,字符串的赋值用strcpy函数实现

输入十个字符串,升序排列,并输出结果:
#include<stdio.h>
#include<string.h>
void sortstr(char(*p)[80],int n);
void main()
{
char str[10][80];
inpstr(str,10);
sortstr(str,10);
outpstr(str,10);
}
void inpstr(char(*p)[80],int n)
{
int i;
for(i=0;i<n;i++)
gets(p[i]);
}

void sortstr(char(*p)[80],int n)
{
int i,j;
char temp[80];
for(i=0;i<n-1,i++)
for(j=i+1,j<n,j++;)
if(strcmp(p[i],p[j])>0)
{
strcpy(temp,p[i]);
strcpy(p[i],p[j]);
strcpy(p[j],temp);
}
}
void outpstr(char(*p)[80],int n)
{
int i;
for(i=0;i<n;i++)
puts(p[i]);
}

sortstr是对所输入的数进行按照ASC2(罗马数字的2不会打)码进行排序。。。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-01
这种题,给个悬赏分就好了,楼主。
给分的话,,呵呵,很快回答你。
相似回答