1.从键盘输入两个字符串a,b,判断a,b是否相同,若不相同联接ab生成新的字符串c。要

求:1)用字符数组存放字符串2)对ab是否相同的判定和ab的联接都用子函数实现。... 求:1)用字符数组存放字符串 2)对ab是否相同的判定和ab的联接都用子函数实现。 展开
 我来答
L_o_o_n_i_e
2010-06-04 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5084万
展开全部
#include <stdio.h>
#include <stdlib.h>

// 测字符串长度 类似strlen
int length(char *s)
{int n=0;
while (s[n] != 0) n++;
return n;
}

// 比较 类似strcmp
int cmp(char *a, char *b)
{
int i,la,lb,L,r=0;
la = length(a); lb = length(b);
L=la; if (lb<L) L=lb;
for (i=0;i<L;i++) if (a[i] != b[i]) {if (a[i]>b[i]) r=i;else r= -i; break;}
if (r==0) if (la > lb) {r=1;} else if (la < lb) r = -1;
return r;
}

// 联接 类似strcat
void connect(char *a, char *b,char *c)
{
int i,la,lb;
la = length(a); lb = length(b);
for (i=0;i<la;i++) c[i]=a[i];
for (i=0;i<lb;i++) c[i+la]=b[i];
c[la+lb]=0;
}

int main(void)
{
char a[30],b[30],c[60];
int i,r;
printf("eneter 2 strings\n");
scanf("%s",a);
scanf("%s",b);
r = cmp(a, b);
if (r != 0) {
connect(a,b,c);
printf("%s\n",c);
} else {
printf("There are the same: %s\n",a);
}
return 1;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式