更新第8周课评与学生档案:新增多班级学生画像及课评汇总归档
- 补全CSP03周六0830/1400班学生课评汇总与profile档案 - 新增AI03周六1900、周日0845/1400、CSP03周日1030、K4周日1900班级结构 - 更新K4周五1900班课评汇总 - 优化课评生成技能规则 - 更新.gitignore与教学输出文档
This commit is contained in:
@@ -1,12 +1,5 @@
|
||||
# CSP03班 第8课 课前默写(10分钟)
|
||||
|
||||
**班级**:CSP03班(周六早/下午、周日早上)
|
||||
**范围**:第7课《string字符串使用(一)》
|
||||
**满分**:100分
|
||||
**建议用时**:10分钟
|
||||
|
||||
---
|
||||
|
||||
## 一、填空题(每空 4 分,共 32 分)
|
||||
|
||||
1. 声明一个 `string` 变量 `s` 并初始化为 `"hello"` 的语句是:
|
||||
@@ -53,18 +46,15 @@
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
using namespace std;
|
||||
|
||||
int main() {
|
||||
string s;
|
||||
_______________(cin, s); // ① 读入一整行
|
||||
|
||||
int cnt = 0;
|
||||
for (int i = 0; i < s.___________(); i++) { // ② 遍历字符串
|
||||
if (_______(s[i])) { // ③ 判断是否为大写字母
|
||||
cnt++;
|
||||
}
|
||||
}
|
||||
|
||||
cout << cnt << endl;
|
||||
return 0;
|
||||
}
|
||||
@@ -98,59 +88,12 @@ int main() {
|
||||
|
||||
## 五、简答题(共 30 分)
|
||||
|
||||
1. **简述 `cin >> s` 和 `getline(cin, s)` 在读取字符串时的主要区别。**(10分)
|
||||
1. **简述 `cin >> s` 和 `getline(cin, s)` 在读取字符串时的主要区别。**(30分)
|
||||
|
||||
答:
|
||||
_________________________________________________________________
|
||||
_________________________________________________________________
|
||||
_________________________________________________________________
|
||||
|
||||
2. **写出一段代码,遍历字符串 `s`,将其中的所有大写字母转换为小写字母。**(20分)
|
||||
|
||||
答:
|
||||
```cpp
|
||||
_________________________________________________________________
|
||||
_________________________________________________________________
|
||||
_________________________________________________________________
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 参考答案(教师用,不要发给学生)
|
||||
|
||||
### 一、填空题
|
||||
1. `"hello"`
|
||||
2. `size` 或 `length`
|
||||
3. `getline`
|
||||
4. 空格
|
||||
5. `find`
|
||||
6. `string::npos`
|
||||
7. `2`
|
||||
8. `substr`
|
||||
|
||||
### 二、判断题
|
||||
1. `√`
|
||||
2. `×`(`string::npos` 是一个极大值,不是 -1)
|
||||
3. `√`
|
||||
4. `√`
|
||||
|
||||
### 三、代码填空
|
||||
① `getline`
|
||||
② `size` 或 `length`
|
||||
③ `isupper`(或 `s[i] >= 'A' && s[i] <= 'Z'`)
|
||||
|
||||
### 四、代码阅读
|
||||
输出①:`6`
|
||||
输出②:`YES`
|
||||
|
||||
### 五、简答题
|
||||
1. `cin >> s` 遇到空格会停止,只能读取一个单词;`getline(cin, s)` 会读取整行,包括空格,直到遇到换行符。
|
||||
2. ```cpp
|
||||
for (int i = 0; i < s.size(); i++) {
|
||||
s[i] = tolower(s[i]);
|
||||
}
|
||||
```
|
||||
或范围 for 循环写法亦可。
|
||||
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user