C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案_第1页
C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案_第2页
C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案_第3页
C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案_第4页
C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案第一章测试1、C语言是一种()A、机器语言B、汇编语言C、高级语言D、低级语言正确答案:C2、下列各项中,不是C语言的特点是()。A、语言简洁、紧凑,使用方便B、数据类型丰富,可移植性好C、能实现汇编语言的大部分功能D、有较强的网络操作功能正确答案:D3、下列叙述错误的是()。A、C程序中的每条语句都用一个分号作为结束符B、C程序中的每条命令都用一个分号作为结束符C、C程序中的变量必须先定义,后使用D、C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写正确答案:B4、一个C程序的执行是从()。A、本程序的main函数开始,到main函数结束B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C、本程序文件的第一个函数开始,到本程序main函数结束D、本程序的main函数开始,到本程序文件的最后一个函数结束正确答案:A5、以下叙述不正确的是()。A、一个C源程序必须包含一个main函数B、一个C源程序可由一个或多个函数组成C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面正确答案:D第二章测试1、已知定义整形变量a,b,c的值分别是2、3、4,运算表达式a*=16+(b++)-(++c)以后,a值为()A、31B、30C、29D、28正确答案:D2、在C语言中,要求参加运算的数必须是整数的运算符是()。A、++B、C、!D、%正确答案:D3、合法的c标识符是()。A、5dmB、a>bC、h1D、$s正确答案:C4、执行下列程序后,显示的结果是()main(){inta;printf(“%d”,(a=3*5,a*4,a+5));}A、65B、20C、15D、10正确答案:B5、执行下列程序中的输出语句后,x的值是()。main(){intx;printf(“%d”,(x=4*5,x*2,x+20));}A、20C、60D、80正确答案:A6、判断:表达式1/4+2.75的值是3。正确答案:X7、下列转义字符不正确的是()。A、'/'B、’’C、’+’D、’-’正确答案:B8、对于intn=3;执行n+=n-=n*n;后n的值是9。正确答案:X9、在C语言中8.9e1.2是不正确的实型常量。正确答案:√10、对任一变量一旦被指定为某一确定类型后,该变量在程序运行时所占存储空间的多少和所能参加的运算类型便已确定了。正确答案:√11、若x为整型变量、j为实型变量,当执行语句:x=(int)j;后,j也变为整型变量。正确答案:X12、“!”的优先级可以比“/”高。正确答案:√13、两个char型数据相加,其结果为char型。正确答案:X14、若有inti=10,j=2;则执行完i*=j+8;后ⅰ的值为28。正确答案:X15、在C程序中,%是只能用于整数运算的运算符。正确答案:√16、以下各数均不是合法的八进制数:256、03A2、-0127。正确答案:X17、C语言程序中,任何英语单词均可以作标识符。正确答案:X18、若有宏定义:#defineM(x,y,z)x*y+z,则宏引用M(2+3,4+5,6+7)通过宏展开后的表达式应为(2+3)*(4+5)+6+7。正确答案:X19、C语言中不区分大小写英文字母。正确答案:X正确答案:X21、0x173是正确的十六进制常数。正确答案:√22、逻辑表达式-5&&!8的值为1。正确答案:X23、下面程序的输出是________#includeintmain(){intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);return1;}A、k=11,k=12,k=11B、k=11,k=13,k=13C、k=11,k=013,k=0xbD、k=11,k=13,k=b正确答案:D24、在下列选项中,不正确的赋值语句是_______.A、++t;B、n1=(n2=(n3=0));C、k=i=j;D、a=b+c=1;正确答案:D25、下面程序的输出的是_________.#includevoidmain(){intx=10,y=3;printf("%d\n",y=x/y);}A、0B、1C、3D、不确定的值正确答案:C26、已知字母A的ASCII码为十进制的65,下面程序的输出是_________.#includevoidmain(){charch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A、67,DB、B,CC、C,DD、不确定的值27、为表示关系x≥y≥z,应使用C语言表达式____.A、(x>=y)&&(y>=z)B、(x>=y)AND(y>=z)D、(x>=y)&(y>=z)正确答案:A28、下面程序的输出结果是_______.#includevoidmain(){inta=-1,b=4,k;k=(++amain(){intk=011;printf("%d\n",k++);}程序运行后的输出结果是________A、12B、11C、10D、9正确答案:D33、有以下程序#include#defineSUB(a)(a)-(a)main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n",d);}程序运行后的输出结果是_______A、0B、-12C、-20D、10正确答案:C34、有以下定义语句,编译时会出现编译错误的是_______A、chara=’a’;B、chara=’\n’;C、chara=’aa’;D、chara=’\x2d’正确答案:C35、以下选项中,不正确的C语言浮点型常量是_______A、160.B、0.12C、2e4.2D、0.0正确答案:C36、以下选项中,_______是不正确的C语言字符型常量。A、'a'B、'\x41'C、'\101'D、"a"正确答案:D37、以下合法的标识符是_______。B、_a12C、3ceD、stu#正确答案:B38、已知intx=023,表达式++x的值是_______。A、17B、18D、20正确答案:D39、已知intx=10,表达式x+=x-=x-x的值是_______。A、10B、40C、30D、20正确答案:D40、在C语言中,字符型数据在计算机内存中,以字符的_______形式存储。A、原码B、反码C、ASCII码D、BCD码41、若变量x、i、j和k都是int型变量,则计算下面表达式后,x的值是_______。x=(i=4,j=16,k=32)A、4B、16C、32D、52正确答案:C42、下列不正确的转义字符是_______。A、'\\'B、'\''C、'074'D、'\0'正确答案:C43、A、a/b/c*e*3B、3*a*e/b/cD、a*e/c/b*3正确答案:C44、要为字符型变量a赋初值,下列语句中哪一个是正确的_______。A、chara="3";C、chara=%;D、chara=*;正确答案:B45、字符串"ABC"在内存占用的字节数是_______。A、3B、4C、6D、8A、1B、2C、3D、4正确答案:A47、C语言中,要求运算对象只能为整数的运算符是_______。A、%C、>D、*正确答案:A48、若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是_______。A、1B、2C、2.0D、2.5正确答案:C49、sizeof(double)的结果值是_______。A、8B、4正确答案:A50、以下用户标识符中,合法的是_______。A、intB、nitC、123D、a+b正确答案:B51、表达式18/4*sqrt(4.0)/8值的数据类型是_______。A、intB、floatC、doubleD、不确定正确答案:C第三章测试1、以下选项中不是C语句的是()A、++tB、;C、k=i=j;D、{a/=b=1;b=a%2;}正确答案:A2、以下语句的输出结果是()printf("%d",strlen(""65xff"));A、5C、8D、输出项不合法,无法正常输出正确答案:A3、若变量已正确说明为float型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是()A、102233B、10.0,22.0,33.0C、10.022.033.0D、102233正确答案:B4、调用getchar和putchar函数时,必须包含的头文件是()。A、stdio.hB、stdlib.hC、defineD、以上都不对5、使用scanf("a=%d,b=%d",&a,&b)为变量a,b赋值。要使a,b均为50,正确的输入是()A、a=50b=50B、5050C、a=50,b=50D、50,50正确答案:C6、“putchar(70);”这一C语句输出的结果为()A、70B、FC、提示语法错误D、C正确答案:B7、C语言标准格式输入函数scanf()的参数表中要使用变量的地址值。正确答案:√8、表达式语句和表达式没有什么区别。9、C语言标准输入操作中,gets()函数一次只可读取一个字符。正确答案:X10、C语言程序中可以有多个函数,但只能有一个主函数。正确答案:√11、C语言标准输出操作中,putchar()函数可以输出显示一个字符串。正确答案:X12、C语言标准格式输出函数printf()的参数表是由若干个表达式组成。正确答案:√13、C语言标准输入操作中,gets()函数一次只可读取一个字符。正确答案:X14、以下叙述中正确的是A、用C程序实现的算法必须要有输入和输出操作B、用C程序实现的算法可以没有输出但必须要有输入C、用C程序实现的算法可以没有输入但必须要有输出D、用C程序实现的算法可以既没有输入也没有输出正确答案:C15、在C语言中,执行下面两个语句后,输出的结果为()。charc1=97,c2=98;printf("%d%c",c1,c2);A、9798B、97bC、a98D、ab正确答案:B16、下列语句中符合C语言语法的赋值语句是A、a=7+b+c=a+7;B、a=7+b++=a+7;C、a=7+b,b++,a+7D、a=7+b,c=a+7;正确答案:D17、在C语言语言中,退格符是()A、\nB、\tC、\fD、\b正确答案:D18、putchar()函数可以向终端输出一个A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量值正确答案:DA、++tB、;C、k=i=j;D、{a/=b=1;b=a%2;}正确答案:A20、有定义语句:inta=5,b,不能给b赋2的赋值语句是()。A、b=a/2;B、b=b+2;D、b=5;b=2;正确答案:B21、已有定义inta=-2;和输出语句printf("%8lx",a);以下正确的叙述是()。A、整型变量的输出形式只有%d一种B、%x是格式符的一种,它可以适用于任何一种类型的数据C、%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的D、%8lx不是错误的格式符,其中数字8规定了输出字段的宽度正确答案:C22、以下语句的输出结果是()。printf("%d\n",strlen("\t\"\065\xff\n"));A、5B、14C、8D、输出项不合法,无法正常输出正确答案:A23、若变量已正确说明为float型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是()。A、102233B、10.0,22.0,33.0C、10.022.033.0D、102233正确答案:BA、a=50b=50B、5050C、a=50,b=50D、50,50正确答案:CA、stdio.hB、stdlib.hC、define正确答案:A26、以下叙述中不正确的是()。A、调用printf函数时,必须要有输出项B、使用putchar函数时,必须在之前包含头文件stdio.hC、在C语言中,整数可以以十进制、八进制或十六进制的形式输出D、使用putchar函数可以不要输出项正确答案:A27、putchar()函数可以向终端输出一个()。A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量28、用getchar()函数可以从键盘读入一个()。A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量正确答案:D第四章测试1、若要求在if后的圆括号中表示a不等于0的关系,能正确表示这一关系的表达式是()。A、a0B、!aC、a=0D、a正确答案:B2、以下程序段,运行后的输出结果是()charm='b';if(m++>'b')printf("%c",m);elseprintf("%c",m--);A、aB、bC、cD、d正确答案:C3、设a=1,b=2,c=3,d=4,则表达式a=1)&&(x=200)&&(x=1)||(x=200)||(x=1)&&(x=200)&&(x=1)||(x=200)||(xb)&&(n=c>d)后,n的值为()。A、1B、2C、3D、0正确答案:B12、设有如下定义:inta=2,b;则执行b=a&&1;语句后,b的结果是()。A、0B、1C、2D、313、设a=3,b=4,c=5,则表达式!(a>b)&&!c||1的结果是()。A、1B、0C、2正确答案:A14、能正确表示a和b同时为正或同时为负的逻辑表达式是()。A、(a>=0||b>=0)&&(a=0&&b>=0)&&(a0)&&(a+b0正确答案:D15、以下程序段的输出结果是()。inta=10,b=50,c=30;if(a>b)a=b;b=c;c=a;printf("a=%db=%dA、a=10b=50c=10B、a=10b=30c=10D、a=50b=30c=50正确答案:B16、有如下程序intmain(){floatx=2.0,y;if(x0B、!aC、a=0D、a正确答案:D18、有如下程序段:intx=1,y=1;intm,n;m=n=1;switch(m){case0:x=x*2;case1:{switch(n){case1:x=x*2;case2:y=y*2;break;case3:x++;}}case2:x++;y++;case3:x*=2;y*=2;break;default:x++;y++;}执行完成后,x和y的值分别为()。A、x=6y=6B、x=2y=1C、x=2y=2正确答案:AA、1和2B、1和3C、2和2D、2和3正确答案:B21、以下程序段,运行后的输出结果是()。charm='b';if(m++>'b')printf("%c\n",m);elseprintf("%c\n",m--);A、aB、bC、cD、d正确答案:C22、以下程序段的输出结果是()。inta=13,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;}}printf("%d",m);A、1B、2C、3D、4正确答案:C第五章测试1、若i为整型变量,则以下循环执行的次数是()。(单选)for(i=0;i=‘0’&&ch1;i--)for(j=1;jvoidmain(){intn=4;while(n--)printf("%d",n--);}A、20B、31C、321D、210正确答案:B15、以下程序运行后的输出结果是________.#includevoidmain(){inti=10,j=0;do{j=j+1;i--;}while(i>2);printf("%d\n",j);}A、50B、52C、51D、8正确答案:D16、下面程序的输出结果是________.main(){inti,k=0,a=0,b=0;for(i=1;ivoidmain(){inty=9;for(;y>0;y--){if(y%3==0){printf("%d",--y);continue;}}}A、741B、852C、963D、875421正确答案:B18、有以下程序#includemain(){inti,j,m=1;for(i=1;i0;j--){if(i*j>3)break;m=i*j;}}printf("m=%d\n",m);}程序运行后的输出结果是_______.A、m=1B、m=2C、m=4D、m=5正确答案:A19、有以下程序#includemain(){intc=0,k;for(k=1;k0;y--)if(y%3==0)printf("%d",--y);A、875421B、963C、852D、741正确答案:C29、有以下程序段,其运行结果是_______。inti,j;for(i=3;i>=1;i--){for(j=1;jvoidfunA(intn){n++;}intmain(){inta=1;funA(a);printf("%d",a);funA(a);printf("%d",a);return0;}A、12B、11D、213、以下程序的输出结果是()。#include"stdio.h"intf(intx){inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}intmain(){intz;z=f(3);printf("%d",z);return0;}B、9C、6D、8正确答案:C4、以下程序的输出结果是()。#includeintfun(intx){intp;if(x==0||x==1)return(3);p=x-fun(x-2);returnp;}intmain(){printf("%d",fun(7));return0;}A、2B、3C、7D、05、以下程序的输出结果是()。#includeintfun(inta,intb){staticintm=0,i=2;i+=m+1;m=i+a+b;returnm;}intmain(){intk=4,m=1,p;p=fun(k,m);printf("%d,",p);p=fun(k,m);printf("%d",p);return0;}A、8,17B、8,16C、8,8D、8,20正确答案:A6、函数的实参传递到形参有两种方式值传递和地址传递。正确答案:√7、如果函数定义出现在函数调用之前,可以不必加函数声明。正确答案:√8、函数的实参可以是常量,变量或表达式。正确答案:√9、以下叙述中正确的是()。A、用户自己定义的函数只能调用库函数B、C语言源程序总是由一个或多个函数组成C、不同函数的形式参数不能使用相同名称的标识符D、在C语言的函数内部,可以定义局部嵌套函数正确答案:B10、若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。A、函数调用可以作为独立的语句存在B、函数调用可以作为一个函数的实参C、函数调用可以出现在表达式中D、函数调用可以作为一个函数的形参正确答案:D11、以下程序的输出结果是()。#includevoidfunA(intn){n++;}intmain(){inta=1;funA(a);printf("%d",a);funA(a);printf("%d\n",a);return0;}A、12B、11C、22D、21正确答案:B12、有以下程序,程序运行后的输出结果是()。#includeintnew_div(doublea,doubleb){returna/b+0.5;}intmain(){printf("%d",new_div(7.8,3.1));return0;}A、1B、2C、3D、0正确答案:C13、在一个C语言程序中,下列说法正确的是()。A、main函数必须出现在所有函数之前B、main函数可以出现在其它函数之外的任何位置C、main函数必须出现在所有函数之后D、main函数必须出在固定位置正确答案:B14、以下叙述中正确的是()。A、函数名允许用数字开头B、函数调用时,不必区分函数名称的大小写C、调用函数时,函数名必须与被调用的函数名完全一致D、在函数体中只能出现一次return语句正确答案:C15、以下程序的输出结果是()。#include"stdio.h"intf(intx){inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}intmain(){intz;z=f(3);printf("%d\n",z);return0;}A、0B、9C、6D、8正确答案:C16、有以下程序#includeintmain(){intfindmax(int,int,int),m;┋A、在main函数中声明了findmax函数B、在main函数中定义了findmax函数C、在main函数中两次调用了findmax函数D、在main函数内、外重复定义了findmax函数正确答案:A17、设有函数定义:voidsub(intk,charch){…}则以下对函数sub的调用语句中,正确的是()。A、sub(1,97);B、sub(2,'97');C、n=sub(3,'a');D、sub(4,"a");正确答案:A18、下列叙述中错误的是()。A、主函数中定义的变量在整个程序中都是有效的。B、在其它函数中定义的变量在主函数中也不能使用。C、形式参数也是局部变量。D、复合语句中定义的变量只在该复合语句中有效。正确答案:A19、凡是函数中未指定存储类别的局部变量,其隐含的存储类型是()。A、自动(auto)B、静态(static)C、外部(extern)D、寄存器(register)正确答案:A20、下面程序的输出结果是()。#includeintmain(){intx=10;{intx=20;printf("%d,",x);}printf("%d\n",x);return0;}A、10,20B、20,10C、10,10D、20,20正确答案:B21、以下程序的输出结果是()。#includeintfun(inta,intb){staticintm=0,i=2;i+=m+1;m=i+a+b;returnm;}intmain(){intk=4,m=1,p;p=fun(k,m);printf("%d,",p);p=fun(k,m);printf("%d\n",p);return0;}A、8,17B、8,16C、8,8D、8,20正确答案:A22、下面程序的输出结果是()。intmain(){inta=2,i;for(i=0;iintfun(intk){if(kintmain(){charstr[100]="ABCDEFG",*p=str;inti;for(i=0;*p!=’’;p++,i++);printf("%d",i);return0;}A、7B、8C、99D、1004、已知有以下的说明,inta[]={8,1,2,5,0,4,7,6,3,9};那么a[*(a+a[3])]的值为()。A、5B、0C、4D、7正确答案:B5、有以下程序:main(){charstr[][10]={“China”,“Beijing”},*p=str;printf(“%s”,p+10);}该程序运行后的输出结果是()。A、ChinaB、BeijingC、ngD、ing正确答案:B6、下列关于指针定义的描述正确的有()。A、指针变量是一种变量,该变量是用来存放某个变量的地址值的B、指针变量的类型与它所指向的变量类型一致D、在定义指针时,”*”号表示指针变量的指向正确答案:ABCD7、设有定义语句:intx[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组中6个元素中的值,下列选项中能完成此操作的语句有()。A、for(i=0;iintf(intt[],intn);main(){inta[4]={1,2,3,4},s;s=f(a,4);printf("%d\n",s);}intf(intt[],intn){if(n>0)returnt[n-1]+f(t,n-1);elsereturn0;}程序运行后的输出结果是()A、4B、1OC、14D、6正确答案:B33、有以下程序#includemain(){intm=1,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf(“%d,%d,%d,%d\n”,m,n,*p,*q);}程序运行后的输出结果是()A、1,2,1,2B、1,2,2,1C、2,1,2,1D、2,1,1,2正确答案:B34、若有定义语句:inta[4][10],*p,*q[4];且0≤i#includemain(){charstr[][20]={“One*World”,“One*Dream!”},*p=str[1];printf(“%d,”,strlen(p));printf(“%s\n”,p);}程序运行后的输出结果是()A、9,One*WorldB、9,One*DreamC、10,One*DreamD、10,One*World正确答案:C36、下列函数的功能是()fun(char*a,char*b){while((*b=*a)!=’\0’){a++,b++;}}A、将a所指字符串赋给b所指空间B、使指针b指向a所指字符串C、将a所指字符串和b所指字符串进行比较D、检查a和b所指字符串中是否有’\0’正确答案:A37、设有定义:char*c;,以下选项中能够使字符型指针c正确指向一个字符串的是()A、charstr[]=”string”;c=str;B、scanf(“%s”,c);C、c=getchar();D、*c=”string”;正确答案:A38、有以下程序#includevoidfun(int*a,int*b){int*c;c=a;a=b;b=c;}main(){intx=3,y=5,*p=&x,*q=&y;fun(p,q);printf("%d,%d,",*p,*q);fun(&x,&y);printf("%d,%d\n",*p,*q);}程序运行后的输出结果是()B、3,5,3,5C、5,3,3,5D、5,3,5,3正确答案:B39、已知chars[10],*p=s;,则在下列语句中,错误的语句是()。A、p=s+5;B、s=p+s;C、s[2]=p[4]D、*p=s[0]正确答案:BA、b=””;B、*b=”abcd”;C、p=”abcd”;D、*p=”abcd”;正确答案:C41、已知chars[20]=”programming”,*ps=s;则不能引用字母o的表达式是()。A、ps+2B、s[2]C、ps[2]D、ps+=2,*ps正确答案:A42、下列选项中,正确的语句组是()。A、chars[8];s={"Beijing"};B、char*s;s={"Beijing"};D、char*s;s="Beijing";正确答案:D43、已知char*p,*q;下面语句正确的是()。A、p*=3;B、p/=q;C、p+=3;D、p+=q;正确答案:C44、若说明int*p,n;则通过语句scanf能够正确读入数据n的程序段是()。A、p=&n;scanf("%d",&p);B、p=&n;scanf("%d",*p);C、scanf("%d",n);D、p=&n;scanf("%d",p);正确答案:D45、若有定义:intx,*pb;则以下正确的表达式是()A、pb=&xB、pb=xC、*pb=&xD、*pb=*x正确答案:AA、因变量无定义输出不定值B、0C、-1D、1正确答案:B47、已知指针p的指向如图所示的a[1],则执行语句*p++;后,*p的值是()。A、20B、30C、21D、31正确答案:B48、已知指针p的指向如图所示的a[1],则表达式*++p的值是()。B、30C、21D、31正确答案:B49、已知指针p的指向如图所示的a[1],则表达式++*p的值是()。A、20B、30C、21D、31正确答案:C50、若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是()。A、a,point,*&aB、&*a,&a,*pointC、*&point,*point,&aD、&a,&*point,point正确答案:D51、若有下面的程序段:chars[]="china";char*p;p=s;则下列叙述正确的是()。A、s和p完全相同B、数组s中的内容和指针变量p中的内容相等D、*p与s[0]相等正确答案:D52、已定义以下函数fun(char*p2,char*p1){while((*p2=*p1)!=’\0’){p1++;p2++;}}函数的功能是()。A、将p1所指字符串复制到p2所指内存空间B、将p1所指字符串的地址赋给指针p2C、对p1和p2两个指针所指字符串进行比较D、检查p1和p2两个指针所指字符串中是否有’\0’正确答案:A53、下面程序段中,输出*的个数是()。char*s="\ta\018bc";for(;*s!=′\0′;s++)printf("*");A、9B、5C、6D、7正确答案:C54、阅读下列程序,则执行后的结果为()。#include"stdio.h"intmain(){intc[][4]={1,2,3,4,5,6,7,34,213,56,62,3,23,12,34,56};A、3e,6C、56,5D、3E,6正确答案:A55、现有inta,*b;,b=&a;,则下列运算错误的是()。A、*&aB、&*aC、*&bD、&*b正确答案:B56、现有如下定义语句,表示数组元素s[i]的表达式不正确的是()。int*p,s[20],i;p=s;A、*(s+i)B、*(p+i)C、*(s=s+i)D、*(p=p+i)正确答案:C第九章测试A、可用S定义结构体变量B、可用T定义结构体变量C、S是struct类型的变量D、T是structS类型的变量正确答案:B2、若已经定义:structstu{inta,b;}student;则下列输入语句中正确的是()A、scanf("%d",&a);B、scanf("%d",&student);C、scanf("%d",&stu.a);D、scanf("%d",&student.a);正确答案:D3、有以下程序#includestructball{charcolor[10];intdim;};intmain(){structballlist[2]={{"white",2},{"yellow",3}};printf("%s:%d",A、yellow:3C、white:2D、white:3正确答案:B4、以下叙述中正确的是()。A、结构体数组名不能作为实参传给函数B、结构体变量的地址不能作为实参传给函数C、结构体中可以含有指向本结构体的指针成员D、即使是同类型的结构体变量,也不能进行整体赋值正确答案:C5、有以下程序#include#includestructS{charname[10];};voidchange(structS*data,intvalue){strcpy(data->name,"#");value=6;}intmain(){structSinput;intnum=3;strcpy(,"OK");change(&input,num);printf("%s,%d",,num);return0;}程序运行后的输出结果是()B、8,16C、8,8D、8,20正确答案:D6、结构体成员的类型必须是基本数据类型。正确答案:X7、结构体数组中可以包含不同结构体类型的结构体变量。正确答案:X8、结构体类型本身不占用内存空间,结构体变量占用内存空间。9、以下关于C语言数据类型使用的叙述中错误的是()。A、若要准确无误差的表示自然数,应使用整数类型B、若要保存带有多位小数的数据,应使用双精度类型C、若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D、若只处理“真”和“假”两种逻辑值,应使用逻辑类型正确答案:D10、下面有关typedef语句的叙述中,正确的是()A、typedef语句用于定义新类型B、typedef语句用于定义新变量C、typedef语句用于给已定义类型取别名D、typedef语句用于给已定义变量取别名正确答案:C11、若已经定义typedefstructstu{inta,b;}student;则下列叙述中正确的是()A、stu是结构体变量B、student是结构体变量C、student是结构体类型D、a和b是结构体变量正确答案:C12、C语言中结构体类型变量在程序执行期间()A、所有成员一直驻留在内存中B、只有一个成员驻留在内存中C、部分成员驻留在内存中D、没有成员驻留在内存中正确答案:A13、以下叙述中正确的是()A、结构体中的成员不能是结构体类型B、结构体的类型不能是指针类型C、结构体中成员的名字可以和结构体外其他变量的名称相同D、在定义结构体类型时就给结构体分配存储空间正确答案:C14、以下程序的运行结果是()#includeintmain(){structdate{intyear,month,day;}today;printf("%d",sizeof(structdate));return0;}A、6B、8C、10D、12正确答案:D15、已知:structsk{inta;floatb;}data,*p;若有p=&data,则对data中的成员a的正确引用是()A、(*p).data.aB、(*p).aC、p->data.a正确答案:B16、若有以下定义语句:structstudent{intnum,age;};structstudentstu[3]={{101,20},{102,19},{103,18}},*p=stu;则以下错误的引用是()B、p++C、(*p).numD、p=&stu.age正确答案:D17、设有一结构体类型变量定义如下:structdate{intyear;intmonth;intday;};structworker{charname[20];charsex;structdatebirthday;}w1;若对结构体变量w1的出生年份进行赋值,下面正确的赋值语句是()A、year=1976B、birthday.year=1976C、w1.birthday.year=1976D、w1.year=1976正确答案:C18、已知:structperson{charname[10];intage;}class[10]={"LiMing",29,"ZhangHong",21,"WangFang",22};下述

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论