问题 | 答案 |
---|---|
这个作业属于哪个课程 | C语言程序设计 |
这个作业的要求在哪里 | 作业要求 |
我在这个课程的目标是 | 熟悉掌握c语言程序设计基本使用方法 |
这个作业在那个具体方面帮助我实现目标 | 熟悉代码程序设计,了解全局变量,外部变量,局部变量的区别与相似点,数组的使用方法。 |
参考文献 | 《PTA程序设计类实验平台》百度百科,WPS office,《简书》,Xmind思维导图,dev c++,知乎,CSDN等 |
一.PTA实验作业
1.1统计各位数字之和是5的数本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。
1.1.1数据处理
(1.)数据表达:定义了sum,c,count,的整型变量,定义sum表示正整数的各位数字之和,定义c为输入整数后取余得到的值。
(1.)数据处理:使用了while(number!=0)循环语句来计算正整数的各位数字之和,使用for(x=a;x<=b;x++)循环语句来统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。
(3.)函数处理:运用int main()的主调函数。
BEGIN
定义变量sum,c,
do while(number!=0)
c=number除以10取余
number除以10
sum自加
end while
if sum=5
返回1
否则
返回0
开始定义count且赋值初始值0
do for循环(x=a;x<=b;x++)
if(是(x))
count自加
x等于sum的所有值相加;
输出printfcount sum
END
1.1.2实验代码截图
1.1.3造测试数据
输入 | 输出 |
---|---|
104 999 | |
111 444 | |
222 333 |
1.1.4PTA提交列表及说明
1.编译错误:在dev c++里面首次编写,调试很多错误,依次改有些少了空格,多了空格。
2.编译错误:没有对count赋初始值0。
3.编译错误:题目给出的int后面要去掉分号。
4.编译错误:while拼写错误。
5.编译错误: for循环后面多了个分号。
6.编译错误:格式不正确。
1.2 6-1 统计某类完全平方数本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等
1.2.1数据处理
(1.)数据表达:设置了题目给定整型参数i,数组a[100],b,count且对其赋初始值0。
(2.)数据处理:设置了数组a[100],while以及for循环语句。
(3.)函数处理:运用了int main()的主调函数。
BEGIN
定义i a[100],b,count,j
i=N赋值
b=sqrt(i)把i开跟号
if(b*bi)如果b的平方等于i
do while
a[count]=i%10
i=i/10
for循环j自加
如果a[count]a[j]
则返回1
count自加
END
1.2.2实验代码截图
1.2.3造测试数据
输入 | 输出 |
---|---|
105 500 | |
166 899 | |
122 233 |
1.2.4PTA提交列表及说明
1.编译错误:很多空格什么的格式不正确。
2.部分正确:三个测试点只有sample全是3位数这个测试点正确,除余的时候10打成了100.
3.部分正确: 三个测试点的全是4位数的测试点错误,不知道如何改。
4.部分正确:询问后发现return 1打成return 0
二.代码互评论
我的代码
同学代码
区别
(1)这个同学思路是定义一个整型数组后用for循环吧i从0到9累加,取余等于i数组a[i]加一,当数组等于2返回1,每次循环以后退一位。。
(2)相比之下我的代码看起来简洁一些,但他这种方法还是很可取的
感悟
(1)互评代码的好处就是能够在同一个题目中,学习到不同的解题方法。一般情况下感觉我每次想的方法都不如同学想的简单,这是我要学习的地方。
(2)也会在这个过程会发现有时候读不懂同学的代码,就会去百度,又可以加深对知识点的认识。
三.学习
3.1学习进度条
周期/日期 | 这周所花时间 | 代码行 | 学习到的知识点介绍 | 目前比较迷惑的问题 | 解决方式 |
---|---|---|---|---|---|
第一周 | 一个中午左右 | 20行左右 | 第一次使用博客园以及接触PTA | 对于这门课程属于懵懂状态,仅仅只能明白字面意思。 | 网上百度查询相关课程资料 |
第二周 | 两个中午左右 | 30行左右 | 学会《智慧的提问》以及简单的代码数据分析 | 对于课程依旧陌生,但有了新的认识。 | 看c语言教材书籍 |
第三周 | 两天左右 | 90行左右 | 学习了if-else语法,赋值运算,阶梯价位计算等 | 遇到复杂的编程问题不知道如何开始。 | 在b站,慕课等平台观看零基础C语言入门课程 |
第四周 | 两天左右 | 一两百行左右 | 学会"for"循环语句的基本转换方法以及如何对自己的代码进行调试错误 | 对于整个程序编码设计流程还不够熟练,不能完全独立完成,总是要寻求同学老师的帮助 | 反复编译同一个题目,直到理解此题流程 |
第五周 | 三天左右 | 一两百行左右 | 学会调用函数的使用,求函数阶层等 | 对于整个程序编码设计流程还不够熟练,不能完全独立完成,总是要寻求同学老师的帮助 | 观看网课 |
第六周 | 三天左右 | 两百多行 | 学会熟悉多分支结构、字符型数据类型和逻辑运算符 | 在每次写PTA时寻找错误要找很久,更正很多遍才能正确,但相比以前构思时思路清楚很多 | 记忆逻辑运算符,字符型数据类型等字符 |
第七周 | 两天左右 | 两百行左右 | 学会使用swtich分支语句的使用,此次PTA作业都是用swtich语句编写 | 在构思PTA作业时不能很快就清楚题目思路是什么,每个题目花的时间太久了 | 询问同学的构思方法,加以学习。 |
第八周 | 一两天 | 两百多行 | 熟悉使用while和do-while结构解决问题 | 还是相同的摸不到思路的问题,很多时候不知道如何开始编写 | 花更多的时间去学习。 |
第九周 | 两天 | 一两百行 | 学会熟悉使用break语句与continue语句,分清楚两者之间的联系和区别 | 感觉PTA一次比一次难琢磨,现在有点害怕写PTA了学的东西越来越多,自我觉得学的不怎么样 | 脚踏实地的去认真研究,花时间是重点。 |
第十周 | 一两天 | 一百多行 | 本周没有学习新的知识,写PTA用到了字符型变量,老师对本个章节进行了总结。两位助教为我们讲解了他们的写题思路学到了一些。 | 学的东西越来越多就容易搞混淆 | 多练多写多看书! |
第十一周 | 两天 | 两百多行 | 本周学习了全局变量和局部变量的区别和相似点,数组的使用方法。 | 说实话不太能搞得懂 | 课后翻阅资料总结,询问助教,看网课等等。 |
3.2累积代码行和博客字数
3.3学习内容总结
3.3.1感悟
- 这是最后本学期最后一次博客园和PTA的作业了,这一次的PTA作业真的很难很难,对于我这种很水的水平来说真的很困难,导致这次作业完成速度很慢,而且质量不太高,都需要问别人或者查找资料才可以开始编写,越是这样越感受到了差距。
- 这周学习了局部变量和全局变量适合用于什么场合,多了新的认识,也不知道为什么每次都在感慨作业太难了,我也太难了,寒假要好好刷网课了,多敲代码。
- 正在准备期末考试,希望不要抽到复杂题, 要把之前的作业都重新复习一遍,也是一个艰难又漫长的道路,加油把!希望期末不要挂科!