下面程序的运行结果是( )。 #include<stdio.h> #define SlZE 12 main() {char s[SIZE];int i; for(i=0;i<SIZE;i++) s[i]=’A’+i+3

admin2013-02-23  41

问题 下面程序的运行结果是(       )。
  #include<stdio.h>
   #define SlZE 12
   main()
   {char s[SIZE];int i;
  for(i=0;i<SIZE;i++) s=’A’+i+32;
   sub(s,5,SIZE-1);
for(i=0;i<SIZE;i++)printf("%c",s);
   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个元素进行逆置,其他元素位置不变。
转载请注明原文地址:https://jikaoti.com/ti/ymn0FFFM
0

最新回复(0)