C++按字母顺序排序

#include<iostream>#include<string.h>usingnamespacestd;voidsort(char*str[],intn)//字符串数... #include <iostream>
#include <string.h>
using namespace std;

void sort(char *str[],int n)//字符串数组指针
{
int i,j;
char *t;
for(i=0;i<n;i++)
for(j=n-1-i;j<n;j++)
{
if (str[i][0]>str[j][0])//根据字符串首字母顺序采用冒泡算法排序
{
t=str[i];
str[i]=str[j];
str[j]=t;
}
}
}

void main(void)
{

char *str1[ ]={"Japan","China","America"};
int i;
sort(*str1[],3);//此处报错 syntax error:']'
for(i=0;i<3;i++)
cout<<str1[i]<<endl;

}
按照首字母对几串字符进行排序,总是报错,帮忙看看程序有啥问题
展开
 我来答
折柳成萌
高粉答主

2017-09-22 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:4.4万
采纳率:96%
帮助的人:6309万
展开全部
#include<iostream>
#include<cstdlib>
#include<string>
const int MAX_SIZE=50;
using namespace std;
int compare(const void*a,const void*b)
{
char*a1=(char*)a;
char*b1=(char*)b;
return strcmp(a,b);
}
void sort(char**s,int n)
{
qsort(s,n,sizeof(char*)*MAX_SIZE,compare);
}
int main()
{
int n,i;
cin>>n;

char**s=new char*[n];
for(i=0;i<n;i++)
{
s[i]=new char[MAX_SIZE];
cin>>s[i];

}
sort(s,n);
for(i=0;i<n;i++)
cin<<s[i]<<endl;
.return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式