


🌟 第9题:字符串的终止符
🎯 正确答案:A**、 right**
1、🧠 故事
字符数组:
char ch[] = "hello";
2、🪄 规则
字符串:
👉 "hello" = 5个字符
👉 还要加一个 '\0' 结束符
cpp
[0] 'h', [1] 'e', [2] 'l', [3] 'l', [4] 'o', [5] '\0'
3、✏️ 条件判断逻辑
cpp
string ch="hello";
if(ch[5]==NULL) //第一判断,如果正确后面不可能再判断了
{
cout<<"right"<<endl;
}
else if (ch[5]=='\0')
{
cout<<"wrong"<<endl;
}
else
{
cout<<"hello"<<endl;
}
4、 NULL是什么?
NULL在C++中通常定义为0或(void*)0。\0的ASCII值也是0,因此ch[5] == NULL为真 ,触发第一个条件分支,输出"right"。
5、🎉 答案是 A
🌟 第10题:内存空间探险
🎯 正确答案:D(12)
1、🧠 故事
字符数组:
char ch[] = "hello world";
2、🪄 规则
字符串:
👉 "hello world" = 11个字符
👉 还要加一个 '\0' 结束符
3、✏️ 计算
ch 占用的内存空间是 ( )?
内存为:11 + 1 = 12
🎉 所以答案是 12
4、题目有坑:
cpp
char ch[] = "hello world";
size_t ret=strlen(ch);
cout<<ret<<endl;
程序输出为11,很多同学选的是A,但是题目没问你输出是什么!这题,是挖的坑!

🌟 第11题:ASCII魔法数字
🎯 正确答案:D、97
1、🧠 故事
int a=65;
cout<<tolower(a);
2、🪄 规则
👉
tolower():变小写👉 65 = 'A'
👉 小写 = 'a'
👉 (int ) 'a' = 97
3、🎉 输出:97


🌟 第12题:统计数字大挑战
🎯 正确答案:C
1、🧠 故事
小机器人要统计:
👉 从 n 到 m
👉 数字 d 出现了多少次
2、🪄 正确程序要满足:
✅ 从 n 到 m
✅ 每个数拆位
✅ 判断
%10 == d✅ 有计数器
res++✅ 初始化
res=0
3、❌ 错误示例
==写成=❌ B错误res没初始化 ❌ A错误
temp没定义 ❌ D错误
4、🎉 只有 C 完全正确

🌟 第13题:百钱买百鸡
🎯 正确答案:(答案表:D)
1、🧠 故事
你有100元,要买100只动物:
| 动物 | 价格 |
|---|---|
| 🐰兔子 | 5元 |
| 🐔鸡 | 3元 |
| 🦆鸭 | 1元3只 |
2、🪄 数学关系
cpp
兔 + 鸡 + 鸭 = 100
5*兔 + 3*鸡 + 鸭/3 = 100
3、🧩 解法
👉 三重循环枚举:
for(兔)
for(鸡)
for(鸭)
👉 同时满足两个条件 ✔️
4、🧩 判断
cpp
if(i + j + k == 100 && 25 * i + 10 * j + k == 300)//A的判断条件错误
cpp
if(i + j + k == 100 && 20 * i + 10 * j + k == 300)//B的判断条件也错误
cpp
for(int k = 0; k <= 20; k++) //C的循环条件不够
5、🎉 正确程序是 D
其实D的条件也有欠缺,本题要求至少都要有一只,应该都从1开始循环判断,更加合理。
🌟 第14题:素数检测魔法
🎯 正确答案:C
1、🧠 故事
什么是素数?
👉 只能被1和自己整除
2、🪄 方法(暴力检测)
for i = 2 → N
for j = 2 → i-1
如果 i % j == 0 → 不是素数
3、⚠️ 关键点
要先输出 2 ✔️
flag控制 ✔️
每轮重置 ✔️
4、🎉 最标准的是 C
5、其他选项错误:
cpp
if(N >= 3){
cout<<2<<endl; //A 条件错误
cpp
if(N >= 2){ //B没输出2 错误
for(int i = 3;i <= N;i ++){
for(int j = 2;j < i;j ++){
cpp
for(int i = 3;i <= N;i ++){
for(int j = 2;j < i;j ++){
if(i % j == 0){
flag = 1;
}
}
if(c == 0){
cout<<i<<endl;
}
} D、flag没有重置回0 错误
🌟 第15题:金环切割大智慧
🎯 正确答案:A(1,2,4,8)
1、🧠 故事
工人每天领工资:
👉 第1天:1个
👉 第2天:2个
👉 第3天:3个
...
你只有一个15环项链!
2、🪄 聪明方法(二进制思想)
拆成:
1 + 2 + 4 + 8 = 15
👉 任意组合都能凑出来!
3、🎯 举例
第7天:
7 = 4 + 2 + 1
4、🎉 所以最少切成:
👉 4段:1、2、4、8
🚀 总结
1、🧩 字符串
replace(第9题)
2、💾 内存
'\0'(第10题)
3、🔤 字符编码
ASCII(第11题)
4、🔁 循环+统计
第12、13题
5、🔢 数学+算法
素数(第14题)
二进制拆分(第15题)







