佛大附属信奥 在线评测 · 分级学习
登录

GESP C++ 三级 · 2024 年 3 月认证理论卷

登录 后作答才能记录成绩

一、单选题(每题 2 分)

1. 整数-5的16位补码表示是( )。
2. 如果16位短整数-2的二进制是"FFFE",则短整数-4的十六进制是( )。
3. 下面C++代码执行后的输出是( )。 ```cpp int main() { cout << (3|16) << endl; cout << endl; return 0; } ```
4. 定义整数int x=-5,则执行C++代码cout << (x == (x<<1>>1))输出是( )。
5. 已知字符'0'的ASCII编码的十进制表示为48,则执行下面C++代码后,输出是( )。 ```cpp int main() { string s="316"; int n=s.length(); int x=0; for(int i = 0; i < n; i++) x += s[i]; cout << x << endl; cout << endl; return 0; } ```
6. 下面C++代码执行后数组中大于0的数的特征是( )。 ```cpp int main() { int a[20],i; for(i = 0; i < 20; i++) a[i] = i+1; for(int i = 0; i < 20; i++) if((a[i]%2)&&(a[i]%3)) a[i] = 0; for(i = 0; i < 20; i++) if(a[i]) cout << a[i] << " "; cout << endl; return 0; } ```
7. 执行下面C++代码后输出的第一个数是( )。 ```cpp int main() { int a[20],i; for(i = 0; i < 20; i++) a[i] = i+1; for( ; i > 0; i--) cout << a[i-1] << " "; cout << endl; return 0; } ```
8. 在下列代码的横线处填写( ),可以使得输出是GESP IS INTERESTING。 ```cpp int main() { string str="gEsP is Interesting"; int x = str.length(); for(int i = 0; i < x; i++) if ((str[i]>='a') && (str[i]<='z')) ________________________; cout << str << endl; cout << endl; return 0; } ```
9. 假设英文句子由若干词构成。下面C++代码统计输出的词数是( )。 ```cpp int main() { string str="gEsP is Interesting !"; int x = str.length(); int nwords = 0; for(int i = 0; i < x; i++) if (str[i]==' '){ nwords++; while(str[++i]==' ') ; } cout << nwords << endl; cout << endl; return 0; } ```
10. C++的字符变量的码值是整数,下面字面量形式的字符码值最大的是( )。
11. 下面C++程序执行的结果是( )。 ```cpp int main() { int a[20],i; int cnt=0; for(i = 0; i < 20; i++) a[i] = i+1; for( ; i > 1; i--) if((a[i-1]+a[i-2])%3) cnt++; cout << cnt << endl; cout << endl; return 0; } ```
12. 定义字符数组char str[20] = {'G', 'E', 'S', 'P'};,则str的字符串长度为( )。
13. 定义整型变量int a=3, b=16,则a|b的值和a+b的关系是( )。
14. 小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是( )。
15. 中国计算机学会(CCF)在2024年1月27日的颁奖典礼上颁布了王选奖,王选先生的重大贡献是( )。

二、判断题(每题 2 分)

1. 任意整数a的二进制反码与补码都有1位不同。 ( )
2. 对整型变量int a = 3,执行C++代码a<<2将把2输出到a中。 ( )
3. 下面C++代码可以计算1到100的累加和,采用的是穷举法。 ```cpp int main() { int i,sum=0; for(int i = 1; i <= 100 ; i++) sum += i; cout << sum << endl; cout << endl; return 0; } ``` ( )
4. 一个int类型变量a,执行操作(a<<2>>2)后的值一定是a。 ( )
5. 在C++语言中,(010<<1)执行结果是100。 ( )
6. 执行下面C++代码后将输出2。 ( ) ```cpp int main() { string str="gEsP is Interesting"; int x = str.find("s"); cout << x << endl; cout << endl; return 0; } ```
7. 在C++语言中,字符数组被定义时,它的大小可以调整。 ( )
8. 对定义的数组int a[7]={2,0,2,4,3,1,6},可以用简单循环就找到其中最小的整数。 ( )
9. 小杨今年春节回奶奶家了,奶奶家的数字电视要设置ip地址并接入到WIFI盒子才能收看节目,那这个WIFI盒子具有路由器的功能。 ( )
10. 任何一个for循环都可以转化为等价的while循环 ( )。