[计算机类试卷]国家二级C++机试(基本控制结构和数组、指针与引用)模拟试卷1及答案与解析.doc
《[计算机类试卷]国家二级C++机试(基本控制结构和数组、指针与引用)模拟试卷1及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C++机试(基本控制结构和数组、指针与引用)模拟试卷1及答案与解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C+机试(基本控制结构和数组、指针与引用)模拟试卷 1及答案与解析 一、选择题 1 有如下程序: #include iostream using namespace std; int main() char str 100, *p; cout Please input a string: ; cin; str; p=str; for(int i=0; *p!= 0; p+, i+); cout i end1; return 0; 运行这个程序时,若输入字符串为: abcdefg abcd 则输出结果是 ( )。 ( A) 7 ( B) 12 ( C) 13 ( D) 100 2 if
2、语句的语法格式可描述为: 格式 1: if(条件 )语句 或 格式 2: if(条件 )语句 1 else语句 2 关于上面的语法格式,下列表述中错误的是 ( )。 ( A)条件部分可以是一个 if语句,例如 if(if(a=0-) ( B)语句部分可以是一个 if语句,例如 if()if() ( C)如果在条件前加上逻辑非运算符 !并交换语句 1和语句 2的位置,语句功能不变 ( D)语句部分可以是一个循环语句,例如 if()while() 3 若 x和 y是程序中的两个整型变量,则下列 if语句中正确的是 ( )。 ( A) if(x=0)y=1; else y=2; ( B) if(x=
3、0)then y=1 else y=2; ( C) if(x=0)y=1 else y=2; ( D) if(x=0)y=1; else y=2; 4 下列语句中,与语句 “1n=(a b?(1) c?1: 0): 0); ”的功能等价的是 ( )。 ( A) if(a =b) n=0; ( B) if(a b)Il(b c)n=1; else n=0; ( C) if(a b)if(b c) n=1: else n=0; else n=0; ( D) if(a b) n=1; else if( =c)n=1; else if(b c)n=1; else n=0; 5 有如下程序 #inelu
4、de iostream using namespace std; int main() char a; cin a; if(a=*) cout * end1; else cout # end1; rerurn 0: 输入字符 +时,程序的运行结果是 ( )。 ( A) * ( B) # ( C) *# ( D)无输出 6 执行语句序列 ( )。 int i=0; while(i 25)i+=3; cout i; 输出结果是 ( A) 24 ( B) 25 ( C) 27 ( D) 28 7 有如下程序: int x=3; do x-=2; cout x; while(1(-x); 执行这个程序
5、的输出结果是 ( )。 ( A) 1 ( B) 30 ( C) 1-2 ( D)死循环 8 执行下列语句段后,输出字符 *“的个数是 ( )。 for(int i=50; i 1: -i)cout *; ( A) 48 ( B) 49 ( C) 50 ( D) 51 9 执行下列语句段后,输出字符 “*”的个数是 ( )。 for(int i=50; i 1; I-=2)cout *; ( A) 24 ( B) 25 ( C) 26 ( D) 50 10 有如下程序: #include iostream using namespace std; int main() hat sum; for(
6、int i=0; i 6; i+=3) sum=i; for(int j=i; j 6; j+)sum+=j; cout sum end 1; return 0: 运行时的输出结果是 ( )。 ( A) 3 ( B) 10 ( C) 12 ( D) 15 11 有如下程序段: int i=5; while(int i=0)cout *; i-; 运行时输出 *的个数是 ( )。 ( A) 0 ( B) 1 ( C) 5 ( D)无穷 12 有如下程序段: int i=1; while(1) i+; if(i=10) break; if(i 2=0) cout *; 执行这个程序段输出字符 *的
7、个数是 ( )。 ( A) 10 ( B) 3 ( C) 4 ( D) 5 13 下列循环语句中有语法错误的是 ( )。 ( A) int i; for(i=1; i 10; i+)cout *; ( B) int i, j; for(i=l, j=0; i 10; i+, j+)cout *; ( C) int i=0; for(; i 10; i+)cout *; ( D) for(1)tout *; 14 有如下程序: #include iostream using namespace std; int main() int f, f1=0(), t2=1; for(int i=3; i
8、 =6; i+) f=f1+f2; f1=f2; f2=f; cout f end1; return 0; 运行 时的输出结果是 ( )。 ( A) 2 ( B) 3 ( C) 5 ( D) 8 15 有如下程序: #inclu& iostream using namespace std; int main() int a6=23, 15, 64, 33, 40, 58; int s1, s2; s1=s2=a0; for(int*p=al+1; p a+6; p+) if(s1 *p)s1=*p; if(s2 *p)s2=*p; cout s1+s2 end1; return 0; 运行时的
9、输出结果是 ( )。 ( A) 23 ( B) 58 ( C) 64 ( D) 79 16 有如下程序: #include iostream using namespace std; int main() int i, s=0; for(i=1; s 20; i+=2)s+=i*i; cout i end1; return 0; 运行这个程序的输出结果是 ( )。 ( A) 3 ( B) 5 ( C) 7 ( D) 9 17 要定义一个具有 5个元素的一维数组 vect,并使其各元素的初值依次是 30,50, -88, 0和 0,则下列定义语句中错误的是 ( )。 ( A) int vect=
10、30, 50, -88; ( B) int vect=30, 50, -88, 0, 0; ( C) int vect5=30, 50, -88; ( D) int vect5=30, 50, -88, 0, 0; 18 已知有数组定义 char a34; 下列表达式中错误的是 ( )。 ( A) a2=WIN ( B) strcpy(a2, WIN) ( C) a23=W ( D) a01=a01 19 已知数组 arr的定义如下: int arr5=1, 2, 3, 4, 5; 下列语句中输出结果不是 2的是 ( )。 ( A) tout *arr+1 end1; ( B) cout *(
11、arr+1) ( C) cout arr1 end1 ( D) cout *arr end1; 20 有如下类定义: ciass A char*a; public: A(): a(0) A(char*aa)把 aa所指字符串拷贝到 a所指向的存储空间 a=_; strcpy(a, aa); A()(deletea; ; 横线处应填写的表达式是 ( )。 ( A) new charstrlen(aa)+1 ( B) charstrlen(aa)+1 ( C) charstrlen(aa) ( D) new charsizeof(aa)-1 21 要定义整型数组 x,使之包括初值为 0的三个元素,
12、下列语句中错误的是 ( )。 ( A) im x3=0, 0, 0; ( B) int x=0; ( C) static int x3=0; ( D) int x=0, 0, 0; 22 有如下语句序列: char str10; ci str; 当从键盘输入 I love this game时, str中的字符串是 ( )。 ( A) I love this game ( B) I love thi ( C) I love ( D) I 23 字符串 “a+b=12 n t”的长度为 ( )。 ( A) 12 ( B) 10 ( C) 8 ( D) 6 24 下列有一维数组 a的定义中,语法正
13、确的是 ( )。 ( A) int a(10); ( B) int n=7, an; ( C) int n; cin n; int an; ( D) const int size=10; int asize; 25 有如下程序: #include iostream using namespace std; int main() int *p; *p=9; cout The value atp: *p; return 0; 编译运行程序将出现的情况是 ( )。 ( A)编译时出现语法错误,不能生成可执行文件 ( B)运行时一定输出: The value at p: 9 ( C)运行时一定输出:
14、The value at p: *9 ( D)运行时有可能出错 26 下列语句中,错误的是 ( )。 ( A) const int buffer=256; ( B) const double*point; ( C) int const buffer=256; ( D) double*const point; 27 有如下说明 int a10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, *p=a; 则数值为 9的表达式是 ( )。 ( A) *p+9 ( B) *(p+8) ( C) *p+=9 ( D) p+8 28 语句 int*p= k;定义了指针 p,与这个语句等效的语
15、句序列是 ( )。 ( A) int*p; p=&k; ( B) int*p; p=k; ( C) int*p; *p=&k; ( D) int*p; *p=k 29 有如下定义: int a5=1, 3, 5, 7, 9, *p=a; 下列表达式中不能得到数值 5的是 ( )。 ( A) a2 ( B) a3 ( C) *(p+2) ( D) *p+4 30 下列语句中,正确的是 ( )。 ( A) char*myString=Hello-World!; ( B) char myString=Hello-World!; ( C) char myString11=“Hello-World!;
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 机试 基本 控制 结构 数组 指针 引用 模拟 答案 解析 DOC
