写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格.如输入1990变成1 9 9 0

写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格.如输入1990变成1 9 9 0
#include
#include
main()
{
void f(char a[ ],char b[ ]);
char c1[80],c2[80];
gets(c1);
f(c1,c2);
puts(c2);
}
void f(char a[ ],char b[ ])
{
int i,j;
for(i=2,j=0;a[i-2]!='';i++);
if(i==2) b[i-2]=a[j];
else if(i%2==0) {j++; b[i-2]=a[j];}
else b[i-2]=' ';
b[i-2]='';
}
帮忙看看哪错了
小内七 1年前 已收到1个回答 举报

szpcclub 幼苗

共回答了14个问题采纳率:78.6% 举报

#include
#include
void f(char *a,char *b)
{
int i,j;
for(i=0,j=0;a[i]!='';i++)
{
b[++j]=a[i];
b[++j]=' ';
}
b[j]='';
}
main()
{
char c1[80],c2[80];
gets(c1);
f(c1,c2);
puts(c2);
}
你的错误是在这里 for(i=2,j=0;a[i-2]!='';i++); 后面多了一个分号,
这里的算法我没有仔细斟酌,不知道对错,给你改一下,你看看我的,呵呵

1年前

2
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.035 s. - webmaster@yulucn.com