智慧树知到答案程序设计基础最新答案

内容查看
查看价格15

第一章 单元测试

1、单选题:
以下可以作为C++自定义标识符的是:
选项:
A:sqrt
B:break
C:123
D:dollar$
答案: 【sqrt】

2、单选题:
下列选项中合法的用户标识符是:
选项:
A:3Dmax
B: A.dat
C: _2Text
D:10ng
答案: 【 _2Text】

3、单选题:
以下各选项组中,均可作为自定义标识符的组是:
选项:
A: i        while      >=
B:public   _No1    this
C:No1    Cout      a
D:shod     No.1     sta
答案: 【No1    Cout      a】

4、单选题:
以下说明语句中,正确的是:
选项:
A:int a,break;
B:int For,INT;
C:int x,%y;
D:int a.cpp;
答案: 【int For,INT;】

5、单选题:
以下不符合C++语法规则的数值常量是:
选项:
A:0Xab23
B:2.1E3
C: 034
D:2E1.4
答案: 【2E1.4】

6、单选题:
存储下列数据,占用存储字节最多的是:
选项:
A:0
B: “0”
C: ‘0’
D:0.0
答案: 【0.0】

7、单选题:
执行语句unsigned a=-1;auto c=a;后,c的类型为:
选项:
A:int
B:unsigned
C:long
D:char
答案: 【unsigned】

8、单选题:
在VC++中,基本数据类型所占字节长度,正确的是:
选项:
A:char<int<double<float
B:char<short<int<double
C:char<short<float<int
D:char<int<float<double
答案: 【char<short<int<double】

9、单选题:
以下说明语句中,不存在语法错误的是          。
选项:
A:float X3-Dmax;
B:char X.txt[20];
C:int 10long;
D:int _2int;
答案: 【int _2int;】

10、单选题:
以下选项中,不能将字母A的ASCII码保存到变量ch的语句是:
选项:
A:char x= “A”;
B:char x=65;
C:char x=’A’;
D:char x=’101’;
答案: 【char x= “A”;】

第二章 单元测试

1、单选题:
以下运算符中运算对象一定不能是double类型的是:
选项:
A:/
B:<=
C:=
D:%
答案: 【%  】

2、单选题:
设有语句:char x=6,y=10;int z; z=(x^y)<<2; 则z的值是:
选项:
A:3
B:-4
C:-52
D:48
答案: 【48】

3、单选题:
设有int s=-2; 则执行表达式s++||++s后s的值为:
选项:
A:0
B:1
C:-1
D:-2
答案: 【-1】

4、单选题:
设有int a=3,b=2,x=4; 则cout<<(a<x<b)输出为:
选项:
A:1
B:0
C:3
D:5
答案: 【1】

5、单选题:
若有声明int m=7,n=4;float a=38.4,b=6.4,x;则执行语句x=m/2*n+a/b+1/2;后,x的值为:
选项:
A:20
B:18
C:18.5
D:20.5
答案: 【18】

6、单选题:
若有int a=1,b=2,c=3,d=4; 则表达式b<a?a:c<d?c:d的值为(运算符?:的结合性为从左向右):

选项:
A:2
B:4
C:1
D:3

答案: 【3

7、单选题:
执行下面语句:     int i = -5;    cout<<-(i++)<<“;”;    cout<<i<<endl;

输出结果是下面哪一个?

选项:
A:5; -5
B:4;-4
C:5;-4
D:4;-5
答案: 【5;-4     】

8、单选题:
尝试执行下面语句:    unsigned int i = 2;    int j = -3;    cout<<(i*j)<<endl;

输出结果是下面哪一个?

选项:
A:一个无符号整数
B:6
C: -6
D:编译出错,无输出
答案: 【一个无符号整数 】

9、单选题:
下列字符串常量表示中,错误的是()。
选项:
A:””yes”or”
B: “Right””
C:”ABCDt”
D:”abcdef”
答案: 【””yes”or”】

10、单选题:
设int a=5,b;,执行以下代码后,b的值不为2的是:
选项:
A:b=a/2;
B:b=a>>1;
C:b=a^7;
D:b=6-(a–);
答案: 【b=6-(a–);   】

 

第三章 单元测试

1、单选题:
执行以下语句:for(int k=43210;k=k/10;cout<<k%10); 其输出结果是:
选项:
A:1234
B:4321
C:43210
D:01234
答案:

2、单选题:
执行程序段:  int x,y;  x=3;   do {     y=x–;     if(!y) {cout<<‘#’; continue;}     cout<<‘#’;   } while((x=1)||(x=2));

选项:
A:将进入死循环
B:含有不合法的控制表达式
C:将输出###
D:将输出##
答案:

3、单选题:
执行程序段:   int x=6;   do {     if(x%3) {cout<<‘#’; continue;}   } while(x–);

选项:
A:将输出#
B:将输出###
C:将输出##
D:将输出####
答案:

4、单选题:
执行以下语句,输出结果是int x=3;    do{    cout<<(x-=2)<<” “;   }while(!–x);

选项:
A: 0 -1
B: 0 -2
C: 3 0
D: 1
答案:

5、单选题:
执行程序段    int k=5,n=0;    while(k–)       switch(k)       {  case 1:          case 3:n+=1;break;          default:n+=2;          case 2:          case 4: n+=3;break;  }后,n和k的值分别为:

选项:
A:8 0
B:10 -1
C:13 -1
D:10 0
答案:

6、单选题:
以下语句段执行结果:   int a=2,b=0;while(!b–)cout<<a–<<‘ ‘<<b;

选项:
A:没有输出
B:2 -1
C:1 -1
答案:

7、单选题:
在下列选项中,没有构成死循环的语句段是:
选项:
A:int i=100;while(1){i=i%100;if(i>=100)break;}
B:int s=3;while(s);–s;
C:for(;;);
D:int k=1000;do{k;}while(k>1000);
答案:

8、单选题:
以下说法正确的是:
选项:
A:while语句中,循环体语句可能是一条语句,也可能没有语句。
B:执行do-while语句时,可能不执行循环体语句。
C:do-while语句总能用while或for语句实现
D:for语句如果第2个表达式为空,则必然进入死循环。
答案:

9、单选题:
下面程序输出是:using namespace std;#include <iostream>

int t(){

static int i;

i+=5;

return i;

}

int main(void){

cout << t() << ‘t’;

cout << t() << ‘n’;

return 0 ;

}

选项:
A:5 10
B:随机数
C:5 5
D:0 5
答案:

10、单选题:
以下关于文件包含的描述中正确的是_____
选项:
A:每个C++程序必须包含预处理命令:#include <iostream.h>
B:#include 后面的文件名用双引号(””)括起和尖括号(<>)括起完全等效
C:用#include 所包含的文件称为头文件,必须以.h作为扩展名
D:#include 命令行可以出现在源程序中需要的任意行
答案:

第四章 单元测试

1、单选题:

设有“#define M(a,b,c) a*b-c”,执行“cout<<M(2+3,2+3,4);”输出为

选项:
A:21
B:0
C:7
D:1
答案:

2、单选题:

若有宏:

#define AA 10

#define D(x) x*x

则执行cout<<D(1+2)*AA;,输出结果为:

选项:
A:50
B:编译出错
C:23
D:90
答案:

3、单选题:
考虑函数原型void test(int,char=’*’,int=7); 以下合法的函数调用是:
选项:
A:test(5,”0″);
B:test(5,”&” ,6);
C:test(5)
D:test(5,6,”%”);
答案:

4、单选题:
下列定义中不正确的是:
选项:
A:#define PI 3.1415926
B:#define S345
C:int max(x,y);
D:static char c;
答案:

5、单选题:
以下正确的说法是:
选项:
A:用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到用户源文件中
B:用户可以重新定义标准库函数,若如此,该函数将失去原有含义
C:系统不允许用户重新定义标准库函数
D:用户调用标准库函数前,必须重新定义
答案:

6、单选题:
要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用:
选项:
A:内联函数
B:递归函数
C:带缺省值的函数
D:重载函数
答案:

7、单选题:
不能作为重载函数的调用的依据是
选项:
A:参数个数
B:函数返回类型
C:函数名称
D:参数类型
答案:

8、单选题:

尝试执行下面程序:using namespace std;#include <iostream>

void f(int n){

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

else   cout<<n;

}

int main(){ f(638);  cout<<endl; return 0; }

输出结果为:

选项:
A:8,3
B:8,3,6
C:6,3,8
D:语法错
答案:

9、单选题:
下面程序输出是:using namespace std;#include <iostream>

int t(){

static int i;

i+=5;

return i;

}

int main(void){

cout << t() << ‘t’;

cout << t() << ‘n’;

return 0 ;

}

选项:
A:5 10
B:5 5
C:随机数
D:0 5
答案:

10、单选题:
以下关于文件包含的描述中正确的是_____

选项:
A:#include 命令行可以出现在源程序中需要的任意行
B:用#include 所包含的文件称为头文件,必须以.h作为扩展名
C: #include 后面的文件名用双引号(””)括起和尖括号(<>)括起完全等效
D:每个C++程序必须包含预处理命令:#include <iostream.h>
答案:

第五章 单元测试

1、单选题:
执行下面语句,输出结果是______。   int b[3][3] = {0,1,2,0,1,2,0,1,2},t = 1;   for(int i = 0; i < 3; i++)      for(int j = i; j <= i; j++)          t += b[i][i] + b[j][j];   cout<<t<<endl;

选项:
A:7
B:6
C:9
D:4
答案:

2、单选题:
以下正确的数组定义语句是:

选项:
A:

int b[2][ ]={{1}, {2}};

B:

char a[5]={‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ”};

C:char d[5]=”CHINA”;
D:

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

答案:

3、单选题:
设有说明性语句:char s[]=”a’29″;,sizeof(s)的结果是:
选项:
A:3

B:6
C:5
D:4
答案:

4、单选题:
一个数组作为实参调用某个函数,实际传递给形参的值是
选项:
A:整个数组。
B:该数组的元素个数。
C:该数组的首地址。
D:该数组的长度。
答案:

5、单选题:
设有说明语句:char s[80]=”Hello”; int a[20]={1,2}; 下列选项中,存在语法错误的是________。
选项:
A:cout<<s;
B:cin>>a;
C:

cout<<a;

D:cin>>s;
答案:

6、单选题:
若有说明语句:int y[ ][4]={0,0}; 则下面叙述不正确的是       。
选项:
A: 二维数组y的行数为1
B:数组y的每个元素都可得初值0

C:该说明等价于int y[ ][4]={0};
D: 只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0
答案:

7、单选题:
设有声明”int p[10]={1,2},i=0;”,以下语句中与”p[i]=p[i+1],i++;”等价的是:
选项:
A:p[i]=p[i++];
B: p[++i]=p[i];
C:p[++i]=p[i+1];
D:i++,p[i-1]=p[i];
答案:

8、单选题:
设有说明语句:char s[5][5] ={“abc”,”efgh”}; 值为字符g的数组元素是:

选项:
A:s[4][4]
B:s[1][4]
C:s[1][3]
D: s[1][2]
答案:

9、单选题:

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

选项:
A:int a[2+3]={0};
B: int a[3.14];
C:int a[];
D:int a[3]={1,2,3,4};

答案:

10、单选题:
以下选项中,能正确计算a数组中元素个数的表达式是:
选项:
A:a[0]/sizeof(a)
B:sizeof(a[0])/sizeof(a);
C:a/sizeof(a)
D:sizeof(a)/sizeof(a[0]);
答案:

第六章 单元测试

1、单选题:
假设有下面语句:

enum tag{Up=1,Down,Left,Right}a;

下面哪一条语句不正确

选项:
A:a=Down;
B:a=(tag)2;
C:a=2;
D:a=tag(2);
答案:

2、单选题:
下面哪一条语句不正确

选项:
A:enum Gender{female, male};
B:struct Person{

char name[20];

Gender sex;

C:Person father;
D:};

Person members[30];

答案:

3、单选题:
设有以下枚举说明语句:

enum weekday{Mon=1,Tues,Wed,Thurs,Fri,Sat,Sun=0}week;

下面那一条赋值语句是错误的?

选项:
A:week=weekday(1);
B:week=1;
C:week=Mon;
D:week=(weekday)1;
答案:

4、单选题:
设有结构定义及变量声明如下:      struct product      {char code[5];       float price;      }y[4]={“200”,100};   以下表达式中正确的是:

选项:
A:y.price=100;
B:y[0].code=’a’;
C:y[0].code[0]=45;
D:y.code[0]=’b’;
答案:

5、单选题:
设有语句:struct xy{ int x ; float y; char z ;} example; 下面哪一个叙述错误?
选项:
A:x,y,z 都是结构的成员名称
B:struct 是结构类型的关键字
C:xy 是结构类型的名称
D:example 是结构类型的名称
答案:

6、单选题:
已知有声明“struct data{int y,m;}i={2014,6},j={0};”,以下选项中合法的语句是:
选项:
A:j={i.y,i.m};
B:i++;
C:cout<<i;
D:j=i;
答案:

7、单选题:
设有以下语句:union Numeric{int i; float f; double d;}u;变量u 所占存储单元的字节数为:

选项:
A:2
B:16
C:8
D:4
答案:

8、单选题:
下面代码的输出结果是 。int main(void){

union baby {

char name[10];

int number;

}b={“YangYang”};

cout<<b.name<<” “;

b.number=65;

cout<<b.name<<” “<<b.number<<endl;

return 0;}

选项:
A:YangYang 65
B:YangYang 65 65
C: YangYang A 65
D:YangYang YangYang 65
答案:

9、单选题:
有以下语句:struct Point{int x, y;}ps[3]={{1, 2}, {3, 4}};那么ps[1].x 和ps[2].y 的值分别是:

选项:
A:3 4
B:3 0
C:1 4
D:1 2
答案:

10、单选题:
设有语句struct mys { int m1; int m2; }; 下面哪一个语句是错误的?
选项:
A:mys a1=();
B:mys a3{5, 6};
C:mys a0;
D:mys a2={5};
答案:

第七章 单元测试

1、单选题:
要使语句p=new double[20];能够正常执行,p应声明为:
选项:
A:double *p;
B:double **p;
C:double (*p)[20];
D:double &p;
答案:

2、单选题:
以下说明语句中正确的是:
选项:
A:int a,&ra=a,&&ref=ra;
B:int *pi,*&pref=pi;

C:int a,&ra=a,&*refp=&ra;
D:int &refa[10];
答案:

3、单选题:
以下程序的执行结果是:

void f1(int *x){++*x;}

void f2(int &x){x++;}

void f3(int x){++x;}

int main(){

int a=10;

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

cout<<a;

}

选项:
A:12
B:13
C:10

D:11
答案:

4、单选题:
若有语句int a, *(*fun)(int *);fun表示____
选项:
A:指向函数的指针,该函数返回int*;
B:一个函数名,该函数返回int;
C:一个函数名,该函数返回int*;
D:指向函数的指针,该函数返回int;

答案:

5、单选题:

已知有声明:

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]
答案:

6、单选题:

有声明:

int *a[]={new int{2},new int[4]{3,4,5},new int[3]{6,7,8}};

则a[2]的值是:

选项:
A:6
B:3
C:值为3的数据地址
D:值为6的数据地址
答案:

7、单选题:

关于void 指针,下列说法正确的是:

选项:
A:void 指针就是未指向任何数据的指针
B:指向任何类型数据的指针可直接赋值给一个void 指针
C:void 指针值可直接赋给一个非void 指针

D:void 指针就是已定义而未初始化的指针
答案:

8、单选题:

若有如下定义

struct  person

{  char  name[20];

int  age;

} pup[5],*p=pup;

则下列语句中对结构体成员的引用不正确的是:

选项:
A:cin>>(*p).age;
B:cin>>p[0]->name;
C:cin>>pup[0].age;
D: cin>>p->name;
答案:

9、单选题:

以下程序的可执行文件名为abc.exe,位于D盘根目录下,如果在命令行输入:

D:abc.exe we study cpp language <回车>,

该程序执行结果是:     #include <iostream.h>     void main(int argc, char *argv[]) {        cout<<argc<<”  ”<<argv[0]<<”  “<<argv[3]<<’n’;}

选项:
A:5  we  language
B:5  D:abc.exe  cpp
C:4  we  language
D:4  D:abc.exe  cpp
答案:

10、单选题:
假设函数原型和变量说明如下:

void f4(int **p);

int a[4] = {1,2,3,4};

int b[3][4] = {{1,2,3,4},                  {5,6,7,8},                  {9,10,11,12}};

int *q[3] = {b[0],b[1],b[2]};

下面哪个调用是合法的?

选项:
A:f4(&a);
B:f4(b);
C:f4(q);
D:f4(a);
答案:

0
觉得这篇文章对你有用的话,就打赏一下支持文章作者

评论0

站点公告

开放大学课程作业代写,有需要扫码加微信

显示验证码

社交账号快速登录