请教!一道练习题的容错处理!!
用函数实现字符串连接的功能!我想让两个字符串在超出范围后重新输入,我在主函数中使用了do while 但是测试总不能实现重复输入?以下我写的代码 请问问题出在哪里?求教!!!#include <stdio.h>
#include <string.h>
int s(char a[],char b[])
{
int t1,t2,i,j;
t1=strlen(a);
t2=strlen(b);
if(t1+t2>=20)
{
printf("error!!\n");
return 0;
}
else
{
for(i=t1,j=0;j<t2;j++,i++)
a[i]=b[j];
return 1;
}
}
char str(char a[])
{
int i;
printf(“enter string:\n”);
for(i=0;i<20;i++)
{
scanf("%c",&a[i]);
if (a[i]=='\n') break;
}
a[i]='\0';
}
main()
{
char a[20],b[20];
do
{
str(a);
str(b);
s(a,b);
}
while(s==0);
puts(a);
}