想问一下是不是循环里的那段代码无法读入字符串
#include
#include
int main()
{
char a[17],b[17],c[17];
scanf("%s %s",a,b);
int alen=strlen(a);
int blen=strlen(b);
int i=0,n;
if(alen>=blen)
n=alen;
else
n=blen;
while(iif(a[i]>=b[i])
c[i]=b[i];
else
c[i]=a[i];
i++;
}
printf("%s\n",c[17]);
return 0;
}
无法输出内容
循环能够正常读入字符串且能正常输出
printf写错了,改为c即可。另外在printf之前,要加上c[i] = '\0';才行
第24行 c[17] 的意思的c的第18位元素,如果想输出c的话,将c[17] 改成 c
格式化%s,是要一个开始地址,一直到\0字符为结束,才是一个字符串,而你c[17]是单个字符,传入数组的首地址c,应该就可以了