以下程序运行后的输出结果是【 】。 #include<stringh> void fun(char*s,int p,int k) { int i; for(i=p;i<k-1;i++)s[i]=s[i+2]; }

admin2010-05-22  18

问题 以下程序运行后的输出结果是【  】。
   #include<stringh>
   void fun(char*s,int p,int k)
   {   int i;
       for(i=p;i<k-1;i++)s=s[i+2];
   }
   main()
   {   char s[]="abcdefg";
       fun(s,3,strlen(s));puts(s);
   }

选项

答案abcfg

解析 程序中,strten(s)=7,所以调用函数fun()时,形参p=3,k=7,for循环中,当i =3时,s[3]=s[5]=f,当i=4时,s[4]=s[6]=g,当i=5时,s[5]=s[7]=’\0’,为字符串结束标记,当i=6时退出循环,所以a=“abcfg”。
转载请注明原文地址:https://kaotiyun.com/show/A8Wp777K
0

最新回复(0)