写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格?

2025-03-13 03:24:13
推荐回答(2个)
回答1:

这段代码其实是有很多bug,不过在要求比较简单的情况下。也没有大问题。
这个代码是假设已经给str[]分配了足够的空间。那么在初始化时,其实整个数组已经用 \0填充满了。只要你的字符串是变长,而不是变短。那么后端自然就是 \0

回答2:

将b[100]先初始化,可以解决问题
#include
#include
int main()
{
void num_space(char a[],char b[]);
char a[100],b[100]="";
printf("请输入任意四位来数:");
gets(a);
num_space(a,b);
printf("%s\n",b);
return 0;
}
void num_space(char a[100],char b[100])
{
int i,j=0;
for(i=0;a[i]!='\0';i++)
{
b[j++]=a[i];
b[j++]=' ';
}
}