C++基础~for循环:选择,判断
HELLO,亲爱的小朋友!
我们准备 35个选择题,对for循环及之前的内容进行一个简单的复习,快来看一下吧!
顺序&选择结构
1、对于C++中变量的命名规则,下列说法正确的是( )。
(1)变量名中只能出现字母(A~Z,a~z)、数字(0~9)或者下划线。
(2)第一个字符不能是数字。
(3)不能是C++关键字,即C++中已经定义好的有特殊含义的单词。
(4)区分大小写。
A. 全部正确 B. 仅 1,2 正确 C. 4 错误 D. 1、3 错误
答案:A,C++中变量的命名规则就是上述4条,并且建议变量命名简单清晰,见名知意。
2、下列是合法变量名的是( )。
A. int B. abcd C. 1y D. ab$3)
答案:B
3、关于变量的定义格式,以下错误的是( )。
A. int a;
B. char ch = "A";
C. float PI = 3.1415;
D. double PI = 3.1415926;
答案:B,定义单个字符使用单引号或者ASCII码,如:
char ch = 'A';
char ch = 65;
4、下列对于C++中常用数据类型的说法,错误的是( )。
A. int 的空间大小为 4 Byte(字节)。
B. char 的空间大小为 1 Byte。
C. double 的空间大小为 8 Byte,所以该类型最大值为2的63次方-1。
D. 1 Byte 等于 8 bit。
答案:C,在不同地程序语言中,数据类型的大小会有所不同,
甚至在C++中,同一种数据类型,但是不同的编译环境,其大小也会不同。
此处是以大众默认的规则为例:
sizeof(int) = 4 Byte
sizeof(char) = 1 Byte
sizeof(float) = 4 Byte
sizeof(double) = 8 Byte
sizeof(long long) = 8 Byte
1 Byte(字节) = 8 bit(比特位/二进制)
数据在内存中的存储最终是以二进制的形式保存,整数和小数是不同的转换形式。
整数,如 int a=7; // 7(十进制) = 00.. 0111(二进制)
整数的二进制中,第一位表示符号位,也就是正负,0表示正,1表示负,所以
int 范围的最大值 INT_MAX = 011..1111 (31位1) = \(2^{31}-1\)
int 范围的最大值 INT_MIN = 100..0000 (31位0) = \(-2^{31}\)
最小值是负数,负数是以补码的形式存储的。
小数,如 double a=3.14; // 3.14 = 0.314 × 10^1
// 内存存储按照32bit: 数符:0 + 小数部分:[21位0]+11 + 阶码:0000 0001
符号位 阶码 尾数(小数部分) 长度
float 1 8 23 32
double 1 11 52 64
5、关于“return 0;” 说法正确的是( )。参考答案:A
A. 表示函数结束,正常返回一个数据 0。
B. 输出 “0”,不含双引号。
C. 直接终止所有程序,关闭软件。
D. 每个函数的结尾都必须有这条语句。
6、对于变量的输入输出格式,以下错误的是( )。
A. cin>>a;
B. cin>>a>>b>>c>>endl;
C. cout<<a<<b<<c<<endl;
D. cout<<a<<" "<<b<<" "<<c;
答案:B,输入不使用endl,修改 cin>>a>>b>>c;
7、如果想要使用输入和输出功能,C++需要引入下列哪个头文件( )参考答案:A
A. iostream
B. cmath
C. algorithm
D. iomanip
8、阅读程序,其输出结果为( )。答案:C
#include<iostream>
using namespace std;
int main() {
int a=1, b=2, c=3;
int d = a+b+c;
cout<<a+b+c+d<<endl;
return 0;
}
A. 3 B. 6 C. 12 D. 24
9、阅读程序,其输出结果为( )。答案:B
#include<iostream>
using namespace std;
int main() {
char a = 'A';
int b = 97;
cout<<b-a<<endl;
return 0;
}
A. 'a' B. 32 C. '1' D. 1
10、以下说法中,错误的是( )。答案:D
A. 使用数学函数需要导入头文件 <cmath>;
B. pow(3,4)是指 3*3*3*3;
C. sqrt(9) 是指 x*x=9 中 x 的正值,也称为算术平方根。
D. 程序中如果要取一个数 x 的绝对值,可以使用 |x|。
11、以下说法中,错误的是( )。答案:D
A. 自增运算符 ++a;的作用是 a=a+1;
B. 自减运算法 --a;的作用是 a=a-1;
C. 自增运算符 a++;的作用是 a=a+1;
D. ++a;与 a++; 的作用完全一样。
12、小明同学学习了三角形的面积公式,面积 =(底 × 高)/ 2;现在给定一个三角形的底为 3 米,高为 5 米。按照如下程序运行,其输出结果为( )。
#include<iostream>
using namespace std;
int main() {
int a,b; cin>>a>>b;
cout<<a*b/2<<endl;
return 0;
}
A. 7.5 B. 7 C. 6 D. 8
答案:B,int 类型会自动取整。
13、阅读程序,其输出结果为( )。答案:C
#include<iostream>
using namespace std;
int main() {
int a=65;
char ch = a;
cout<<ch<<" "<<a;
return 0;
}
A. 65 65 B. a 65 C. A 65 D. A A
14、小明同学忘记了26个字母的顺序,现在想通过程序回忆字母 ‘m’ 的下一个字母是多少,但是他很忙,程序只写了一部分。请你来帮他填写一下剩余内容,你发现横线上的内容需要填写( )。答案:D
#include<iostream>
using namespace std;
int main() {
char ch='m';
___________
cout<<ch;
return 0;
}
A. ch+1; B. ch-1; C. ch=ch++; D. ch++;
15、以下关系表达式写法错误的是( )。
A.大于等于:>=
B.小于:<
C.等于:==
D.不等于:≠
答案:D,数学上的写法和程序中的写法不能混淆。
16、表达式(5==6)的值是( )。答案:B
A. true B. false C. 1 D. 2
17、以下表达式结果为真的是( )。答案:D
A. (1+2)&&(3+4)&&0
B. 1>2 || 2>3
C. (4||5||0)&&0
D. pow(2,3)>=9 || 2>=abs(1-3)
18、在C++语言中,如果a = 1, b = 0, c = 1; 则表达式中为真的是(C)
A. (a && b) || (b && c)
B. a + b > c || b
C. !(!c && (!a || b))
D. !(a + b + c)
19、—次期末考试,某班有15人数学得满分,有12人语文得满分,并且有4 人语、数都是满分,那么这个班至少有一门得满分的同学有多少人?( )
A. 23 B. 21 C. 20 D. 22
答案:A
20、“只要下雨,小明就一定带伞出门”,则下列说法中正确的是( )。答案:C
A. 只要不下雨,小明就一定不带伞出门
B. 只要小明带伞出门,则当天一定下雨
C. 即使小明带伞出门,也不一定下雨
D. 存在一个下雨天,小明出门没有带伞
21、小明家里有七扇门,编号分别为 1 到 7。最开始他的爸爸把所有门都打开,之后妈妈把所有编号为 2 的倍数的门作相反的处理(开着的门关上,关着的门打开),最后他自己将所有编号为 3 的倍数的方面作相反的处理,问共有几扇门是开着的?( )
A. 2 B. 3 C. 4 D. 5
答案:C
门的编号:1 2 3 4 5 6 7
爸爸:1 1 1 1 1 1 1(1开0关)
妈妈:1 0 1 0 1 0 1
我:1 0 0 0 1 1 1
22、我们对闰年的定义是:年份能被4整除但不能被100整除或者年份能被400整除的称为闰年。那么下列选项中判断闰年的表达式正确的是( )。
A. if(year%400==0 && year%4==0 && year%100!=0) { ... }
B. if(year%400==0 || year%4==0 || year%100!=0) { ... }
C. if((year%400==0 || year%4==0) && year%100!=0) { ... }
D. if(year%400==0 || (year%4==0 && year%100!=0)) { ... }
答案:D, a 可以被 b 整除,也就是 a 除以 b 的余数为 0.==>if(a%b==0)
23、假设变量定义为“int a=1,b=0,c=0,d=1”,以下逻辑运算表达式为真的是( )。答案:C
A. a&&b
B. ((a&&b)||c)&&d
C. (b||c)||d
D. (a||d)&&(b||c)
24、用来判断两个值的大小关系的运算符的是( ) 。答案:D
A. 算术运算符
B. 逻辑运算符
C. 赋值运算符
D. 关系运算符
25、分析下列程序,输入 9、2,运行以后,输出的结果是( )。答案:A
#include <iostream>
using namespace std;
int main() {
int a,b,c=0,d=0;
cin>>a>>b;
if(a > b) {
c=a/b, d=a%b;
} else {
c=a, d=b;
}
cout<<c<<" "<<d<<endl;
return 0;
}
A. 4 1 B. 9 2 C. 2 4 D. 4 2
26、分析下列程序,运行以后,输出的结果是( )。答案:B
#include <iostream>
using namespace std;
int main() {
int i = 0;
if(i < 0) {
cout<<i++;
} else {
cout<<++i;
}
return 0;
}
A. 0 B. 1 C. 2 D. 3
循环结构
27、for循环的结构如下,下列选项中说法错误的是()。答案:A
for( 初始化变量; 循环条件; 循环变量增量 ) {
语句1;
语句2;
}
A. 初始化变量的执行次数与循环条件有关。
B. 循环条件是用来判断是否应该执行语句 1 和语句 2 的。
C. 循环变量增量在语句2执行结束后执行。
D. 初始化变量,循环条件,循环变量增量在程序中都可以省略。
28、在for语句中,跳出循环的条件是什么?()答案:B
A. 循环变量为0
B. 不满足循环条件
C. 满足循环条件
D. 有cout语句输出
29、请问以下程序结束的时候,i 等于多少()。答案:C
#include<iostream>
using namespace std;
int main() {
int a=7, i;
for(i=1; i<=a; i++) {
cout<<i<<endl;
}
return 0;
}
A. 6 B. 7 C. 8 D. 1
30、请问以下的for语句中循环体的执行次数即 a 的输出次数()。C
#include<iostream>
using namespace std;
int main() {
int a=1;
for(int i=2; i<=9; i++) {
cout<<a<<" ";
}
return 0;
}
A. 2 B. 7 C. 8 D. 9
31、请问当输入为 9 时,输出结果为( )。答案:B
#include<iostream>
using namespace std;
int main() {
int n; cin>>n;
for(int i=2; i<=n; i+=2) {
cout<<i<<" ";
}
return 0;
}
A.2 3 4 5 6 7 8 9
B.2 4 6 8
C.2 4 6 8 9
D.1 3 5 7 9
32、分析下列程序,运行以后,输入100,请问输出的结果是( )答案:D
#include<iostream>
using namespace std;
int main( ) {
int n,sum=0; cin>>n;
for(int i = 0; i<=n; i++) {
sum += 1;
}
cout<<sum;
return 0;
}
A.0 B. 1 C. 100 D. 101
33、分析下列程序,运行以后,输入100,请问输出的结果是( )。答案:C
#include<iostream>
using namespace std;
int main() {
int n,sum=0; cin>>n;
for(int i=0; i<=n; i++) {
sum += i;
}
cout<<sum;
return 0;
}
A.0 B. 1010 C. 5050 D. 5000
34、分析下列程序,运行以后,输入10,请问输出的结果是( )。答案:C
#include<iostream>
using namespace std;
int main() {
int n,sum1=0,sum2=0;
cin>>n;
for(int i=1; i<=n; i++) {
if(i%2!=0) sum1 += i;
else sum2 += i;
}
cout<<sum1<<" "<<sum2<<endl;
return 0;
}
A.0 10 B. 10 10 C. 25 30 D. 30 25
35、分析下列程序,运行以后,输入10,请问输出的结果是( )。答案:C
#include<iostream>
using namespace std;
int main() {
int a=1,b=1,c,n;
cin>>n;
for(int i=1; i<=n; i++) {
c = a+b;
a = b;
b = c;
}
cout<<a;
return 0;
}
A.10 B. 88 C. 89 D. 101
标签:main,答案,int,namespace,复习题,&&,include
From: https://www.cnblogs.com/hellohebin/p/17136399.html