问题 问答题

使用VC++6.0打开考生文件夹下的源程序文件2.cpp。完成函数fun(char *s1,char *s2)的空出部分。函数fun(char *s1,char *s2)的功能是将在字符串s1中下标为偶数的字符,紧随其后重复出现一次,放在一个新串s2中,s2中字符按原字符串中字符的顺序排列。(注意0为偶数)
例如:当s1中的字符串为“abcdef”时,s2中的字符串应为“aaccee”。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<iostream.h>
void fun(char *s1,char *s2)


void main()

char sl[100],s2[l00];
cout<<"Please enter string string:"<<end1;
cin.getline(s1,100);
fun(s1,s2);
cout<<"The result is:"<<s2<<end1;
return;

答案

参考答案:int i;
for(i=0;s1[i]!=0;i++)//循环判断每一个字符
{
if(i%2==0) //判断字符串中下标为偶数位置
{
s2[i]=s1[i];
s2[i+1]=s1[i];
s2[i+2]=’\0’; //新串添加尾符
}

解析: 判断一个字符串中的某一字符下标i是否为偶数,可用“i%2==0”来判断。对串s1中各个字符串逐个进行考查,满足条件的字符就顺序放在新串s2中,否则就不存放。所有字符处理完成后,记得在新串s2的末尾加上结束符“’\0’”。

选择题
判断题