#ZX1007. 字符串专项
字符串专项
一、单选题(每题 2 分,共 20 分)
1、下列关于C++中字符串的定义,正确的是( )。
{{ select(1) }}
- 字符串只能由字母和数字组成
- 字符串必须使用单引号包含
- 字符串是0个或多个字符组成的一串字符
- 字符数组不能存储字符串
2、要实现接受空格且能控制输入长度的字符串输入,应使用( )
{{ select(2) }}
- cin >> s
- getline(cin, s)
- cin.getline(char str[], int n)
- scanf("%s", str)
3、计算字符数组s的长度,应使用的函数是( )。
{{ select(3) }}
- s.length()
- strlen(s)
- s.size()
- length(s)
4、下列关于strcpy(s1,s2)函数的说法,正确的是( )。
{{ select(4) }}
- 作用是将s1的内容复制给s2
- 参数s1和s2必须是字符数组
- 作用是将s2的内容复制给s1
- s2的长度可以无限长
5、要将字符串s2拼接在s1尾部,对于字符数组,应使用的函数是( )。
{{ select(5) }}
- strcat(s1, s2)
- s1 += s2
- strcpy(s1, s2)
- strcmp(s1, s2)
6、string类型变量的初始化方式中,错误的是( )。
{{ select(6) }}
- string s1 = "hello";
- string s2("hello");
- string s3 = 'hello';
- string s4; s4 = "hello";
7、下列关于getline和cin.getline的区别,正确的是( )。
{{ select(7) }}
- getline只能用于字符数组输入
- cin.getline只能用于string字符串输入
- getline的语法格式是getline(cin, string s)
- cin.getline的语法格式是cin.getline(string s, int n)
8、对于string s = "welcome!",遍历字符串的正确代码是( )。
{{ select(8) }}
- for(int i = 0; i < strlen(s); i++) cout << s[i] << endl;
- for(int i = 0; i < s.length(); i++) cout << s[i] << endl;
- for(int i = 0; i < s.size(); i++) cout << s(i) << endl;
- for(int i = 0; i < strlen(s.c_str()); i++) cout << s[i] << endl;
9、下列关于strcmp函数的作用,正确的是( )。
{{ select(9) }}
- 复制字符串
- 比较两个字符串的内容
- 拼接两个字符串
- 计算字符串长度
10、string s = "Hello",执行int n = s.find("ll"),n的值是( )
{{ select(10) }}
- 1
- 2
- 3
- -1
二、判断题(每题 2 分,共 10 分)
11、C++中,字符串可以是中文、字母、数字或其他符号的组合。
{{ select(11) }}
- 对
- 错
12、cin可以接受包含空格的字符串输入。
{{ select(12) }}
- 对
- 错
13、getline(cin, string s)可以用于字符数组的字符串输入。
{{ select(13) }}
- 对
- 错
14、strcmp(s1, s2)函数比较的是两个字符串的长度大小。
{{ select(14) }}
- 对
- 错
15、string类型变量可以直接使用比较运算符(如==、>、<)进行字符串比较
{{ select(15) }}
- 对
- 错