分类：电脑/网络-程序设计-C/C++
问题：C的问题大家帮忙看看这个程序啊错在哪啊//5．要求将字符数组s1 
大家帮忙看看这个啊 错在哪啊   //5． 要求将字符数组s1中的数据全部拷贝到字符数组s2中，但要求s2中//的每两个字符间都插入一个空格。如s1中字符串是"china\0"，则字符数组s2为"c h i n a\0".#include<stdio.h>main(){char s1[20],s2[40];int i,j;gets(s1);for(i=0;i<20;i++ ){if(j=i+i);{s2[j]=s1[i];}if(j=i+i+1);{s2[j]大家帮忙看看这个啊 错在哪啊   //5． 要求将字符数组s1中的数据全部拷贝到字符数组s2中，但要求s2中//的每两个字符间都插入一个空格。如s1中字符串是"china\0"，则字符数组s2为"c h i n a\0".#include<stdio.h>main(){char s1[20],s2[40];int i,j;gets(s1);for(i=0;i<20;i++ ){if(j=i+i);{s2[j]=s1[i];}if(j=i+i+1);{s2[j]=' ';}}for(j=0;j<40;j++)printf("%d",s2[j]);}谢谢  
回答：在第一个for循环中j的值在被使用之前没被设定，j的值是一个的未知数，且不会随for循环变化。
在printf("%d",s2[j]);中%d是输出整数的
#include<stdio.h>
main()
{
char s1[20],s2[41];
  int i;  
  gets(s1);
  for(i=0;i<20;i++ )
  {
    s2[i*2]=s1[i];
    s2[i*2+1]=' ';
  }
  
  printf("%s",s2);  
}