一.选择题(共15题,每题2分,共30分)1.定义结构体的关键字是().设整型变量a为5,使b不为2的表达式是()(--a)>3?2:13.下面哪一项是不正确的字符串赋值或赋初值的方法()*str;str=“china”;[7]={‘c’,‘h’,‘i’,‘n’,‘a’};[]=“china”,str2[]=“123”;[10];str1=“china”;4.以下对二维数组a进行正确初始化的是()[2][3]={{1,2},{3,4},{5,6}};[][3]={1,2,3,4,5,6};[2][]={1,2,3,4,5,6};[2][]={{1,2},{3,4}};5.选出下列标识符中不是合法的标识符的是().以下说法中正确的是()语言程序总是从第一个的函数开始执行B.在C语言程序中,要调用的函数必须在main()函数中定义语言程序总是从main()函数开始执行语言程序中的main()函数必须放在程序的开始部分7.若已定义:inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为().若有说明:inti,j=7,*p=&i;,则与i=j;等价的语句是()*p;B.*p=*&j;;**p;9.若变量c为char类型,能正确判断出c为小写字母的表达式是()A.‘a’<=c<=‘z’B.(c>=‘a’)||(c<=‘z’)C.(‘a’<=c)and(‘z’>=c)D.(c>=‘a’)&&(c<=‘z’)10.以下程序的输出结果是()main(){inta[]={1,2,3,4,5,6,7,8,9},*p;p=a;*(p+3)+=2;printf(“%d,%d\n”,*p,*(p+3));}.以下程序的输出结果是()main(){inta=5;floatx=;a*=x*(‘E’-‘A’);printf(“%f\n”,(float)a);}.以下程序的输出结果是()#definef(x)x*xmain(){inta=6,b=2,c;c=f(a)/f(b);printf(“%d\n”,c);}.定义如下变量和数组:inti;intx[3][3]={1,2,3,4,5,6,7,8,9};则语句for(i=0;i<3;i++)printf("%d",x[i][2-i]);的输出结果是().下列程序段的输出结果是()voidmain(){intk;for(k=1;k<5;k++){if(k%2!=0)printf(“#”);elseprintf(“*”);}}A.#*#*B.*#*#C.##D.**15.下列程序执行后输出的结果是()intd=1;fun(intp){intd=5;d+=p++;printf("%d,",d);}main(){inta=3;fun(a);d+=a++;printf("%d\n",d);}二.填空题(共7题,每空2分,共30分)1.数组inta[3][5];共定义了_______________个元素。2.有floatf=;则printf(“%”,f);输出的结果是_______________。3.下面程序的功能是:输出100以内(不包含100)能被3整除且个位数为6的所有整数,请填空。main(){inti;for(i=1;_______________;i++)if(_______________)printf("%d",i);}4.设有“intx=2,y”说明,则逗号表达式“y=x+5,x+y”的值是_______________5.以下是使用指针,进行字符串复制的程序,请填空。main(){chara[]=“TsinghuaUniversity”,b[30],*p1,*p2;p1=a;p2=b;for(;*p1!=‘_______________’;p1++,p2++)_______________=_______________;*p2=‘_______________’;printf(“stringais:%s\n”,a);printf(“stringbis:%s\n”,b);}6.下面程序用冒泡法对数组a进行降序排序,请填空。main(){inta[5]={4,7,2,5,1};inti,j,m;for(i=0;i<4;i++)for(j=0;j<_______________;j++)if(_______________<_______________){m=a[j];a[j]=a[j+1];a[j+1]=m;}for(i=0;i<5;i++)printf("%d",a[i]);}7.函数fun的功能是:使一个字符串按逆序存放,请填空。voidfun(charstr[]){charm;inti,j;for(i=0,j=strlen(str);i<_______________;i++,j--){m=str[i];str[i]=_______________;str[j-1]=m;}printf("therotatedstringis%s\n",_______________);}