请问这道C语言题怎么做?
#include"stdio.h"intmain(){inti=0;charx[]="China";chary[]="Chinese";while(x[i]!='\0'&...
#include"stdio.h"
int main()
{
int i=0;
char x[]="China";
char y[]="Chinese";
while(x[i]!='\0'&&y[i]!='\0')
if(x[i]==y[i])
printf("%c",x[i++]);
else
i++;
printf("\n");
return 0;
} 展开
int main()
{
int i=0;
char x[]="China";
char y[]="Chinese";
while(x[i]!='\0'&&y[i]!='\0')
if(x[i]==y[i])
printf("%c",x[i++]);
else
i++;
printf("\n");
return 0;
} 展开
3个回答
展开全部
这道题的意思是 如果这两个字符串没有结束且相同位置的字符相同的话就输出,
所以结果是Chin
x[i]!='\0'&&y[i]!='\0' 的含义是 当前两个字符串中同一位置的字符不为结束符'\0 ,也就是只要两个字符串都没有结束时进行循环
if(x[i]==y[i])
printf("%c",x[i++]);
else
i++;
这个条件分支的意思是如果相同位置的字符相同,就打印此字符,且位置增进1,以便于下次比较
如果相同位置的字符不相等,那么 增进1,继续比较下一个字符
所以结果是Chin
x[i]!='\0'&&y[i]!='\0' 的含义是 当前两个字符串中同一位置的字符不为结束符'\0 ,也就是只要两个字符串都没有结束时进行循环
if(x[i]==y[i])
printf("%c",x[i++]);
else
i++;
这个条件分支的意思是如果相同位置的字符相同,就打印此字符,且位置增进1,以便于下次比较
如果相同位置的字符不相等,那么 增进1,继续比较下一个字符
展开全部
对比两个字符串从第一个开始,相同位置是否相同,相同的就输出,不相同就逃过,
这个输出Chin
如果两个字符串,后面还有相同的也会输出,
比如Chinassssss跟Chinese对出,就会跳过第5位,输出第6位相同的s
结果Chins
这个输出Chin
如果两个字符串,后面还有相同的也会输出,
比如Chinassssss跟Chinese对出,就会跳过第5位,输出第6位相同的s
结果Chins
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序打印相同字母。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询