C语言I博客作业10
这个作业属于哪个课程 | C语言程序设计I |
---|---|
这个作业要求在哪里 | *作业链接* |
我在这个课程的目标是 | 熟练掌握C语言,并且能在生活中运用 |
这个作业在那个具体方面帮助我实现目标 | 熟练掌握语句的嵌套使用 |
参考文献 | *作业评价标准* |
1.PTA实验作业
1.1本题目要求读入菱形起始字母和菱形的高度,然后输出空心字符菱形。所谓“空心菱形”是指:每行由两端为字母、中间为空格的字符串构成,每行的字符串中心对齐;上半部分相邻两行字符串长度差2,且字母从给定的起始字母逐一递增;下半部分与上半部分对称。
输入格式:
输入在一行中给出起始字母(范围为英文大写字母A-G)和菱形的高度(为不超过10的奇数)。
输出格式:
输出空心字符菱形。
1.1.1数据处理
数据表达:定义整形变量n,i,j,weizhi,s,b,还有字符型变量char ch;
数据处理:weizhi标记第一个字母的位置,s,b标记字母的位置
输入字母n
weizhi=(n+1)/2 计算weizhi的值
s=b=weizhi
for i=1到n
for j=1到b
如果j=s或者b
输出字母
else
输出空格
for end
if i不等于n
换行
if i<weizhi 表示中间行位置 判断是否到达中间行
字母+1
s-1
b+1
然后
else
字母-1
s+1
b-1
结束
1.1.2代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
B 5 | B C C D D C C B | 题目说明 |
C 2 | C | 简短运算 |
1.1.4PTA提交列表及说明
答案错误:%-4d其含义是输出格式为整形,长度为4,左对齐;最开始没有明白这个
答案错误:&N我写成&n,没有区分大小写,三个答案错误都是没找到这个细节错误
1.2一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。
输出格式:
在一行中输出所有满足条件的同构数,每个数输出占6列。没有其它任何附加格式和字符。
1.2.1 数据处理
数据表达:定义整形变量i,for循环,if分支结构
伪代码:
for(int i=1;i<=1000;i++) 题目给出在1~1000内找同构数,进行循环
if(i*i%10==i||i*i%100==i||i*i%1000==i)//i*i就是i的平方,i是一位数的时候,i平方%10只取个位
当与i是符合条件 然后i是2位数 3位数都一样
printf("%6d",i);//输出数字加空格只占用6个位置
1.1.2 实验代码截图
1.2.3 造测试数据
输出数据 | ||
---|---|---|
1 5 6 25 76 376 625 | ||
1.2.4 PTA提交列表及说明
这个题目因为这个格式错误和答案错误消耗了我大概1个小时,原来是输出中间的空格没注意,它是数字加空格只能占6个位置,我没有读懂题目,导致一直没有找到错误所在
2.代码互评
2.1同学代码截图
2.2自己代码截图
1、我内嵌的for比这个同学内嵌的for要复杂很多
2、我写了26行代码,同学写了14行代码,他的比我简洁,比我更有效率,也比我易懂
3、我还用了if-else,外加两个for,他只用了两个for循环结构就搞定了
4丶一个将限制条件在外面,另一个将限制条件放在for循环里考虑
3.1 学习进度条
周数/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第四周/10-17 | 约5小时 | 300行左右 | “for”循环结构语句的基本使用 | 对循环结构的使用不熟练。 |
第五周/10-24 | 约4小时 | 280行左右 | 定义函数的使用 | 对pta上的作业题目很难读懂意思 |
第六周/10-31 | 约5小时 | 350行左右 | 逻辑表达式 关系表达式 | 听课听得懂 做题不会做 |
第七周/11-6 | 约5小时 | 300行左右 | switch语句,char数据类型 | 题目大致能看懂,细致末梢难以处理 |
第八周/11-13 | 约6小时 | 350行左右 | 熟悉使用while和do-while结构解决问题。 | 结构的运用 |
第九周/11-21 | 约7小时 | 400行左右 | 区别break与continue语句 | 对数学知识头疼 |
第十周/11-27 | 约6小时 | 380行左右 | 熟练运用分支语句 | 题目意思难理解 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
在学习的过程中难免会遇到困难但是我们要不畏惧困难 要努力克服学习上的困难,c语言的学习需要夜以继日的练习,不然很容易生疏。这周又学习了新的综合程序设计分支结构,还有char数据类型,switch语句,以及break的使用,收获颇丰,虽然感觉还是挺难得,但是也很有趣。这一个月学习的最多的就是for while if-else break continue等语句, 哪一步设置循环,循环结束的条件是什么,嵌套循环怎么使用都是这个月学习的难点,感觉做pta需要数学基础,不然题目都可能看不懂。千淘万漉虽辛苦,吹尽狂沙始到金。坚持就是胜利!