程序填空题:字符传送[2]
将字符串 s1 的所有字符传送到字符串 s2 中,要求每传送三个字符就再存放一个星号。如字符串s1为"abcdefg",则字符串s2为"abc\*def\*g"。
```c++
#include
int main()
{
char s1[80], s2[80], *p = s1;
int cnt = 0, k = 0;
gets(p);
while ( *p != '\0' ){
s2[k] = *p;
k++;
p++;
cnt++;
if ( @@[cnt % 3 == 0](1)){
s2[k] = '*';
@@[k++](1);
}
}
@@[s2[k] = '\0'](1);
puts(s2);
return 0;
}
```
答案:
第1空:cnt % 3 == 0
第2空:k++
第3空:s2[k] = '\0'
```c++
#include
int main()
{
char s1[80], s2[80], *p = s1;
int cnt = 0, k = 0;
gets(p);
while ( *p != '\0' ){
s2[k] = *p;
k++;
p++;
cnt++;
if ( @@[cnt % 3 == 0](1)){
s2[k] = '*';
@@[k++](1);
}
}
@@[s2[k] = '\0'](1);
puts(s2);
return 0;
}
```
答案:
第1空:cnt % 3 == 0
第2空:k++
第3空:s2[k] = '\0'