问答题 下列给定程序中,函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码值为偶数的字符依次放入t所指数组中。例如,字符串中的数据为“AABBCCDDEEFF”,则输出应当是“ABBCDDEFF”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序:#include < conio.h >#include < stdio.h >#include < string.h >#define N 8 0void fun(char*s,char t[]){ int i,j=0; for(i=0;i < (int)str1en(s);i++1/*********found*********/ if(i%2&&s[i]%2==0) t[j++]=s[i];/*********found*********/ t[i]='/0';}main(){ char s[N],t[N]; printf f"/nplease entherstring s:"); gets(s); fun(s,t); printf("/nThe result is:%s1n",t);}
【正确答案】正确答案:(1)if(i%2 || s[i]%2 ==0)或if(1%2 1=0||s[i]%2==0) (2)t[j]='/0';或t[j]=0;
【答案解析】解析:(1)根据题意,将字符串s中位于奇数位置的字符或ASCII码值为偶数的字符,依次放入字符串t中,所以if条件中要使用“或”运算。 (2)变量j控制字符串t的下标,所以是t[j]。