计算机程序设计(C语言)智慧树知到期末考试答案章节答案2024年北华大学_第1页
计算机程序设计(C语言)智慧树知到期末考试答案章节答案2024年北华大学_第2页
计算机程序设计(C语言)智慧树知到期末考试答案章节答案2024年北华大学_第3页
计算机程序设计(C语言)智慧树知到期末考试答案章节答案2024年北华大学_第4页
计算机程序设计(C语言)智慧树知到期末考试答案章节答案2024年北华大学_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

计算机程序设计(C语言)智慧树知到期末考试答案+章节答案2024年北华大学对指针变量的初始化inta,*pa=&a,*pc=0;是正确的.

答案:对char*s1="A";是正确的.

答案:对当调用函数时,实参是一个数组名,则向函数传送的是数组的长度.

答案:错开关语句switch最多可形成三个分支.

答案:错数组定义inta(10);是正确的.

答案:错在C语言中,形参的缺省存储类别是auto

答案:对定义数组chara[10];scanf("%s",&a)是正确的.

答案:错for(i=0,k=-1;k=1;k++,i++)printf("*\n");循环结束的条件不合法.

答案:错putchar('\n');与printf("\n");作用相同.

答案:对若a是实型变量,C程序中允许以下赋值a=10;因此,实型变量中允许存放整型数据.

答案:错一个C程序必须由一个或一个以上的函数组成.

答案:对doublex,y;scanf("%lf%lf",x,y);可以将键入的2030分别赋给x,y变量.

答案:错char*s;*s='H';是正确的.

答案:错在C程序中,每行中只能写一条语句.

答案:错在程序中凡是以#号开始的语句行都是预处理命令行

答案:对枚举类型的数据不能从键盘上直接输入、输出.

答案:对intk=8567;printf("|%-6d|\n",k);的输出为|008567|.

答案:错若有说明inta[3][4];则a数组元素的非法引用是().

答案:a[0][4]选择结构中的条件与循环结构中循环成立的条件,在写法上可以是任一表达式,但其值只能被判断为"真"或"假".哪个数作为逻辑"假"值()

答案:0设C语言中,int类型数据占2个字节,则unsigned类型数据占().

答案:2个字节执行下列语句后的结果为().intx=3,y;int*px=&x;y=*px++;

答案:x=3,y=3char*s1="hello",*s2;s2=s1;则().

答案:puts(s1);与puts(s2);结果相同C程序中的宏展开是在().

答案:编译前预处理时进行的在C语言中,要求运算数必须是整型或字符型的运算符是().

答案:&设intb=2;表达式(b>>2)/(b>>1)的值是().

答案:0inta[10]={1,2,3,4,5,6,7,8};int*p;p=&a[5];p[-3]的值是()

答案:3以下不能正确进行字符串赋初值的语句是().

答案:charstr[5]="good!";若给定条件表达式(M)?(a++):(a--),则其中表达式M().

答案:和(M!=0)等价下列字符序列中,是C语言保留字的是().

答案:sizeof以下不正确的叙述是().

答案:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值若有说明inta[3][4];则对a数组元素的正确引用是().

答案:a[1+1][0]以下正确的描述是:在C语言程序中().

答案:函数的定义不可以嵌套,但函数的调用可以嵌套若k为int型变量,则以下程序段的执行结果是().k=-8567;printf("|%06D|\n",k);

答案:输出为|%06D|sizeof(float)是().

答案:一个整型表达式若chara[10];已正确定义,以下语句中不能从键盘上给a数组的所有元素输入值的语句是().

答案:a=getchar();C语言中,定义结构体的保留字是().

答案:structinta=3,b=2,c=1;if(a>b>c)a=b;elsea=c;则a的值为().

答案:1下列程序段的输出结果为().intx=3,y=2;printf("%d",(x-=y,x*=y+8/5));

答案:3一个C程序的执行是从().

答案:本程序的main函数开始,到main函数结束C语言源程序的基本单位是().

答案:函数下面选择中正确的赋值语句是(设chara[5],*p=a;)().

答案:p="abcd";若有说明:inta[10];则对a数组元素的正确引用是().

答案:a[10-10]下列说法不正确的是().

答案:主函数main中定义的变量在整个文件或程序中有效inta[10];给数组a的所有元素分别赋值为1、2、3、……的语句是().

答案:for(i=1;i<11;i++)a[i-1]=i;下列程序的输出结果为().main(){intm=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);}

答案:27.000000下列运算符中是C语言关系运算符的是().

答案:!=C语言中运算对象必须是整型的运算符是().

答案:%=以下程序段char*alp[]={"ABC","DEF","GHI"};intj;puts(alp[1]);的输出结果是().

答案:DEF以下程序段的输出结果为().charc[]="abc";inti=0;do;while(c[i++]!='\0');printf("%d",i-1);

答案:3下列程序段的输出结果为().inta=7,b=9,t;t=a*=a>b?a:b;printf("%d",t);

答案:63数组名作为实参数传递给函数时,数组名被处理为().

答案:该数组的首地址结构化程序设计是一种避免使用(

)语句的程序设计。

答案:goto小学算术运算模拟测试系统程序中,structTestDataexam[10];这条语句定义的变量exam的类型是(

)。

答案:结构体类型的数组结构化程序设计把任意大而复杂的流程图转变为标准形式,以便用迭代表示,并嵌套少数基本而标准的三种控制逻辑结构(

)。

答案:顺序、选择、循环程序设计步骤中,建立数学模型后,还不能着手编程序,必须根据(

),选择解决问题的算法。

答案:数据结构小学算术运算模拟测试系统程序中,UserSel函数的作用是显示(

)。

答案:用户主选择界面下面的描述,哪一个不符合模块化程序设计的特点(

答案:程序设计的复杂性提高了下面描述不正确的是(

答案:C语言中函数模块化后必须和主函数在一个文件中C语言中模块化设计主要通过(

)实现

答案:函数模块化程序设计要求标准是(

答案:高内聚,低耦合下面程序段的运行结果是____。x=2;do{printf("x");x--;}while(!x==0);

答案:**执行下面程序段后,k值是______。k=1;n=263;do{k*n%10;n/=10;}while(n)

答案:36下面关于while和do-while循环的说法中,正确的是()。

答案:以上答案都不正确已知inti=1;执行语句while(i++<4);后,变量i的值为()

答案:5语句while(!E);中的表达式!E等价于()。

答案:E==0设有程序段intk=10;while(k)k=k+1;则下面描述中正确的是()

答案:while循环执行10次以下运算符中,结合性与其他运算符不同的是

答案:++以下用户标识符中,合法的是

答案:nit字符串的结束标志是

答案:'\0'下面不正确的转义字符是

答案:074算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为

答案:算术运算符、关系运算符、赋值运算符#include"文件名",可以将另外一个源文件的全部内容包含进来.

答案:对在C程序中,无论是整数还是实数,都能准确无误地表示.

答案:错当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值.

答案:错将函数fun的入口地址赋给指针变量p的语句是p=fun();

答案:错用scanf函数输入数据可以规定精度,所以scanf("%6.2f",&x)是正确的.

答案:错只有数字1代表逻辑值"真".

答案:错C语言中函数调用的方式只有函数做表达式一种.

答案:错在C程序中,语句之间必须要用分号";"分隔.

答案:对动态存储分配,可调用函数malloc(),如int*p;p=(int*)malloc(sizeof(p));

答案:对若i=3,则printf("%d",-i++);输出的值为-4.

答案:错在C语言中8.9e1.2是不正确的实型常量.

答案:对在C语言中,为了结束由do-while语句构成的循环,while后一对圆括号中表达式的值应该是0.

答案:对当定义一个结构体变量时,系统分配给它的内存是各成员所需内存量的总和.

答案:对inti=3,*p;p=&i;printf("%d",*p);是正确的.

答案:对在程序中,APH和aph是两个不同的变量.

答案:对if(strcmp(temp,str)>0)中的条件是当字符串temp大于字符串str为真时.

答案:对在C语言程序中,函数的定义不可以嵌套,但函数的调用可以嵌套

答案:对表达式,0x13&0x17的值是().

答案:0x13以下程序的运行结果是().main(){inti=1,sum=0;while(i<10)sum=sum+1;i++;printf("i=%d,sum=%d",i,sum);}

答案:运行不出结果若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),则以下程序段的执行结果是().ch='a';k=12;printf("%x,%o,",ch,ch,k);printf("k=%%d\n",k);

答案:61,141,k=%d对于基本类型相同的两个指针变量之间,不能进行的运算是().

答案:+在C语言的函数中,下列正确的说法是().

答案:可以有也可以没有形参下列语句的结果是().main(){intj;j=3;printf("%d,",++j);printf("%d",j++);}

答案:4,4设有说明int(*ptr)[M];其中标识符ptr是().

答案:一个指向具有M个整型元素的一维数组的指针假定所有变量均已正确定义,下列程序段运行后x的值是().k1=1;k2=2;k3=3;x=15;if(!k1)x--;elseif(k2)x=4;elsex=3;

答案:4在C语言中,形参的缺省存储类别是().

答案:auto下列程序的输出结果是().main(){inta=011;printf("%d\n",++a);}

答案:10若定义:inta=511,*b=&a;,则printf("%d\n",*b);的输出结果为().

答案:511设有如下定义:structsk{inta;floatb;}data,*p;若要使p指向data中的a域,正确的赋值语句是().

答案:p=(structsk*)&data.a;若有以下程序段:inta=3,b=4;a=a^b;b=b^a;a=a^b;则执行以上语句后,a和b的值分别是().

答案:a=4,b=3下列选项中正确的语句组是().

答案:char*s;s="Beijing";下列定义数组的语句中正确的是().

答案:#definesize10charstr1[size],str2[size+2];以下数值中,不正确的八进制数或十六进制数是().

答案:-16若有下列定义和语句,则对a数组元素的非法引用是().inta[2][3],(*pt)[3];pt=a;

答案:*(pt+1)[2]以下关于运算符优先顺序的描述中正确的是().

答案:赋值运算符用户定义的函数不可以调用的函数是().

答案:main函数C语言中表达逻辑"真"值的是().

答案:非0的数下列程序运行结果为:#defineP3#defineS(a)P*a*amain(){intar;ar=S(3+5);printf("\n%d",ar);}

答案:29下列程序的输出结果是().main(){printf("%d\n",null);}

答案:变量无定义以下数组定义中不正确的是().

答案:intd[3][]={{1,2},{1,2,3},{1,2,3,4}};下列标识符中,不合法的C语言用户自定义标识符是().

答案:enum下面四个选项中,均是不合法的浮点数的选项是().

答案:1232e4.2.e5下列字符序列中,可用作C标识符的一组字符序列是().

答案:D56,r_1_2,name,_st_1在下列程序段中,枚举变量c1,c2的值依次是().enumcolor{red,yellow,blue=4,green,white}c1,c2;c1=yellow;c2=white;printf("%d,%d\n",c1,c2);

答案:1,6以下选项中合法的用户标识符是().

答案:_2Testcharh,*s=&h;可将字符H通过指针存入变量h中的语句是().

答案:*s='H';参加位运算的数据可以是任何类型的数据.

答案:错任何结构体类型的变量都可以互相赋值.

答案:错在C程序中,逗号运算符的优先级最低.

答案:对0x173是"正确"的十六进制常数.

答案:对利用全局变量可以返回函数值.

答案:对结构体类型只有一种.

答案:错#define和printf都不是C语句.

答案:对char*s1="hello",*s2;s2=s1;是正确的.

答案:对for(i=4;i>1;i--)for(j=1;j

答案:对char*p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl".

答案:错charc[]="abc";dowhile(c[i+1]!='\0');printf("%d",i-1);能输出字符串c的长度值.

答案:错return语句,可以在同一函数中出现多次.

答案:对以下正确的说法是().

答案:如果函数值的类型与返回值类型不一致,以函数值类型为准全局变量的定义不可能在().

答案:函数内部使用共用体变量,不可以().

答案:同时访问所有成员以下能对二维数组a进行正确初始化的语句是().

答案:inta[][3]={{1,2,3},{4,5,6}};C语言执行程序的开始执行点是().

答案:程序中的main函数若有说明:inti,j=2,*p=&i;,则能完成i=j赋值功能的语句是().

答案:*p=*&j;以下正确的函数定义形式是().

答案:doublefun(intx,inty)下列语句中,不正确的是

答案:staticchara[2]={'1','2','3'};执行下列语句后,a和b的值分别为().inta,b;a=1+'a';b=2+7%-4-'A';

答案:98,-60下列叙述中正确的是().

答案:C语言所有函数都是外部函数inti,j,a[2][3];按照数组a的元素在内存的排列次序,不能将数1,2,3,4,5,6存入a数组的是().

答案:for(i=1;i<=6;i++)a[i][i]=i;doublex;scanf("%lf",&x);不可以赋值给x变量的常量是().

答案:"abc"位字段数据的单位是()位.

答案:二进制以下程序段的执行结果是().doublex;x=218.82631;printf("%-6.2e\n",x);

答案:输出为2.2e+02以下对二维数组a的正确说明是().

答案:doublea[1][4]若有说明:inta[3][4]={0};则下面正确的叙述是().

答案:数组a中每个元素均可得到初值0逻辑运算符两侧运算对象的数据类型().

答案:可以是任何类型的数据对结构体类型的变量的成员的访问,无论数据类型如何都可使用的运算符是().

答案:.关于指针概念说法不正确的是().

答案:指针变量可以由整数赋,不能用浮点赋设a=12,且a定义为整型变量.执行语句a+=a-=a*=a;后a的值为().

答案:0C语言中用于结构化程序设计的三种基本结构是().

答案:顺序结构、选择结构、循环结构若有说明:int*p1,*p2,m=5,n;以下均是正确赋值语句的选项是().

答案:p1=&m;p2=p1;以下语句中,循环次数不为10次的语句是().

答案:for(i=1;i<10;i++);以下程序的输出结果是().main(){floatx=3.6;inti;i=(int)x;printf("x=%f,i=%d\n",x,i);}

答案:x=3.600000,i=3enuma{sum=9,mon=-1,tue};定义了().

答案:枚举数据类型下面说明不正确的是().

答案:chara[10],*p;p=a="china"C语言的if语句嵌套时,if与else的配对关系是().

答案:每个else总是与它上面的最近的并且尚未与其他else匹配的if配对staticchara[2];scanf("%s",a);是正确的.

答案:对函数的默认存储类别是外部的(extern).

答案:对若有inti=10,j=2;则执行完i*=j+8;后i的值为28.

答案:错位段定义中不允许长度为零的无名字段.

答案:错实参和形参之间,数据的传递采用值传送的方法.

答案:对若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变.

答案:对a=(b=4)+(c=6)是一个合法的赋值表达式.

答案:对循环嵌套中,内外层循环控制变量可以使用相同名,不会造成混乱.

答案:错数组定义inta[10];占内存10个字节.

答案:错r_1_2是C语言合法的用户定义标识符.

答案:对执行表达式(int)i后,i的类型一定变为整型.

答案:错charc;c=getchar();该程序段的功能是将用户从键盘输入的字符赋给变量c.

答案:对C程序中的#include和#define均不是C语句.

答案:对while和for循环都是先判断表达式的值,后执行循环体语句.

答案:对inta=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为().

答案:1语句while(!E);中的表达式!E等价于().

答案:E==0C语言规定,函数返回值的类型是由().

答案:在定义该函数时所指定的函数类型所决定若a=1,b=2则a|b的值是().

答案:3若x=2,y=3则x&y的结果是().

答案:2若有说明语句:charc='\72';则变量c().

答案:包含1个字符执行下列语句后变量x和y的值是().y=10;x=y++;

答案:x=10,y=11以下程序的输出结果是().main(){inti,j,k,a=3,b=2;i=(--a==b++)?--a:++b;j=a++;k=b;printf("i=%d,j=%d,k=%d\n",i,j,k);}

答案:i=1,j=1,k=3C语言程序中必须有的函数是().

答案:main以下的选择中,正确的赋值语句是().

答案:a=b=5;下列变量说明语句中,正确的是().

答案:intx,z;变量的指针,其含义是指该变量的().

答案:地址以下只有在使用时才为该类型变量分配内存的存储类说明是().

答案:auto和register设有intx=11;则表达式(x++*1/3)的值是().

答案:3以下不正确的if语句形式是().

答案:if(x!=y)scanf("%d",&x)elsescanf("%d",&y);下面四个选项中,均是不合法的用户标识符的选项是().

答案:b-agotointint(*p)[6];它的含义为().

答案:定义了一个指向具有6个元素的一维数组的指针变量C语言中,char类型数据占().

答案:1个字节设j和k都是int类型,则for循环语句for(j=0,k=-1;k=1;j++,k++)printf("****\n");().

答案:是无限循环若变量已正确定义并赋值,下面符合C语言语法的表达式是().

答案:a=b=c+2设char型变量x中的值为10100111,则表达式(2+x)^(~3)的值是().

答案:1010101为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量.

答案:register若有double*p,x[10];inti=5;使指针变量p指向元素x[5]的语句为().

答案:p=&x[i];若有inta[10],*p;p=&a[5];则P[-1]是合法的.

答案:对inti,*p=&i;是正确的C说明.

答案:对一个C程序中至少有一对大花括号{}.

答案:对typedeflongintBIGGY;的作用是给长整型起了一个别名BIGGY.

答案:对charc[]="VeryGood";是一个合法的为字符串数组赋值的语句.

答案:对C语言规定,在一个源程序中,main函数的必须在最开始.

答案:错程序中的变量代表内存中的一个存储单元,它的值不可以随时修改.

答案:错inta=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为3.

答案:错C语言程序中,当调用函数时实参和形参各占一个独立的存储单元.

答案:对inta[3][4]={{1},{5},{9}};它的作用是将数组各行第一列的元素赋初值,其余元素值为0.

答案:对若有inta[3][4];*(a+1)+2表示a[1][2]元素的地址.

答案:对指针就是一个变量的地址.

答案:对下列变量定义中合法的是().

答案:short_a=1-.1e-1;判断char型变量cl是否为小写字母的正确表达式是().

答案:(cl>='a')&&(cl<='z')在C语言中,一维数组的定义方式为:类型说明符数组名().

答案:[整型常量]在C语言中,int、char和short三种类型数据在内存中所占用的字节数().

答案:由所用机器的机器字长决定经过以下语句定义后,表达式z+=x>y?++x:++y的值为().intx=1,y=2,z=3;

答案:6C语言中,double类型数据占().

答案:8个字节以下能正确定义数组并正确赋初值的语句是().

答案:intd[3][2]={{1,2},{34}};能将高级语言编写的源程序转换为目标程序的是().

答案:编译程序C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为().

答案:int下列程序的输出结果是().main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;break;}printf("a=%d,b=%d\n",a,b);}

答案:a=2,b=1下列运算符中,不属于关系运算符的是().

答案:!下列定义数组的语句中不正确的是().

答案:staticinta[][]={{1,2,3},{4,5,6}};切换编辑窗和信息窗的命令键是().

答案:F6下列程序的输出结果是().main(){inta=7,b=5;printf("%d\n",b=b/a);}

答案:0while(fabs(t)<1e-5)if(!s/10)break;循环结束的条件是().

答案:t>=1e-5&&t<=-1e-5C语言中要求对变量作强制定义的主要理由是().

答案:便于确定类型和分配空间下列运算符中优先级最高的是().

答案:+执行语句for(i=1;i++<4;);后变量i的值是().

答案:5以下对枚举类型名的定义中正确的是().

答案:enuma{sun=9,mon=-1,tue};若有定义:int*p[3];,则以下叙述中正确的是().

答案:定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针for(i=0,k=-1;k=1;k++,i++)printf("*\n");是无限循环.

答案:对char*s;scanf("%s",s)是正确的.

答案:错C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的.

答案:对C语言中字符型、整型、实型都能用八进制表示.

答案:错与if(E)语句中的(E)等价的表达式是(E==0).

答案:错7&3+12的值是15.

答案:错在C语言中,调用函数必须在一条独立的语句中完成.

答案:错for(i=0;i<9;i++)能控制循环10次.

答案:错设C语言中,int类型数据占2个字节,则short类型数据占().

答案:2个字节以下不正确的说法是:C语言规定().

答案:形参可以是常量,变量或表达式以下程序的运行结果是().main(){intn;for(n=1;n<=10;n++){if(n%3==0)continue;printf("%d",n);}}

答案:12457810若a是float型变量,b是unsigned型变量,以下输入语句中合法的是().

答案:scanf("%f%3o",&a,&b);凡是函数中未指定存储类别的局部变量,其隐含的存储类别为().

答案:自动(auto)若使用一维数组名作函数实参,则以下正确的说法是().

答案:必须在主调函数中说明此数组的大小经过下列的语句intj,a[10],*p;定义后,下列语句中合法的是().

答案:p=a+2;下列表达式中,可作为C合法表达式的是().

答案:(3,2,1,0)putchar函数可以向终端输出一个().

答案:字符或字符型变量值chara[]="Thisisaprogram.";输出前5个字符的语句是().

答案:printf("%.5s",a);以下字符中不是转义字符的是().

答案:\c'若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为().

答案:printf("%d",*p[5]);若k,g均为int型变量,则下列语句的输出为().k=017;g=111;printf("%d\t",++k);printf("%x\n",g++);

答案:166f若有int*p=(int*)malloc(sizeof(int));则向内存申请到内存空间存入整数123的语句为().

答案:scanf("%d",p);设C语言中,int类型数据占2个字节,则long类型数据占().

答案:4个字节表达式18/4*4.0/8值的数据类型为().

答案:float若有chars1[]="abc",s2[20],*t=s2;gets(t);则下列语句中能够实现当字符串s1大于字符串s2时,输出s2的语句是().

答案:if(strcmp(s1,t)>0)puts(s2);已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是().

答案:1以下不是无限循环的语句为().

答案:for(y=0,x=1;x>++y;x=i++)i=x;intn;scanf("%d",&n);inta[n];是不合法的.

答案:对在C语言程序设计中,"/*"和"*/"之间的内容是C语言的注释.

答案:对for(;;);是错误的.

答案:错以下各数均不是合法的八进制数:256、03A2、-0127.

答案:错已知ch是字符型变量,则ch="\";是正确的赋值语句.

答案:错若有inta[3][4];*(*(a+1)+2)表示a[1][2]元素的值.

答案:对longinta[10];scanf("%ld",a);可从键盘上给a数组的所有元素输入值.

答案:错将一维双精度实数数组x的下标为i的变量的地址赋给指针变量p的语句为:double*p,x[10];inti=5;p=&x[i];

答案:对将函数fun的入口地址赋给指针变量p的语句是p=fun;

答案:对调用scanf()函数进行字符数组输入时,空格和换行符都可以作为字符串的一部分而能读入.

答案:错C程序在执行过程中对预处理命令进行处理.

答案:错以下程序的输出结果是().main(){chars[]="123",*p;p=s;printf("%c%c%c\n",*p++,*p++,*p++);}

答案:321以下叙述不正确的是().

答案:在C程序中,注释说明只能位于一条语句的后面以下运算符中优先级最低的是().

答案:||C语言程序中,当调用函数时().

答案:实参和虚参各占一个独立的存储单元C语言的注释定界符是().

答案:/**/当调用函数时,实参是一个数组名,则向函数传送的是().

答案:数组的首地址在位运算中,操作数每右移一位,其结果相当于().

答案:操作数除以2执行下面程序后,输出结果是().main(){inta=45,b=27,c=0;c=max(a,b);printf("%d\n",c);}intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}

答案:45以下描述中正确的是().

答案:在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作以下能对一维数组a进行正确初始化的语句是().

答案:inta[]={0};在C语言中,函数的隐含存储类别是().

答案:extern[3,6,18,23]是合法的表达式.

答案:错在一个C程序中,main函数必须出现在所有函数之前.

答案:错在调用函数时,实参把值传送给对应位置上的形参,形参的值不能传给实参.

答案:对一个#include命令只能指定一个被包含文件.

答案:对数组说明inta[3,3]={1,2,3,4,5,6},是正确的.

答案:错C语言的数组只能存放int和float类型的数据.

答案:错若有宏定义:#defineS(a,b)t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的.

答案:错下列四个选项中,均是C语言关键字的选项是().

答案:switchtypedefcontinue两个指针变量不可以().

答案:相加若输入ab,程序运行结果为().main(){staticchara[2];scanf("%s",a);printf("%c,%c",a[1],a[2]);}

答案:b,设intx=1,y=1;表达式(!x||y--)的值是().

答案:1以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是().

答案:chars[10];s="abcdefg";若有说明:inta[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是().

答案:3以下选项中,与k=n++完全等价的表达式是().

答案:k=n,n=n+1对for(表达式1;;表达式3)可理解为().

答案:for(表达式1;1;表达式3)以下各选项企图说明一种新的类型名,其中正确的是().

答案:typedefintv3;以下对C语言函数的描述中,正确的是().

答案:C程序必须由一个或一个以上的函数组成for(i=0,k=-1;k=1;k++,i++)printf("*\n");循环体一次也不执行.

答案:错在C程序中,%是只能用于整数运算的运算符.

答案:对inta[10];for(i=1;i<=10;i++)a[i-1]=i;能使数组元素分别取值{1,2,3,4,5,6,7,8,9,10}

答案:对在C语言的函数中,必须有形参.

答案:错定义结构体的保留字是struc.

答案:错常量M取值10.6可用#defineM10.6来定义.

答案:对若有inta[10],*p;p=&a[5];则P[-1]是不合法的.

答案:错在C语言中,逻辑"真"等价于不等于0的数.

答案:对C程序中的关键字必须小写,其他标识符不区分大小写.

答案:错若有inta[10],*p=a;则p++和a++的作用相同.

答案:错以下定义语句中,错误的是().

答案:intn=5,a[n];执行以下程序段后,输出结果和a的值是().inta=10;printf("%d",a++);

答案:10和11先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是().

答案:c='a';在C语言中,调用函数除函数名外,还必须有().

答案:()以下程序的输出结果为().main(){inta=1,b=2,c=3,d=4,e=5;printf("%d\n",func((a+b,b+c,c+a),(d+e)));}intfunc(intx,inty){return(x+y);}

答案:13若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是().

答案:int*p=&x;以下正确的说法是:在C语言中().

答案:实参和与其对应的形参各占用独立的存储单元以下所列的C语言常量中,错误的是().

答案:1.2e0.5C语言中函数调用的方式有().

答案:函数调用作为语句、函数表达式或函数参数三种一个字符变量只能存储一个字符.

答案:对三种循环(while语句、for语句、do-while语句)都可以用来处理同一个问题,一般它们可以相互代替.

答案:对for(m=22;m<1000;m++)if(m%3==0&&m%7!=0)break;是当m能被3整除或m不能被7整除时,结束本次循环进入下次循环.

答案:错设x、t均为int型变量,则执行语句"x=10;t=x&&x>10;"后,t的值为0.

答案:对inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则p+5相当于a[5].

答案:错如果想使一个数组中全部元素的值为0,可以写成inta[10]={0*10};

答案:错一个include命令可以指定多个被包含的文件.

答案:错C语言中只能逐个引用数组元素而不能一次引用整个数组.

答案:对在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式().

答案:可用任意表达式以下常量中,能够代表逻辑"真"值的常量是().

答案:0'下列程序的输出为().main(){inty=10;while(y--);printf("y=%d\n",y);}

答案:y=-1假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是().

答案:8若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是().

答案:&a,&*point,pointa,b为整型变量,二者均不为0,以下关系表达式中恒成立的是().

答案:a/b*b+a%b==a结构化程序设计所规定的三种基本控制结构是().

答案:顺序、选择、循环inta[2][3];按照它在内存的排列次序,a数组的所有元素是a[0][0]、a[1][0]、a[0][1]、a[1][1]、a[0][2]、a[1][2].

答案:错用户定义的函数也可调用main函数.

答案:错若a是实型变量,在执行了a=5;后,a将变为整型变量.

答案:错若有#defineS(a,b)a*b则语句area=S(3,2);area的值为6.

答案:对chara1[]="LiMing",a2[10];strcpy(a2,a1);puts(a2);能将a1串赋给a2并输出.

答案:对关系运算符<=与==的优先级相同.

答案:错数组定义chara[10];占内存10个字节.

答案:对若用数组名作为函数的实参,传递给形参的是().

答案:数组的首地址C语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是().

答案:单向值传递下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是().

答案:23设有定义:intn=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是().

答案:*p=5;求平方根函数的函数名为().

答案:sqrtC语言中while和do-while循环的主要区别是().

答案:do-while的循环体至少无条件执行一次若有以下定义:chars='\092';则该语句().

答案:定义不合法,s的值不确定在位运算中,操作数每左移一位,其结果相当于().

答案:操作数乘以2已知p,p1为指针变量,a为数组名,j为整型变量,下列赋值语句中不正确的是().

答案:p=10;C语言允许函数类型缺省定义,此时函数值隐含的类型是().

答案:int在C语言中,变量必需先定义后使用.

答案:对C语言的if语句嵌套时,if与else的匹配关系是每个else与if的匹配是任意的.

答案:错chara[10]="abcdefg";printf("%.6s\n",a);只输出前六个字符.

答案:对fabs()是C语言取绝对值的数学函数.

答案:对当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址.

答案:对C语言规定,函数返回值的类型是由在定义该函数时所指定的函数类型所决定的.

答案:对循环嵌套执行时,先由内层循环进入外层循环.

答案:错若x为float型变量,则以下语句x=213.82631;printf("%-4.2f\n",x);的输出为213.82.

答案:错continue语句不只用于循环语句中.

答案:错sqrt(m)是求m平方的函数.

答案:错inta[]={3.1,5.8,6.7,-3.6},i;for(i=0;i<4;i++)printf("%d",a[i]);能输出数组元素a[2]的值.

答案:错相同结构体类型的变量之间,可以().

答案:赋值inta[10];合法的数组元素的最小下标值为().

答案:0以下错误的描述是:函数调用可以().

答案:做为一个函数的形参将数组a的首地址赋给指针变量p的语句是p=a;

答案:对inti=20;switch(i/10){case2:printf("A");case1:printf("B");}的输出结果为A.

答案:错return语句必须在每个函数中都出现.

答案:错数组的特点是,数组元素排列有序且数据类型相同.

答案:对若有定义和语句:inta[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++)sum+=a[i][2-i];则sum=21.

答案:对staticchars[];s="China";是正确的.

答案:错下列数组说明中,正确的是().

答案:staticcharstr[]="China";在说明语句:int*f();中,标识符f代表的是().

答案:一个返回值为指针型的函数名下列字符序列中,不可用作C语言标识符的是().

答案:#ab若a和b的类型相同,在执行了a=b;后,b中的值将丢失.

答案:错字符常量的长度肯定为1.

答案:对在调用函数时,实参把值传送给对应位置上的形参,形参的值也能传给实参.

答案:错inti=3,j=5;if(i>j);j++;elsei++;是正确的.

答案:错C程序中有调用关系的所有函数必须放在同一个源程序文件中.

答案:错在C语言中,要求运算数必须是整型的运算符是().

答案:%假设所有变量均为整型,表达式:a=2,b=5,a>b?a++:b++,a+b的值是().

答案:8C语言能正确处理的指数是().

答案:123e9char*match(charc)是().

答案:函数定义的头部已知year为整型变量,不能使表达式(year%4==0&&year%100!=0)||year%400==0的值为"真"的数据是().

答案:1990在C语言中,5种基本数据类型的存储空间长度的排列顺序为:char

答案:对设x、t均为int型变量,则执行语句"x=10;t=x&&x<=10;"后,t的值为1.

答案:对将一维数组a的第i个元素的地址赋给指针变量p的语句是p=&a[i];

答案:对在C程序中,赋值运算符的优先级最低.

答案:错以下选项中合法的实型常数是().

答案:.2以下函数调用语句中实参的个数是().func((e1,e2),(e3,e4,e5));

答案:2函数的形式参数隐含的存储类型说明是().

答案:auto在C语言的函数中,可以有也可以没有形参.

答案:对对数组各元素的存取完全可以不用下标变量而用指针来代替.

答案:对数组说明inta[3][]={1,2,3,4,5};是正确的.

答案:错一个指针变量只能指向同一类型变量.

答案:对inta[10],I=3;scanf("%d",&a[I]);是正确的.

答案:对在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量.

答案:对函数的定义和函数的调用均可以嵌套.

答案:错数组名是一个不可变的地址常量,不能对它进行赋值运算.

答案:对共同体变量所占的内存长度等于最长的成员的长度.

答案:对对枚举类型名的定义enuma{sum=9,mon=-1,tue};是正确的.

答案:对staticchara[]="Thisisaprogram.";printf("%s",a);是正确的.

答案:对intx=3,y=2;printf("%d",x*=y+8);输出为30.

答案:对if语句后面的控制表达式只能使用关系表达式或逻辑表达式.

答案:错staticcharstr[]="China";没有定义数组元素个数.

答案:错在C语言中,此定义和语句是合法的:enumaa{a=5,b,c}bb;bb=(enumaa)5;

答案:对语句scanf("%7.2f",&a);是一个合法的scanf函数.

答案:错do-while循环是先执行循环体语句,后判断表达式的值.

答案:对若有说明intc;则while(c=getchar());是正确的C语句.

答案:对进行宏定义时,宏名必须使用大写字母表示.

答案:错枚举类型的数据与字符串在使用上相同.

答案:错指针变量p进行自加运算(即执行p++;)后,地址偏移值为2,则其数据类型为().

答案:int以下对一维整型数组a的正确说明是().

答案:#defineSIZE10(换行)inta[SIZE];chara[10];不能将字符串"abc"存储在数组中的是().

答案:a="abc";在C语言中,char型数据在内存中的存储形式是().

答案:ASCII码若有定义:char*p1,*p2,*p3,*p4,ch;则不能正确赋值的程序语句为().

答案:*p3=getchar();下列选项中,合法的C语言关键字是().

答案:default以下函数调用语句中实参的个数是().exce((v1,v2),(v3,v4,v5),v6);

答案:3若有说明:inta[][4]={0,0};则下面不正确的叙述是().

答案:有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0在C语言中,能代表逻辑值"真"的是().

答案:非0的数C语言结构体类型变量在程序执行期间().

答案:所有成员一直驻留在内存中经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为().charx=65;floaty=7.3;inta=100;doubleb=4.5;

答案:1,4,2,8若有说明:int*p,m=5,n;以下正确的程序段是().

答案:p=&n;*p=m;用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是().longa=0xffffff;intb;charc;

答案:-1和97下列定义不正确的是().

答案:intmax(x,y);intx,y;{}以下不正确的定义语句是().

答案:inty[5]={0,1,3,5,7,9};以下不能正确定义二维数组的选项是().

答案:inta[2][]={{1,2},{3,4}};设有以下语句,若0charstr[4][2]={"aaa","bbb","ccc","ddd"},*strp[4];intj;for(j=0;j<4;j++)strp[j]=str[j];

答案:strp若有inta[][2]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为().

答案:&a[1][0],2能正确表示逻辑关系:"a≥10或a≤0"的C语言表达式是().

答案:a>=10‖a<=0下列语句的输出结果是().printf("%d\n",(int)(2.5+3.0)/3);

答案:1在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为().

答案:0C语言规定,在一个源程序中,main函数的位置().

答案:可以任意以下描述中,正确的是().

答案:C源程序中凡是行首以#标识的控制行都是预处理指令对于void类型函数,调用时不可作为().

答案:表达式若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是().

答案:函数调用可以作为一个函数的形参具有相同类型的指针变量p与数组a,不能进行的操作是().

答案:p=&a;inta=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为().

答案:2一个C语言程序是由().

答案:函数组成C语言中以下几种运算符的优先次序()的排列是正确的.

答案:由高到低为:!,算术运算符,关系运算符,&&,||,赋值运算符若二维数组a有m列,则在a[i][j]前的元素个数为().

答案:i*m+j当定义一个结构体变量时,系统分配给它的内存是().

答案:各成员所需内存量的总和在以下给出的表达式中,与do--while(E)语句中的(E)不等价的表达式是().

答案:(E==0)执行下列程序后,其输出结果是().main(){inta=9;a+=a-=a+a;printf("%d\n",a);}

答案:-18C语言中不可以嵌套的是().

答案:函数定义以下程序的输出结果为().main(){inti=010,j=10;printf("%d,%d\n",++i,j--);}

答案:9,10若有int*p,a;p=&a,下列说法不正确的是().

答案:*(p++)==a++下列数据中,为字符串常量的是().

答案:"house"下面判断正确的是().

答案:char*s="china";等价于char*s;s="china";在C语言中,引用数组元素时,其数组下标的数据类型允许是().

答案:整型常量或整型表达式以下程序段中,不能够正确地执行循环的是().

答案:staticinta;while(a)若有int*p,a;p=&a,下列说法不正确的是(

).

答案:*(p++)==a++若有以下的定义:intt[3][2];能正确表示t数组元素地址的表达式是(

).

答案:t[2]charh,*s=&h;可将字符H通过指针存入变量h中的语句是(

).

答案:*s='H';若有下列定义,则对a数组元素地址的正确引用是(

).

inta[5],*p=a;

答案:*(a+

温馨提示

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

最新文档

评论

0/150

提交评论