C语言 用指针方法 输入3个字符串 按由小到大顺序输出。 我的sort函数后面不会写了,求助阿

3voidsort(char*a,char*b,char*c)4{5inti=0,j=0,k=0;6intmax,min;7for(;*a!=0;a++)8i++;9fo... 3 void sort (char *a,char *b,char *c)
4 {
5 int i=0,j=0,k=0;
6 int max,min;
7 for(;*a!= 0;a++)
8 i++;
9 for(;*b!= 0;b++)
10 j++;
11 for(;*c!= 0;c++)
12 k++;
13
14 }
15
16 int main (int argc,char *argv[])
17 {
18 char a[100];
19 char b[100];
20 char c[100];
21
22 scanf("%s",a);
23 scanf("%s",b);
24 scanf("%s",c);
25
26 sort(a,b,c);
27
28 printf("%s ",a);
29 printf("%s ",b);
30 printf("%s ",c);
31
32 putchar('\n');
33
34 return 0;
35 }
展开
 我来答
man1473
2012-03-23 · TA获得超过223个赞
知道答主
回答量:155
采纳率:0%
帮助的人:110万
展开全部
看你这个函数写的应该是比字符串长度.而不是大小.字符串大小的比较可分为,字符串所有单个字符的值加起来比大小,还有就是从第一个字母开始算,大的优先大.不知道你要比较哪种..其实都不难,你看看书,查查资料就很容易写了.最好是先用C语言提供的函数来写,现在就来用指针的话,你可能会更混乱.
306712241
2012-03-22 · TA获得超过2512个赞
知道小有建树答主
回答量:890
采纳率:100%
帮助的人:260万
展开全部
字符串比较有专门的字符串处理函数 strcmp()
# include<string.h>
void sort (char *a,char *b,char *c)
{
char *max,*temp ;
max=a;
if(strcmp(a,b)>0)
{
max=a;
}
else
{
temp=a; a=b;b=temp;
max=a;
}
if (strcmp(a,c)>0)
{
if (strcmp(b,c)<0)
temp=c; c=b;b=temp;
}
else
{
temp=a; a=c;c=temp;
}
printf("%s ",a);
printf("%s ",b);
printf("%s ",c);
}
追问
我写的那个是不是没法向后写了阿?
追答
不明白你的意思啊,不过  也可以用for循环一位一位的比较,字符串处理函数strcmp() 就是这样实现的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7c532e2
推荐于2017-09-25 · 超过21用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:44.5万
展开全部
如果不用strcmp函数而一位一位地比较,将会非常麻烦。首先要在main函数求出每个字符串的长度,再把这些长度值作为实参传给形参,这样就有六个参数了!还要在sort函数定义一个中间变量,使用冒泡排序法又要定义两个变量,这样总共就有9个变量,太多了,看得头晕到时很容易出错。

下面程序能够实现以下功能:
1.能输入任意个任意长度的字符串
2.将这些字符串按升序排列并输出
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 3 //请在此修改你想要输入的字符串的个数
int main()
{
int i;
char *p[N];
for(i=0;i<N;i++)
{
p[i]=(char *)malloc(sizeof(char));
scanf("%s",p[i]);
}
printf("********\n");
int j,k;
char *temp;
for(i=0;i<N;i++)
{for(j=0;j<N-1;j++)
{if(strcmp(p[j],p[j+1])>0)
{temp=p[j];p[j]=p[j+1];p[j+1]=temp;}
}
}
for(i=0;i<N;i++)
printf("%s\n",p[i]);
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
__MomO___o_
2012-03-23
知道答主
回答量:42
采纳率:0%
帮助的人:12.4万
展开全部
你这个函数什么功能都实现不了。
换别的吧strcmp
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式