这个作业属于哪个课程 | C语言程序设计II |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11634 |
我在这个课程的目标是 | 巩固函数 |
这个作业在那个具体方面帮助我实现目标 | pta实验作业、同学代码互评。 |
参考文献 | C语言程序设计(3)、C primer plus |
学号 | <20208956> |
1.PTA实验作业(20分/题) | |
请再此处列出自己的排名图片。 | |
从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下:
1.1 题目名1 统计某类完全平方数
题目内容描述
本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。
1.1.1数据处理
数据表达: 定义整形变量x,A,分别用来存放sqrt(N)、x*x。定义a[100]数组初始为零,用b表示每位的数字。
数据处理: 在自定义函数中定义整型变量x用于存放sqrt(N)如果N是一个完全平方数,则x*x==N,如果N不是完全平方数,那么sqrt(N)得到的将不是一个整数,但x为整形,所以此时x*x!=N。以此判断是否为完全平方数,a[b]是表示字长为b的数组,a[b]++是对这一种数组计数(计算相同数字有几个)当b的变化这个数组也随之变化,if(a[b]>=2)是判断字长相同的数组是否不少于二。
1.1.2实验代码截图
1.1.3 造测试数据
输入样例 | 输出样例 | 说明 |
---|---|---|
105 500 | cnt = 6 | 在105到500之间有六个数满足题目要求 |
1000 3000 | cnt = 10 | 在1000到3000之间有十个数满足题目要求 |
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。
提交列表说明:
1.一开始没有想到怎么样去表示每个数上有几个相同的数,后来问同学知道了。
2.先没有使用数组,单纯的用if判断,只能满足三位数的。
1.2 题目2 解一元二次方程
1.2.1 数据处理
数据表达: 数据类型高精度浮点型a,b,c为题目要求,x,y为方程的两个解,z为共轭的实数部分
数据处理:
1.2.2 实验代码截图
1.2.3 造测试数据
输入样例 | 输出样例 | 说明 |
---|---|---|
0 4.5 -3.6 | x = 0.8 | 正确 |
0 2.8 0 | x = 0 | 正确 |
1 -0.4 0.04 | x1 = x2 = 0.2 | 正确 |
-0.2 0.04 -0.01 | x1 = 0.1-0.2i, x2 = 0.1+0.2i | 正确 |
1.2.4 PTA提交列表及说明
1.最终的这个代码并不是我自己写出来的,我一开始写的是按照实验书上的方式,但是一直是部分正确,我也没找到问题出在哪了。于是只好找同学问了。
2.段错误是因为我在scanf中忘记使用&了
3.还有%g不是很理解,为什么我用%。1f就错了。
2.代码互评(5分)
同学代码截图
1
2
自己代码截图
1.这道题应该来说是这次作业最简单的一道,但是它用了两个自定义函数,其他两位同学的的代码思路与我的是相同的。
2.定义变量不一样,第二位同学所用变量不是函数接口中的number,但是没有影响,但我觉得因该按照题目的来更好些。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第八周 | 18 | 220 | printf,scanf的使用,以及int类型 | |
第九周 | 22 | 231 | if语句分支结构、调用数学函数 | |
第十周: | 25 | 255 | for、while、do...while语句、字符型数据的使用 | switch语句多分支结构、break语句和continue语句 |
第十一周 | 28 | 600左右 | switch语句,逻辑运算符,数组,自定义函数 | 多个循环结构的嵌套使用容易出错 |
第十二周 | 27 | 680左右 | 无新的知识点 | 排序问题 |
第十三周 | 25 | 400左右 | 巩固switch语句、const限定符、short int、long int、long long int、unsigned整数类型 | 无 |
第十四周 | 20 | 500 | 宏定义、多种循环结构的使用 | for循环与while循环之间的转换 |
第十五周 | 19 | 700 | break,continue语句的使用,九九乘法表,水仙花数··· | 数组的使用,菱形字符··· |
第十六周 | 10 | 200 | 使用数组表示一个数中有几个相同数字、变量的作用域与生存期、全局变量的作用域与生存期 | 对变量的作用域理解不够透彻 、数组的使用不熟练、对自定义函数与主函数之间的变量使用还有点混乱 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
这次的pta挺难的,我编程题都是问同学的,感觉学到的东西太少了,做这些题有点吃力。现在好多代码看不懂。脑子完全用不上了啊~~~~.