2、。A.chara[20]="abcdefg";B.chara[]="x+y=55.";C.chara[15]={'1','2'};D.chara[10]='5';6.若有一个函数原型为“double*function()”,则它的返回值类型为()。A.实数型B.实数指针型C.函数指针型D.数组型7.在C语言中,所有预处理命令都是以()符号开头的。A.*B.#C.&D.@8.假定整数指针p所指数据单元的值为30,p+1所指数据单元的值为40,则执行*p++后,p所指数据单元的值为()。A.40B.30C.70D.109.若要使p指向二维整型数组a[10][
3、20],则p的类型为()。A.int*B.int**C.int*[20]D.int(*)[20]10.表示文件结束符的符号常量为()A.eofB.EofC.EOFD.feof二、填空题1.一个函数定义由________和函数体两部分组成。2.执行“printf("%c",'F'-2);”语句后得到的输出结果为________。3.int类型的长度为________。4.表达式(float)25/4的值为________。5.若x=5,y=10,则x<=y的逻辑值为________。6.作为语句标号使用的case和default只能用于________语句
4、的定义体中。7.在程序中执行到________语句时,将结束所在函数的执行过程,返回到调用该函数的位置。8.假定二维数组的定义为“chara[M][N];”,则该数组所含元素的个数为________。9.存储字符'a'需要占用存储器的________个字节空间。10.用于存储一个长度为n的字符串的字符数组的长度至少为________。11.假定p所指对象的值为25,p+1所指对象的值为46,则执行表达式(*p)++后,p所指对象的值为________。12.假定p是一个指向整数对象的指针,则用________表示该整数对象。13.假定一个结构类型的定义为
5、“structB{inta[5];char*b;};”,则该类型的理论长度为________。三、写出下列每个程序运行后的输出结果1.#includevoidmain(){inti,s1=0,s2=0;for(i=0;i<10;i++)if(i%2)s1+=i;elses2+=i;printf("%d%d",s1,s2);}2.#includeconstintM=20;voidmain(){inti=2;while(1){if(i>M/2)break;if(M%i==0)printf("%d",i);i++;}pr
6、intf("");}3.#includeinta[6]={4,5,6,15,20,12};voidmain(){inti,s1,s2;s1=s2=0;for(i=0;i<6;i++){switch(a[i]%2){case0:s2+=a[i];break;case1:s1+=a[i];break;}}printf("%d%d",s1,s2);}4.#includevoidmain(){inta[3][3]={{3,5,7},{9,11,13},{6,8,20}};inti,*p=&a[0][0];for(i=0
7、;i<9;i++){if(*p>10)printf("%d",*p);p++;}printf("");}5.#include#includestructWorker{charname[15];intage;floatpay;};voidmain(){structWorkerx;char*t="liouting";intd=38;floatf=400;strcpy(x.name,t);x.age=d;x.pay=f;x.age++;x.pay*=2;printf("%s%d%6.2f",x.name,x.age
8、,x.pay);}四、写出下列每个函数的功能1.#include