这个作业属于哪个课程 | C语言程序设计1 |
---|---|
这个作业要求在哪里 | <a href="http://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10095"target=_blank">第九次作业 |
我在这个课程目标是 | 学习如何镶嵌语句,关于berak语句和continue语句的特性和用法 |
这个作业在那个具体方面帮助我实现目 | 编程题都关于镶嵌语句有关,还有两个选这题与break语句和contiune语句有关 |
参考文献 | 《c语音程序设计》<a href="https://baike.baidu.com/item/梅森数/3187853?fr=aladdin"target=_blank">《梅森数性质》 |
1.PTA实验作业
1.1 7-7 编程打印空心字符菱形 (10 分)
本题目要求读入菱形起始字母和菱形的高度,然后输出空心字符菱形。所谓“空心菱形”是指:每行由两端为字母、中间为空格的字符串构成,每行的字符串中心对齐;上半部分相邻两行字符串长度差2,且字母从给定的起始字母逐一递增;下半部分与上半部分对称。
1.1.1数据处理
数据表达:定义很多东西,比如int函数9个,每一个作用都不相同。
数据处理:当输入一个字母和数时,储存在alphabet和height中,给flag和count定义一个数,flag用于19行的判断,用于避免出现重复的字母。然后计算length用于赋值给length1,length2,length3。其中length3用于确定列数和一行中最后一个字母输出和换行。length2用于确定第一个字母出现的地方。count用于结束两个for语句。
1.1.2实验代码截图
1.1.3 造测试数据
数据输入 | 数据输出 | 说明 |
---|---|---|
题目样例 | ||
最大数值 |
1.1.4 PTA提交列表及说明
提交列表说明:
题目不难但是要有耐心,在做题目的过程中主要是思维错误,无法把自己所想的很好的表达出来。主要是第二个for语句的length3在没有改好之前是height,导致无法好的排序。还有38和40行哪里没有好的跳出循环语句,导致无限循环。还有26行的else没有用到导致后面有J的出现。
1.2 7-8 输出三角形字符阵列 (15 分)
本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。
1.2.1 数据处理
数据表达:定义了int型和char型
数据处理:定义的n用于却定行数和列数,用if判断要不要换行。
1.2.2 实验代码截图
1.2.3 造测试数据
数据输入 | 数据输出 | 说明 |
---|---|---|
5 | 中间数 | |
4 | 样例 |
1.2.4 PTA提交列表及说明
提交列表说明:
第一就是输出的第一个字母为B,第12行n-=1为n+=1,使得无法减行。无法成为一个三角形。
2.代码互评
同学代码截图
自己代码截图
1:相对于他的来说我的比较麻烦。运行时间也比他多。
2:他用到一个for和一个if就可以了,而我就用了很多个。
3:他的代码一目了然,而我的需要一行一行的看。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/7-10/13 | 三天 | 90 | if-slse,&&的用法,数学函数 | pta答案正确但有编码器提示 |
10/14-10/20 | 两天 | 98 | for更深层次的用法和math函数的用法 | 无 |
10/21-10/27 | 三天 | 109 | while语句和定义函数 | 实参和形参定义不清楚,无法熟悉用熟悉知识来解决问题 |
10/28-11/2 | 两天 | 156 | 关系符和逻辑符号 | 符号的用法,优先级不太清楚 |
11/3-11/8 | 三天 | 185 | switch,数组的概念 | 数组的多个用法,switch中语句段的意思 |
11/9-11/24 | 三天 | 216 | break,continue语句和镶嵌模式 | 无 |
11/25-12/1 | 三天 | 164 | 无 | 无 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
发现自己对语句的熟悉程度不够。不会很好应用它们。有时候还会忘记它们的组成和用法。