问题 填空题

下面程序的运行结果是______。 #include<stdio.h> #define SlZE 12 main() {char s[SIZE];int i; for(i=0;i<SIZE;i++) s[i]=’A’+i+32; sub(s,5,SIZE-1); for(i=0;i<SIZE;i++)printf("%c",s[i]); printf("\n");} sub(char *a,int t1,int t2) { char ch; while(t1<t2) { ch=*(a+t1); *(a+t1)=*(a+t2); *(a+t2)=ch; t1++;t2--; } }

答案

参考答案:abcdelkjihgf

解析: 本题先给字符型数组s的12个元素赋值a到1共12个字母,函数sub(char*a,int t1,int t2)的功能是将数组a的从第t1+1个元素到t2+1个元素进行逆置,在主函数中调用sub(s,5,SIZE-1)函数,是将数组s的第6个元素到第12个元素进行逆置,其他元素位置不变。

问答题
单项选择题