欢迎来到牛牛题库网 牛牛题库官网
logo

未知题型

下列给定程序中,函数fun()的功能是:将字符串p中所有字符复制到字符串b中,要求每复制3个字符之后插入一个空格。例如,在调用fun()函数之前给字符串a输入ABCDEFGHIJK,调用函数之后,字符串b中的内容则为ABC DEF GHI JK。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <stdio. h>
void fun (char *p, char *b)
{ int i, k=0;
while (*p)
/*************found***************/
{ i=l;
/*************found***************/
while (i<3|| *P)
{
b[k]=*p;
k++; p++; i++;
}
if (*p)
/*************found***************/
{ b[k]= ' ';}
}
b[k]= '/0';
}
main ( )
{ char a[80],b[80];
printf ('Enter a string: '); gets (a);
printf ('The original string: ');
puts (a);
fun (a,b);
printf('/nThe string after insert
space: '); puts(b); printf('/n/n ');
}

【参考答案】

(1)错误:i=1; 正确:i=0;(2)错误:while(i<3||*p) 正确:while(i<3&&*p)(3)错......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)

点击查看答案
微信小程序免费搜题
微信扫一扫,加关注免费搜题

微信扫一扫,加关注免费搜题