为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不对

#include<stdio.h>
char *fun (char *s, char *t)
{
    int m=0,n=0;
    char*p=s,*q=t;
    while(*p)
    {
        m++;
        p++;
    }
    while(*q)
    {
        n++;
        q++;
    }
    if(m>n)
    p=s;
    else
    p=t;
}
int main()
{
    char a[20],b[20];
    a="beijing",b="shanghai";
    printf("%s\n",fun(a,b));
   
}

正在回答

2 回答

你是学过c++吗?

c语言中的是字符数组,而不是字符串,所以你给数组赋值的时候错了;

具体这样改:

https://img1.sycdn.imooc.com//5b68e147000161ca02090112.jpg

https://img1.sycdn.imooc.com//5b68e1470001d40702990062.jpg

如果对你有帮助的话就采纳吧


1 回复 有任何疑惑可以回复我~
#1

慕慕3371412 提问者

谢谢谢谢!
2018-08-09 回复 有任何疑惑可以回复我~
#2

修裾欲溯空 回复 慕慕3371412 提问者

不客气
2018-08-09 回复 有任何疑惑可以回复我~
#3

慕慕3371412 提问者 回复 修裾欲溯空

老师能不能帮我看看下一个题,还是不对,代码我在最新条里问题贴着
2018-08-09 回复 有任何疑惑可以回复我~
#4

修裾欲溯空

老师不敢当,我还很年轻
2018-08-09 回复 有任何疑惑可以回复我~
查看1条回复

#include<stdio.h>

char* fun(char *s, char *t)

{

int m = 0, n = 0;

char*p = s, *q = t;

while (*p)

{

m++;

p++;

}

while (*q)

{

n++;

q++;

}

if (m>n)

p = s;

else

p = t;

return p;

}

int main()

{

char a[20] = "beijing" ;

char b[20] = "shanghai";

printf("%s\n", fun(a, b));

system("pause");

return 0;

}


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926253    人
  • 解答问题       20798    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

为什么不对

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信