戳一戳!和我一起走进信息学的世界
导读
纸上得来终觉浅,绝知此事要躬行!学习知识,不能光学,还要不断练习,在练习中提升自我。
之前,我们讲过了信息学基础课程,提高班再出发,我们也要打好基础,稳步前行。
本篇文章中,我们一起通过多样化的例题,来复习巩固一下基础班相关知识,通过习题查缺补漏,不断提升我们对信息学的了解吧!
1 熟能生巧
熟能生巧,如果我们只是听课,课后不做练习,就不能灵活掌握知识,就不能真正把知识印在自己的脑子里。
有人说,代码太多不好背,有些孩子学着学着就放弃了。这是因为,没有花费精力在信息学的学习上。
信息学,是需要孩子们不断练习才能有提升,才能取得成绩的,需要孩子们不断练习,才能真正在信息学中感受到成就感,感受到编程带给他们不一样的快乐!
让我们通过不同类型的题目,来一起巩固一下知识点,为我们后续的课程打好基础吧!
2 填空题
填空题,我们一起来回顾重点知识,打好写代码的根基!
1 变量与输入输出
1、输入输出语句分别使用_____、_____。
2、换行语句是______。
3、我们学过的四个基本数据类型是_____、_____、_____、_____。
4、如果一个整数太大,int类型无法保存,我们还可以用_____、_____。
5、字符数据要加_____,字符串数据要加_____。
6、用来保存判断对错的变量的类型是:______。
2 运算符与表达式
1、最常用的四类运算符为算术运算符、赋值运算符、关系运算符、逻辑运算符,他们对应的表达式分别为:_________。
2、算术运算符包括:____________。
3、赋值运算符包括:____________。
4、关系运算符包括:____________。
5、逻辑运算符包括:____________。
6、浮点型数据不能进行的算术运算包括:____________。
7、逻辑运算符的优先级为:_____>_____>_____。
3 三大结构
1、三大结构包括:_____、_____、_____;
2、分支结构有两个系列,分别是:_____、_____。
3、if系列主要包括:_____、_____、_____、_____。
4、循环结构包括:_____、_____、_____。
5、while和do-while很类似,主要区别在于,while是先_____,后_____;do-while是先_____,后_____。
3 代码查错
我们自己写代码的过程中,经常会出一些错误,让我们通过下面的这些题目,一起来了解尝尝容易犯的错误,然后,在以后的学习过程中避免他们吧!
这一部分的题目,需要我们找到每个程序中出现的错误,并修改为正确的代码。
1 变量与输入输出
1、程序如下:
inta, b, 1ab;
cin >> a
b = 3;
c = 'a';
cout >> b;
2 三大结构与运算符
1、顺序结构与运算符1:
int a, b;
a += b;
float c, d;
c = 5;
d = 6;
c++;
d %= 10;
2、分支结构与运算符1
int a, b;
cin>>a>>b;
if(a = b) cout<< a = b;
else cout<<"a != b"<<endl;
cin>>a>>b;
if(0<a<10) cout<<"a是个位数"<<endl;
if(a>b) a--; b++;
else if(a < b) a++; b--;
else a--; b--;
cout<<"a的值修改后为:"a<<endl;
cout<<"b的值修改后为:"b<<endl;
3、分支结构与运算符2
int a;
cin>>a;
switch(a){
case 1;
cout<<"first"<<endl;
case 2;
cout<<"second"<<endl;
case 3;
cout<<"third"<<endl;
default;
}
4、循环结构与运算符
int n = 10;
for(int a=1, a<n, a++){
cout<<a<<endl;
}
do{
cout<<a<<endl;
a--;
}while(a)
4 程序分析与注释
除了自己写代码,我们也要能读懂别人写的代码,能够分析别人的代码功能及执行结果。
我们通常通过给代码编写注释,让我们更好地理解代码的功能!在程序的最前面,是用多行注释写明整个代码的功能。在必备框架里面的每段代码后面,使用单行注释标注当前行语句的功能。
这一部分的题目,我们需要分析每个程序的执行结果,并在代码最前面使用多行注释说明这个程序的功能,在必备框架里面的每行代码后面写好该行代码的功能。
1 变量与输入输出
1、程序
int a, b, c;
a = 1;
b = 2;
c = 3;
cout<<a<<" "<<b<<" "<<c<<endl;
2 三大结构与运算符
1、顺序结构与运算符1
int a, b, c;
a = 1;
b = 2;
c = 3;
a+=b;
b+=c;
c+=a;
cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
2、顺序结构与运算符2
int a;
float b, c;
b = 2.4;
c = 3.6;
b*=2
c+=b;
c*=2;
a = c;
a--;
cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
3、分支结构与运算符
int a = 5,b = 10;
if(1>2 && a++){
b*=2;
}
if(b == 10 || b--){
a*=2;
}
cout<<a<<" "<<b<<endl;
4、循环结构与运算符
int a = 0,b = 10;
for(;a<b;a++){
cout<<a*10;
if(a == 9) continue;
cout<<",";
}
5 代码编写
学得好不好,写写代码就知道,在这一部分,我们一起编写代码,感受信息学带给我们的爽快!
1 变量与输入输出
1、输出:你好,AI与区块链技术。
输一句话:你好,AI与区块链技术。
2、神奇复读机
输入一个数字,例如你输入的是5,那么输出:你好,我是神奇复读机,你输入的数字是5。
3、聊天机器人
制作一个简单的聊天机器人,实现如下流程:
机器人:你好,我是小机器人,你可以叫我小可爱;
用户:你好呀,小可爱。
机器人:你叫什么名字呢?
(用户输入姓名,例如:左老师)。
机器人:你好,左老师,你今年几岁啦!
(用户输入年龄,例如:23)。
机器人:哇,左老师,原来你23岁了呀,那左老师你身高是多少呢?
(用户输入身高,例如1.65)
机器人:左老师1.65米哦,左老师,很高兴认识你!
左老师:我也很高兴认识你!
2 运算符与表达式
1、计算周长和面积
【题目描述】
输入长方形的长和宽,计算长方形的周长和面积。
【输入描述】
一行两个整数a,b(0<a,b<=10000)。
【输出描述】
两行,每行一个整数。第一行输出周长,第二行输出面积。
【示例输入】
10 20
【示例输出】
60
200
2、截铁丝
【题目描述】
一根铁丝长度固定,小明先把铁丝折成一个矩形,矩形的长为a,宽为b,连接处浪费的铁丝总共为c,已知a,b,c均为整数类型。现在要求从铁丝中截出四段相同长度,且长度为整数的铁丝,求能截到的最长的铁丝长度。
【输入描述】
一行三个整数a,b,c(0<a,b,c<=10000)。
【输出描述】
一个整数。能截出的最长铁丝长度。
【示例输入】
10 20 30
【示例输出】
22
3 分支结构
1、判断星期
【题目描述】
已知2020年9月1日是星期二,实现下列功能:
输入一个9月份的天数,输出这一天是星期几。
【输入描述】
一行一个整数day(1<=a,b<=30)。
【输出描述】
一行一个整数。对应的星期。
【示例输入】
1
【示例输出】
星期二
2、节约粮食
【题目描述】
为响应国家关于节约粮食的号召,某市的各个饭店开启了一份声明:
未浪费粮食:饭菜钱打95折
未吃完打包:饭菜钱打99折,打包费为打折后的2%。
未吃完不打包,1kg以内每浪费100g粮食,额外支付总价的5%饭钱;
未吃完不打包,1kg以上每浪费100g粮食,额外支付总价的10%饭钱;
注:不足100g按照100g计算。
现在需要我们根据顾客本来的饭菜钱及饭菜剩余情况,帮饭店计算出应该支付的金额。
【输入描述】
多行:
第一行一个整数money(0<money<=10000)表示本来的饭菜钱。
第二行一个整数yn,yn=0表示未浪费,yn=1表示有剩余。
如果第二行是0,则没有第三行的输入数据;如果第二行是1,第三行一个整数k,有如下两种情况:
(1)k = 0,表示打包带走。
(2)0<k<10000,表示浪费克数。
【输出描述】
一个小数。最后支付的金额。
【示例输入1】
1000
0
【示例输出1】
950
【示例输入2】
500
1
0
【示例输出2】
504.9
【示例输入3】
500
1
312
【示例输出3】
600
4 循环结构与循环嵌套
1、八骨蛛数
【题目描述】
八骨蛛是影者星球的一种生物,八骨蛛一共有八条腿,腿的长度可以延伸,并且坚硬无比。八骨蛛的弱点在于其腹部,为保证自己安全性,八骨蛛的身体总是悬空。
简化后的八骨蛛长如下的样子:
八骨蛛满足如下特点:
身体是左右对称的;
膝关节处要高于脚;
身体在膝关节和脚的高度的中间。
八骨蛛数是指满足八骨蛛身体特点的数:
八骨蛛数是一个五位数;
八骨蛛数是回文数,即数据倒过来和原数据一致;
八骨蛛数的千位和十位是最大的,万位和个位是最小的;
八骨蛛数的百位等于万位和千位的平均数(等于十位和个位的平均数)
2、输出菱形
【题目描述】
我们可以用编程语言,帮我们构造很多有趣的图案,为了让学生能够熟练掌握循环嵌套的使用,某高校开始了图形输出比赛,小明同学想设计一个菱形,请你帮助他。
小明定义了菱形中心距的概念:菱形中心的字符到四个顶点的距离称为菱形中心距。
例如:
*
* * *
* * * * *
* * *
*
上面这幅图的菱形中心距为3。
【输入描述】
第一行一个整数dis(1<=dis<=10),表示菱形中心距。
第二行一个字符,表示菱形每个位置的字符。字符只能是下面这几类:
五个算术运算符及基本赋值运算符:+,-,*,/,%,=;
大小写英文字母;
数字0-9
如果输入的中心距不在1-10的范围内或者字符不是这三类,则让他们重新输入菱形中心距及字符。直到两个条件都满足为止。
【输出描述】
输出符合条件的菱形。
【示例输入】
2
+
【示例输出】
+
+ + +
+
说在后面的话
相信通过这些题目,大家对基础班的相关知识有更加深刻的体会和感悟了,让我们一起,扬帆起航,开始走向提高班的世界吧!
如果想要了解更多关于信息学的知识,那就关注我吧!
AI与区块链技术
长按二维码关注