C语言I博客作业10

问题 回答
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 C语言I博客作业10
我在这个课程的目标是 完全独立编写一个小游戏程序,并能正常运行。
这个作业在那个具体方面帮助我实现目标 对于循环结构的层层分析,例如for循环,while,do-while循环,以及它们的嵌套。
参考文献 《C语言程序设计》 《C Primer Plus》

1.PTA实验作业

1.1 输出三角形字符阵列

本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。

1.1.1数据处理

数据表达:用int定义整型变量n,i,j;用char定义字符型变量。
数据处理:算术表达式,条件表达式,关系表达式,赋值表达式。运用for循环及其它的嵌套。

int定义变量输入数n,循环次数i,j;
char定义变量x并赋值;
scanf输出变量n;
for(初始条件;i<n;i自增);
{
for(初始条件;j<n-i;j自增)
{
x关系表达式;
输出x;
}
输出条件换行;
}
return 0;

1.1.2实验代码截图

1.1.3 造测试数据

输入 输出 说明
2 A
B C
在题目要求范围内
0 不在要求范围
7 A B C D E F G
H I J K L M
N O P Q R
S T U V
W X Y
Z [
\
超出范围

1.1.4 PTA提交列表及说明

1.编译错误:对几个变量的定义不明确
2.答案错误:在内循环中循环条件应为j<n-i,而我误以为是j<i
3.答案错误:在输出中应注意各数之间应空格,所以应输出"%c "
4.格式错误:多打了一行空格

1.2 梅森数

形如2^n−1的素数称为梅森数(Mersenne Number)。例如2​2−1=3、23−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了2​^31−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。
本题要求编写程序,对任一正整数n(n<20),输出所有不超过2​^n−1的梅森数。

1.2.1 数据处理

数据表达:用int定义整型变量a,b,n,i,j
数据处理:条件表达式,算术表达式,关系表达式,赋值表达式,运用for循环结构和if分支结构;

int定义变量输入数n,循环次数i,j,输出值a,判断条件b;
scanf输出n;
if(条件n1)
{
输出 None;
}
for(i初始状态;循环条件;i自增)
{
a的算术表达式;
for(j初始状态;循环条件;j自增)
{
if(条件)
{
b=1;
break 跳出当前循环;
}
}
if(b
0)
{
输出a;
}
b=0;
}
return 0;

1.2.2 实验代码截图


1.2.3 造测试数据

输入 输出 说明
8 3
7
31
127
大于零小于20
-1 小于零
21 3
7
31
127
8191
131071
524287
大于20

1.2.4 PTA提交列表及说明

1.答案错误:没有给a赋值为零,系统自动赋值为1,导致答案错误;

2.代码互评

同学代码截图


自己代码截图

1.同学在他的代码中使用函数来解题,利用主函数和自定义函数来分出不同的情况。
2.相比于他们的,我个人认为我的代码更容易被他人读懂
3.他们的代码比我的规范一些,比如变量定义部分,输入,循环结构,输出等都比较明确的表达出来。

3.学习总结

3.1 学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第三周10.9-10.12 两天 188 对代码数据的处理了解,比如类型结构等 什么时候用int,double声明变量,逻辑运算符的运用等
第四周10.16-10.18 一天半 190 如何用double型数据使用lf%,怎样在程序中用for语句实现循环,可指定循环次数 循环体中的关系表达式的正确运用
第五周10.23-10.26 两天 226 运算符的优先级顺序,自定义函数的编写,对数据参数的了解 具体如何在题目中定义函数,参数又应放在哪里才是正确位置
第六周10.30-11.2 三天 348 分支结构应用,逻辑运算符的使用 在使用if-else语句时{}的位置与格式,语句一多就搞不清楚了
第七周11.5-11.8 两天半 300 switch语句作为分支结构应用 伪代码到底该如何编写,写的详细和正规代码没什么两样,写的粗略思路又不够清晰
第八周11.13-11.15 两天半 300 使用while和do-while结构解决问题 对于不同情况下for循环语句和while循环语句如何选择使答题更简便
第九周11.20-11.22 两天半 311 使用break语句和continue语句 在一起用,有时会混淆两个概念,还不太熟悉它们的用法。
第十周11.27-11.29 两天半 269 对各个循环结构的综合应用 对于其区别还不能完全熟悉掌握

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

  • 学习了while,do-while,for三种循环结构的使用和它们之间的区别,以及break,continue的用法。
  • 循环次数已知时,常用for;循环次数未知时,常用while或do-while。
  • 几种循环变量的初始化的位置不同。
  • while和for循环是当型循环,do-while是直到型循环。
  • break语句只能用于循环语句和switch语句。
posted on 2019-11-28 23:45  oyxyoyxyo  阅读(242)  评论(4编辑  收藏  举报