以下 C++ 不可以作为变量的名称的是( )。
CCF GESP含空格非法。标识符不能含空格
C++ 表达式 10 - 3 * (2 + 1) % 10 的值是( )。
10-3*(2+1)%10=10-3*3%10=10-9%10=10-9=1。*和%同级左结合
假设现在是上午十点,求出 N 小时(正整数)后是第几天几时,如输入 20 小时则为第 天 6 点,如 N 输入 4 则为今天 14 点。为实现相应功能,应在横线处填写代码是( )。
01int N, dayX, hourX; 02 03cin >> N; 04 05dayX = ____________, hourX = ____________; 06if (dayX == 0) 07 cout << "今天" << hourX << "点"; 08else 09 cout << "第" << (dayX + 1) << "天" << hourX << "点";
(10+N)%24小时,(10+N)/24天数。10+20=30,30%24=6,30/24=1,加1=第2天6点
下面的程序用于判断 N 是否为偶数,横线处应填写代码是( )。
01cin >> N; 02if (____________) 03 cout << "偶数"; 04else 05 cout << "奇数";
N%2==0判偶数。%=赋值,==判等
下面对 C++ 代码执行后输出的描述,正确的是( )。
01cin >> N; 02cnt = 0; 03for (int i = 1; i < N; i++) 04 cnt += 1; 05cout << cnt;
for(i=1;i<N;i++)循环N-1次cnt加N-1次。N=2时cnt=1=N-1。正确:输出N-1
下面 C++ 代码执行后的输出是( )。
01cnt = 0; 02for (int i = 1; i < 10; i++) { 03 cnt += 1; 04 i += 2; 05} 06cout << cnt;
for(i=1;i<10;){cnt++;i+=2;}:i=1,4,7,10停,cnt=3。循环体i每次+2,初始+1
下面 C++ 代码执行后的输出是( )。
01cnt = 0; 02for (int i = 1; i < 20; i++) { 03 if (i % 2) 04 continue; 05 else if (i % 3 == 0 && i % 5 == 0) 06 break; 07 cnt += i; 08} 09cout << cnt;
for(i=1;i<20;){奇continue;偶cnt+=i;遇到i%3==0&&i%5==0 break;}:偶数2+...+18=90,无30倍数break,累加=90
下面 C++ 代码执行后的输出是( )。
01N = 10; 02cnt = 0; 03while (1) { 04 if (N == 0) break; 05 cnt += 1; 06 N -= 2; 07} 08cout << cnt;
N=10,while(1)N:10,8,6,4,2,0停,5次cnt=5。N-=2每次减2,5次后N=0
下面 C++ 代码用于判断一个数是否为质数(素数),在横线处应填入代码是( )。
01cin >> N; 02cnt = 0; 03for (int i = 1; i < N + 1; i++) 04 if (N % i == 0) 05 ____________; 06if (cnt == 2) 07 cout << N << "是质数。"; 08else 09 cout << N << "不是质数。";
(题目需补:贪心/闰年/猜数类的入门模拟题)
对下面的代码,描述正确的是( )。
01#include <stdlib.h> 02 03using namespace std; 04 05int main(){ 06 int arr[] = {2,6,3,5,4,8,1,0,9,10}; 07 for(int i = 0; i < 10; i++) 08 cout << arr[i] << " "; 09 cout << i << endl; 10 11 cout << endl; 12 return 0; 13}
for(i=0;i<10;i++)输出arr[0..9],循环结束后i=10,再cout<<i输出10。输出 2 6 3 5 4 8 1 0 9 10 10
执行下面 C++ 代码后输出是( )。
01cnt = 0; 02for (i = 10; i > 3; i -= 3) 03 cnt = cnt + i; 04cout << cnt;
for(i=10;i>3;i-=3):i=10,7,4停,cnt=10+7+4=21。步长3,3次
定义变量 char c,下面对 c 赋值的语句,不符合语法的是( )。
D:c=char 66;缺括号。函数调用需(...),类型转换(char)66或char(66)正确
下图所示 C++ 代码对大写字母 'A' 到 'Z' 分组,对每个字母输出所属的组号,那么输入 'C' 时将输出的组号是?( )。
01char c; 02while (1) { 03 cin >> c; 04 if (c == 'q') break; 05 switch (c) { 06 case 'A': cout << "1 "; break; 07 case 'B': cout << "3 "; 08 case 'C': cout << "3 "; 09 case 'D': cout << "5 "; break; 10 case 'E': cout << "5 "; break; 11 default: cout << "9 "; 12 } 13 cout << endl; 14}
switch无break穿透:case C输出3,无break穿透到case D输出5,再break,得"3 5"
某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的。( )
选路需输入(麦克风/传感器)和输出(扬声器),油量表与选路无关。传感器探测路况
现代计算机是指电子计算机,它所基于的是( )体系结构。
现代计算机基于冯·诺依曼结构(存储程序+二进制)。图灵是理论模型,阿塔纳索夫是早期电子计算机,埃克特-莫克利是ENIAC
C++ 表达式 int(3.14) 的值为 3。
正确。int(3.14)强制类型转换截断小数得3
C++ 语句 cout << (2 * 3, 3 % 10, 2 + 3) 的输出为 6,3,5。
错。逗号表达式(2*3,3%10,2+3)=(2+3)=5,输出5不是6,3,5
for(int i = 1; i < 10; i += 3;) ; 表示 i 从 1 开始到 10 结束间隔为 3,相当于 1、4、7、10。
错。for(i=1;i<10;i+=3):i=1,4,7,10时i不<10退出,i=1,4,7。不是1,4,7,10
C++ 表达式 010 + 100 + 001 的值为 111。
错。010是八进制=8,001是1,8+100+1=109,不是111
if 语句中的条件表达式的结果可以为 int 类型。
正确。if条件int隐式转bool(0假,非0真)
在下面的 C++ 代码 while(1) continue; 中,由于循环中的 continue 是无条件被执行,因此将导致死循环。
正确。while(1)是无限循环,continue不影响。条件1恒真死循环
C++ 表达式 ('1'+'1'=='2'? flag=1:flag=2) 的结果值和表达式 (flag==2) 的相同。
错。"1"+"1"=49+49=98,98=="2"=50假,flag=2,值2;flag==2为true=1,值1,不同
在 C++ 的程序中,不能用 scanf 作为变量名。
错。scanf是stdio库函数,非关键字,可作变量名(虽不建议)
小杨最近在准备考 GESP,他用的 Dev C++ 来练习和运行程序,所以 Dev C++ 也是一个小型操作系统。
错。Dev C++是IDE集成开发环境,不是操作系统
任何一个 while 循环都可以转化为等价的 for 循环。
正确。while和for都含循环条件/体/迭代,可相互转换