程序设计基础智慧树知到答案章节测试2023年南京理工大学_第1页
程序设计基础智慧树知到答案章节测试2023年南京理工大学_第2页
程序设计基础智慧树知到答案章节测试2023年南京理工大学_第3页
程序设计基础智慧树知到答案章节测试2023年南京理工大学_第4页
程序设计基础智慧树知到答案章节测试2023年南京理工大学_第5页
免费预览已结束,剩余7页可下载查看

下载本文档

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

文档简介

第一章测试以下可以作为C++自定义标识符的是:

A:123

B:dollar$

C:break

D:sqrt

答案:D下列选项中合法的用户标识符是:

A:3Dmax

B:

_2Text

C:10ng

D:

A.dat

答案:B以下各选项组中,均可作为自定义标识符的组是:

A:shod

No.1

sta

B:No1

Cout

a

C:

i

while

>=

D:public

_No1

this

答案:B以下说明语句中,正确的是:

A:intFor,INT;

B:inta,break;

C:inta.cpp;

D:intx,%y;

答案:A以下不符合C++语法规则的数值常量是:

A:2E1.4

B:0Xab23

C:

034

D:2.1E3

答案:A存储下列数据,占用存储字节最多的是:

A:

“0”

B:

‘0’

C:0

D:0.0

答案:D

执行语句unsigneda=-1;autoc=a;后,c的类型为:

A:char

B:int

C:unsigned

D:long

答案:C在VC++中,基本数据类型所占字节长度,正确的是:

A:char<int<double<float

B:char<short<float<int

C:char<int<float<double

D:char<short<int<double

答案:D

以下说明语句中,不存在语法错误的是

A:charX.txt[20];

B:int10long;

C:int_2int;

D:floatX3-Dmax;

答案:C以下选项中,不能将字母A的ASCII码保存到变量ch的语句是:

A:charx=’101’;

B:charx=65;

C:charx=’A’;

D:charx=“A”;

答案:D第二章测试

以下运算符中运算对象一定不能是double类型的是:

A:<=

B:%

C:=

D:/

答案:B设有语句:charx=6,y=10;intz;z=(x^y)<<2;则z的值是:

A:-52

B:48

C:-4

D:3

答案:B设有ints=-2;则执行表达式s++||++s后s的值为:

A:1

B:0

C:-1

D:-2

答案:C设有inta=3,b=2,x=4;则cout<<(a<x<b)输出为:

A:0

B:1

C:5

D:3

答案:B若有声明intm=7,n=4;floata=38.4,b=6.4,x;则执行语句x=m/2*n+a/b+1/2;后,x的值为:

A:20

B:20.5

C:18

D:18.5

答案:C若有inta=1,b=2,c=3,d=4;则表达式b<a?a:c<d?c:d的值为(运算符?:的结合性为从左向右):

A:4

B:1

C:2

D:3

答案:D执行下面语句:

inti=-5;

cout<<-(i++)<<“;”;

cout<<i<<endl;输出结果是下面哪一个?

A:5;-4

B:5;-5

C:4;-4

D:4;-5

答案:A尝试执行下面语句:

unsignedinti=2;

intj=-3;

cout<<(i*j)<<endl;输出结果是下面哪一个?

A:一个无符号整数

B:

-6

C:6

D:编译出错,无输出

答案:A下列字符串常量表示中,错误的是()。

A:““yes”or”

B:

“””

C:“abcdef”

D:“ABCD"

答案:A

设inta=5,b;,执行以下代码后,b的值不为2的是:

A:b=6-(a–);

B:b=a/2;

C:b=a^7;

D:b=a>>1;

答案:A第三章测试执行以下语句:for(intk=43210;k=k/10;cout<<k%10);其输出结果是:

A:43210

B:4321

C:1234

D:01234

答案:C执行程序段:

intx,y;

x=3;

do{

y=x–;

if(!y){cout<<‘#’;continue;}

cout<<‘#’;

}while((x=1)||(x=2));

A:将输出##

B:将进入死循环

C:含有不合法的控制表达式

D:将输出###

答案:B执行程序段:

intx=6;

do{

if(x%3){cout<<‘#’;continue;}

}while(x–);

A:将输出###

B:将输出####

C:将输出#

D:将输出##

答案:B执行以下语句,输出结果是intx=3;

do{

cout<<(x-=2)<<”“;

}while(!–x);

A:

0-2

B:

1

C:

0-1

D:

30

答案:A

执行程序段

intk=5,n=0;

while(k–)

switch(k)

{

case1:

case3:n+=1;break;

default:n+=2;

case2:

case4:n+=3;break;

}后,n和k的值分别为:

A:10-1

B:13-1

C:80

D:100

答案:B以下语句段执行结果:

inta=2,b=0;while(!b–)cout<<a–<<’’<<b;

A:没有输出

B:2-1

C:1-1

答案:B

在下列选项中,没有构成死循环的语句段是:

A:intk=1000;do{k;}while(k>1000);

B:inti=100;while(1){i=i%100;if(i>=100)break;}

C:for(;;);

D:ints=3;while(s);–s;

答案:A

以下说法正确的是:

A:for语句如果第2个表达式为空,则必然进入死循环。

B:执行do-while语句时,可能不执行循环体语句。

C:do-while语句总能用while或for语句实现

D:while语句中,循环体语句可能是一条语句,也可能没有语句。

答案:C下面程序输出是:usingnamespacestd;#includeintt(){

staticinti;

i+=5;

returni;}intmain(void){

cout<<t()<<‘;

cout<<t()<<’’;return0

;}

A:510

B:55

C:05

D:随机数

答案:A以下关于文件包含的描述中正确的是_____

A:#include后面的文件名用双引号(““)括起和尖括号(<>)括起完全等效

B:#include命令行可以出现在源程序中需要的任意行

C:用#include所包含的文件称为头文件,必须以.h作为扩展名

D:每个C++程序必须包含预处理命令:#include<iostream.h>

答案:B第四章测试设有“#defineM(a,b,c)a*b-c”,执行“cout<<M(2+3,2+3,4);”输出为

A:7

B:1

C:21

D:0

答案:A若有宏:

#defineAA10#defineD(x)xx则执行cout<<D(1+2)AA;,输出结果为:

A:23

B:50

C:编译出错

D:90

答案:A考虑函数原型voidtest(int,char=’*’,int=7);以下合法的函数调用是:

A:test(5,6,“%”);

B:test(5,“&”,6);

C:test(5)

D:test(5,“0”);

答案:C下列定义中不正确的是:

A:intmax(x,y);

B:#defineS345

C:#definePI3.1415926

D:staticcharc;

答案:A以下正确的说法是:

A:用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中

B:系统不允许用户重新定义标准库函数

C:用户可以重新定义标准库函数,若如此,该函数将失去原有含义

D:用户调用标准库函数前,必须重新定义

答案:C要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用:

A:递归函数

B:带缺省值的函数

C:重载函数

D:内联函数

答案:D不能作为重载函数的调用的依据是

A:函数名称

B:函数返回类型

C:参数个数

D:参数类型

答案:B尝试执行下面程序:usingnamespacestd;#includevoidf(intn){

if(n/10){cout<<n%10<<“,”;f(n/10);}

else

cout<<n;}intmain(){f(638);

cout<<endl;return0;}输出结果为:

A:8,3

B:6,3,8

C:8,3,6

D:语法错

答案:C下面程序输出是:usingnamespacestd;#includeintt(){

staticinti;

i+=5;

returni;}intmain(void){

cout<<t()<<‘;

cout<<t()<<’’;return0

;}

A:05

B:510

C:随机数

D:55

答案:B以下关于文件包含的描述中正确的是_____

A:每个C++程序必须包含预处理命令:#include<iostream.h>

B:

#include后面的文件名用双引号(““)括起和尖括号(<>)括起完全等效

C:用#include所包含的文件称为头文件,必须以.h作为扩展名

D:#include命令行可以出现在源程序中需要的任意行

答案:D第五章测试执行下面语句,输出结果是______。

intb[3][3]={0,1,2,0,1,2,0,1,2},t=1;

for(inti=0;i<3;i++)

for(intj=i;j<=i;j++)

t+=b[i][i]+b[j][j];

cout<<t<<endl;

A:7

B:4

C:6

D:9

答案:A以下正确的数组定义语句是:

A:chard[5]=“CHINA”;

B:

floatc[][3]={1,2,3,4,5};

C:chara[5]={‘1’,‘2’,‘3’,‘4’,‘5’,‘’};

D:intb[2][]={{1},{2}};

答案:B设有说明性语句:chars[]=“a’\029”;,sizeof(s)的结果是:

A:4

B:3

C:5

D:6

答案:C一个数组作为实参调用某个函数,实际传递给形参的值是

A:该数组的长度。

B:该数组的元素个数。

C:该数组的首地址。

D:整个数组。

答案:C设有说明语句:chars[80]=”Hello”;inta[20]={1,2};下列选项中,存在语法错误的是________。

A:cin>>a;

B:cin>>s;

C:cout<<a;

D:cout<<s;

答案:A若有说明语句:inty[][4]={0,0};则下面叙述不正确的是

A:

只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0

B:

二维数组y的行数为1

C:数组y的每个元素都可得初值0

D:该说明等价于inty[][4]={0};

答案:A设有声明”intp[10]={1,2},i=0;“,以下语句中与”p[i]=p[i+1],i++;“等价的是:

A:

p[++i]=p[i];

B:i++,p[i-1]=p[i];

C:p[++i]=p[i+1];

D:p[i]=p[i++];

答案:B设有说明语句:chars[5][5]={“abc”,“efgh”};值为字符g的数组元素是:

A:

s[1][2]

B:s[4][4]

C:s[1][4]

D:s[1][3]

答案:A以下数组声明中正确的是:

A:

inta[3.14];

B:inta[2+3]={0};

C:inta[3]={1,2,3,4};

D:inta[];

答案:B以下选项中,能正确计算a数组中元素个数的表达式是:

A:sizeof(a[0])/sizeof(a);

B:sizeof(a)/sizeof(a[0]);

C:a[0]/sizeof(a)

D:a/sizeof(a)

答案:B第六章测试假设有下面语句:enumtag{Up=1,Down,Left,Right}a;下面哪一条语句不正确:

A:a=Down;

B:a=tag(2);

C:a=2;

D:a=(tag)2;

答案:C下面哪一条语句不正确:

A:enumGender{female,male};

B:Personfather;

C:structPerson{

charname[20];

Gendersex;

D:};Personmembers[30];

答案:B设有以下枚举说明语句:enumweekday{Mon=1,Tues,Wed,Thurs,Fri,Sat,Sun=0}week;下面那一条赋值语句是错误的?

A:week=weekday(1);

B:week=(weekday)1;

C:week=Mon;

D:week=1;

答案:D

设有结构定义及变量声明如下:

structproduct

{charcode[5];

floatprice;

}y[4]={“200”,100};

以下表达式中正确的是:

A:y.price=100;

B:y[0].code[0]=45;

C:y.code[0]=‘b’;

D:y[0].code=‘a’;

答案:B设有语句:structxy{intx;floaty;charz;}example;下面哪一个叙述错误?

A:struct是结构类型的关键字

B:xy是结构类型的名称

C:x,y,z都是结构的成员名称

D:example是结构类型的名称

答案:D已知有声明“structdata{inty,m;}i={2014,6},j={0};”,以下选项中合法的语句是:

A:j={i.y,i.m};

B:j=i;

C:i++;

D:cout<<i;

答案:B设有以下语句:unionNumeric{inti;floatf;doubled;}u;变量u所占存储单元的字节数为:

A:2

B:8

C:4

D:16

答案:B下面代码的输出结果是。intmain(void){unionbaby{charname[10];intnumber;}b={“YangYang”};cout<<<<”“;b.number=65;cout<<<<”“<<b.number<<endl;return0;}

A:

YangYangA65

B:YangYang65

C:YangYang6565

D:YangYangYangYang65

答案:A有以下语句:structPoint{intx,y;}ps[3]={{1,2},{3,4}};那么ps[1].x和ps[2].y的值分别是:

A:34

B:14

C:12

D:30

答案:D设有语句structmys{intm1;intm2;};下面哪一个语句是错误的?

A:mysa1=();

B:mysa0;

C:mysa3{5,6};

D:mysa2={5};

答案:A第七章测试要使语句p=newdouble[20];能够正常执行,p应声明为:

A:double(p)[20];

B:doublep;

C:doublep;

D:double&p;

答案:B**以下说明语句中正确的是:

A:intpi,&pref=pi;

B:int&refa[10];

C:inta,&ra=a,&*refp=&ra;

D:inta,&ra=a,&&ref=ra;

答案:A以下程序的执行结果是:voidf1(intx){++x;}voidf2(int&x){x++;}voidf3(intx){++x;}intmain(){

inta=10;

f1(&a);f2(a);f3(a);

cout<<a;}

A:11

B:13

C:12

D:10

答案:C若有语句inta,(fun)(int);fun表示____

A:一个函数名,该函数返回int;

B:指向函数的指针,该函数返回int*;

C:指向函数的指针,该函数返回int;

D:一个函数名,该函数返回int;

答案:B已知有声明:int

a[][4]={1,2,3,4,5,6,7,8,9,10,11,12,13};若需要引用值为12的数组元素,则下列选项中错误的是:

A:(a[2]+3)

B:a[2][3]

C:((a+2)+3)

D:(a+2)[3]

答案:D有声明:int*a[]={newint{2},newint[4]{3,4,5},newint[3]{6,7,8}};则a[2]的值是:

A:值为6的数据地址

温馨提示

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

评论

0/150

提交评论