问题 单项选择题

有下列程序:#include <stdio.h>#include "string.h"void tim(char *s[],int n){ char *t;int i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]=s[j];s[j]=t;}}main(){ char *ss[]= {"bcc","bbcc","xy","aaaacc","aabcc"}; fun(ss,5);printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是( )。

A.xy,aaaacc

B.aaaacc,xy

C.bcc,aabcc

D.aabcc,bcc

答案

参考答案:A

解析:从main函数入手,定义了指向字符串的指针数组,并赋予了初始值,调用fun()函数,函数的功能是:比较数组中各个元素的长度,按元素长度从小到大排列数组元素,所以执行fun(ss,5)函数后,*ss[ ]={"xy","bcc","bbcc","aabcc","aaaacc"},所以调用printf函数输出ss[0],ss[4]的值分别为xy,aaaacc。

改错题

单句改错。

( )1. He have  some apples.

            A     B     C       D                                                                                                              _____

( )2. I  have  some  chickens   for  lunch.

           A    B    C           D                                                                                                             _____

( )3. My brother likes meats    very   much

                      A       B     C               D                                                                                          _____

( )4.  I want  to buy   some   tomatos   for   supper.

                     A       B      C           D                                                                                              _____

( )5. There  are  some   salad   on  the  table

                   A          B        C           D                                                                                           _____

单项选择题