作业答案 发表于 2021-11-9 08:32:23

21秋南开《程序设计基础(上)》在线作业题目

21秋学期(1709、1803、1809、1903、1909、2003、2009、2103)《程序设计基础(上)》在线作业
1.[单选题] 下面定义的一维字符型数组中,存储的数据不是字符串的为##。

    A.char s[]="abc";
    B.char s[]={'a', 'b', 'c', '\0'};
    C.char s[]={'a', 'b', 'c'};
    D.char s="abc";
    答:——C——
2.[单选题] 已知“int *p; fun(p);”,其中,函数fun没有返回值,且其形参定义为引用调用方式,则下列给出的fun函数原型中正确的是##。
    A.void fun(int a[]);
    B.void fun(int *&a);
    C.void fun(int &a[]);
    D.void fun(int &*a);
    答:——B——
3.[单选题] 下面关于数组的描述中,错误的是##。
    A.数组的长度必须在定义数组时指定,且数组中所有元素的数据类型必须相同
    B.如果定义一维数组时提供了初始化列表,则数组的长度可以省略
    C.如果定义二维数组时提供了初始化列表,则数组的列下标可以省略
    D.如果定义二维数组时提供了初始化列表,则数组的行下标可以省略
    答:——C——
4.[单选题] 下面关于c++语言的描述错误的是(   )
    A.C++语言支持数据封装
    B.C++语言中引入友元没有破坏封装性
    C.C++语言允许函数名和运算符重载
    D.C++语言支持动态联编
    答:————
5.[单选题] 已知函数原型"void fun(int &a);",则下列关于fun函数的调用形式,正确的是##。
    A.int x=3;fun(x);
    B.const int y=3;fun(y);   
    C.fun(3);
    D.以上三种都正确
    答:————
6.[单选题] 已知fun()函数的函数原型为“void fun(int x, double y=3.5, char z='#');”,则下面的函数调用中,不合法的调用是##。
    A.f(1);
    B.f(2, 4.2);
    C.f(3, 3.7, '*')
    D.f(0, , '#')
    答:————
7.[单选题] 在表示存储器的容量时,1MB的准确含义是(   )字节。
    A.1000K
    B.1024*1024
    C.512*512
    D.2048*2048
    答:————
8.[单选题] 表达式的100+43.6*'a'数据类型是(    )。
    A.float
    B.double
    C.long double
    D.错误的表达式
    答:————
9.[单选题] 十六进制数ABH 变换为等值的十进制数是(    )。
    A.17
    B.161
    C.21
    D.171
    答:————
10.[单选题] 十进制数123变换为等值的二进制数是(    )。
    A.1111000
    B.1111010
    C.1111011
    D.1111100
    答:————
11.[单选题] 在一个非零的二进制数后增加一个0后的数是原来的(   )倍。
    A.1倍
    B.2倍
    C.3倍
    D.4倍
    答:————
12.[单选题] 对于语句“ cout<<x<<endl;”错误的是描述是(   )。
    A.“cout”是一个输出流对象
    B.“endl”的作用是输出回车换行
    C.“x”是一个变量
    D.“<<”称作提取运算符
    答:————
13.[单选题] 下面关于循环语句的叙述中,正确的是##。
    A.for循环只能用于循环次数已知的情况
    B.for循环与while循环一样,都是先执行循环体后判断条件
    C.for循环体内不能出现while语句
    D.无论哪种循环,都可以从循环体内转移到循环体外
    答:————
14.[单选题] 已知程序段:
int a,*p={a, a, a},**pp=p,i;
for (i=0; i<12; i++)
a=i;
则pp的值是##。
    A.3
    B.4
    C.5
    D.6
    答:————
15.[单选题] 在访问一维数组中的某个元素时,不可以用##指定待访问元素的下标。
    A.整型常量
    B.整型变量
    C.整型表达式
    D.浮点型常量
    答:————
16.[单选题] 已知函数调用“char str={"abc", "def"}; fun(str);”,则下列给出的fun()函数原型中正确的是##。
    A.void fun(char (*p));
    B.void fun(char (*p));
    C.void fun(char *p);
    D.void fun(char **p);
    答:————
17.[单选题] 如果需要一个变量来记录函数的调用次数,那么这个变量不能定义为##。
    A.局部变量
    B.全局变量
    C.静态局部变量
    D.静态全局变量
    答:————
18.[单选题] 下面关于break语句的描述中,不正确的是##。
    A.break语句用于if语句中将退出该if语句
    B.break语句用于循环体内将退出该循环
    C.break语句用于switch语句中将退出该switch语句
    D.break语句在一个循环体内可以多次出现
    答:————
19.[单选题] C++语言对c语言做了很多改进,C++语言相对于C语言的最根本的变化是(    )。
    A.引进了类和对象的概念
    B.允许函数重载,并允许设置缺省参数
    C.规定函数说明符必须用原型
    D.增加了一些新的运算符
    答:————
20.[单选题] 计算机系统中采用补码运算的目的是(    )。
    A.与手工运算方式保持一致
    B.减少存储空间
    C.简化计算机的设计
    D.提高运算的精度
    答:————
21.[单选题] 下列函数原型中,正确的是##。
    A.void fun(int a=10, int b, int c);
    B.void fun(int a=10, int b=5, int c);
    C.void fun(int a, int b=5, int c=8);
    D.void fun(int, int=5, int);
    答:————
22.[单选题] 已知“int a=2, b=3, &r=a; r=b; r=5; cout<<a<<","<<b;”,则输出结果为##。
    A.2,5
    B.2,3
    C.5,3
    D.5,5
    答:————
23.[单选题] 以下各选项中,非法的变量名是(    )。
    A.No_1
    B.No123
    C.2name
    D.sumOfStudent
    答:————
24.[单选题] 已知“int a, b=fun(a);”,则fun()函数原型为##。
    A.void fun(int (*p));
    B.void fun(int (*p));
    C.int fun(int (*p));
    D.int fun(int (*p));
    答:————
25.[单选题] 计算机的存储器中,一个字节有(      )个二进制位组成。
    A.1
    B.2
    C.4
    D.8
    答:————
26.[判断题] 已知“char s[]="hello";”,则使用“cout<<s;”可以在屏幕上输出“hello”
    A.对
    B.错
    答:————
27.[判断题] 已知“int a[]={{1,2,3},{4,5,6}};”,则二维数组a的列下标为3。
    A.对
    B.错
    答:————
28.[判断题] 下面程序段不能实现求n!功能。
int i, p,n;
cin>>n;      
for(i=1,p=1; i<=n; i++)      
    p*=i;
    A.对
    B.错
    答:————
29.[判断题] ASCII 码是一种字符编码,而汉字的各种输入方法也是一种字符编码。
    A.对
    B.错
    答:————
30.[判断题] 用C++表示数学表达式“0<=x<=100 ”的形式是“0<=x<=100”。
    A.对
    B.错
    答:————
31.[判断题] 如果在定义一维数组时给出了初始化列表,则用于指定数组长度的常量表达式可以省略。
    A.对
    B.错
    答:————
32.[判断题] 已知“char s;”,则语句“strcpy(s, "abc");”与“s="abc";”的作用相同。
    A.对
    B.错
    答:————
33.[判断题] 一个C++程序一般由多个函数组成。这些函数只能是用户根据需要自己编写的函数——用户自定义函数。
    A.对
    B.错
    答:————
34.[判断题] switch语句中的default分支不可以缺省。
    A.对
    B.错
    答:————
35.[判断题] 将数组名作为函数实参,表示将数组首地址传递给函数,在函数中可以通过该首地址操作数组中的元素并更改元素的值。
    A.对
    B.错
    答:————
36.[判断题] 面对问题,需要找出解决问题的方法,我们把这种能够在有限的步骤内解决问题的过程和方法称为程序。
    A.对
    B.错
    答:————
37.[判断题] 以下程序段的功能是计算10!
int n=1,i=1;
while(i<=10);
n=n*i++;
cout<<n;
    A.对
    B.错
    答:————
38.[判断题] 逻辑型参与算数运算或关系运算时,true被转换成1,false被转换成0。
    A.对
    B.错
    答:————
39.[判断题] 在循环语句的或部分必须有改变循环条件、使表达式最终成为假的语句,否则永远为真,造成无法退出循环,即所谓的“死循环”。
    A.对
    B.错
    答:————
40.[判断题] +i与 &等价
    A.对
    B.错
    答:————
41.[判断题] 数据类型的定义,如结构体、枚举等类型的定义等一般放在用户自定义的头文件中。
    A.对
    B.错
    答:————
42.[判断题] puts()函数与cout功能类似,但puts()函数输出字符串后会自动换行,而cout不会自动换行。
    A.对
    B.错
    答:————
43.[判断题] 函数的函数体需要用一对花括号“{}”括起来。
    A.对
    B.错
    答:————
44.[判断题] 功能相近的函数才有必要重载,互不相关的函数进行重载会降低程序的可读性。
    A.对
    B.错
    答:————
45.[判断题] 具有不同作用域的变量可以同名,在访问时优先访问具有较小作用域的变量。
    A.对
    B.错
    答:————
46.[判断题] 当调用一个函数时,系统会将当前函数的运行状态保存起来,然后再去执行被调用的函数;当被调用的函数执行完毕后,系统会将刚才保存的运行状态恢复,继续执行函数调用后面的运算。
    A.对
    B.错
    答:————
47.[判断题] 无参宏定义和条件编译结合使用可以解决头文件重复包含问题。
    A.对
    B.错
    答:————
48.[判断题] 已知“char str[]="my";”,则执行“strcat(str, "book");”后,str中保存的字符串为"mybook"。
    A.对
    B.错
    答:————
49.[判断题] 在编写大规模程序时,通常不采用多文件结构。
    A.对
    B.错
    答:————
50.[判断题] 在定义一维数组的同时可以使用初始化列表对数组中的多个元素赋初值。
    A.对
    B.错
    答:————


页: [1]
查看完整版本: 21秋南开《程序设计基础(上)》在线作业题目