作业头
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11613 |
我在这个课程的目标是 | 学会循环嵌套,本次作业拿到满分 |
这个作业在那个具体方面帮助我实现目标 | 作业的严格要求和PTA的精选题集 |
参考文献 | 《The C programming language》,CSDN,《C Primer Plus》,《C语言程序设计》 ,简书,GitHub,博客园 |
学号 | 20209078 |
1.PTA实验作业(20分/题)
7-3 字符菱形 (15分)
根据读入的字符和边长,勾画字符菱形。
1.1.1 数据处理
①数据表达:定义了整形变量n,字符变量c和两个自定义函数
②数据处理:
自定义函数 来打印每行的空格和字符Line();
自定义函数 来打印菱形LingXing();
引用函数, while (c != c1) {
Lingxing(c, n);
c1 = c;
scanf("%c %d ", &c, &n);
}
利用c1=c判断,及时跳出循环,避免重复打印。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
A 5 B 3 | 题目样例 | |
C 3 | 测试单独打印一个菱形 |
1.1.4 PTA提交列表及说明
提交列表
提交列表说明:
1.多种错误:答案错误和格式错误混在一起了。
2.格式错误:好恶心,scanf("%c %d ",&c,&n);必须加空格,不然就把空格读进去了,这就很EX。
3.答案正确:这道题花了我一个多小时,因为它看起来难所以我一直在测试区测试,等到最后才提交的,所以就显得很快,其实我是十点多写的PTA,写到这已经凌晨一点多了。
1.2 7-1 显示指定范围内的素数
输入整数m,将所有大于1小于整数m的素数存入所指定的数组中(数组最多只存放100个素数,超过则提示“OVERFLOW”),输出各素数——若输入的m≤2,则提示“NO”,程序终止。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
1.2.1 数据处理
①数据表达:定义了整形变量n, i, a, t。
②数据处理:
读取数值scanf();
如果n>541(541是从2开始的第100个素数)
就输出OVERFLOW
如果n==1则输出NO。
不然就利用循环输出素数。累加再利用if(a%15==0){printf("
");}换行。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
568 | OVERFLOW | 题目样例 |
1 | NO | 题目样例 |
100 | 题目样例 |
1.2.4 PTA提交列表及说明
提交列表
提交列表说明:
1.答案错误:一直错误,很烦躁,那超过100个素数再输出OVERFLOW,除了老师没讲的,试了很多方法都不行,最后只好不讲武德,直接把第一百个素数找出来,
n大于这个就输出OVERFLOW,终于对了。
2.答案正确:同上,心累。
2.代码互评(5分)
- 同学代码截图
同学一的作业
同学二的作业
-
自己代码截图
-
比较:
1.同学一滴代码用的是学过的知识,利用for循环嵌套并使用switch简化if-else做的,学以致用,厉害。
2.同学二用数组,但思路和整体写法都没变,不够简单。
3.我的是改了一下同学二的代码。并且简化了。写法上看起来简单,其实也差不多。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/12—10/18 | 40h | 581 | printf(),scanf()的用法,if-else的用法 | 无 |
10/19—10/23 | 33h | 617 | for循环 | 无 |
10/24—10/25 | 13h | 262 | do...while循环 | 无 |
10/26—11/1 | 15h | 458 | 自定义函数 | 无 |
11/2—11/8 | 19h | 144 | pow(),sqrt()函数 | 无 |
11/9—11/15 | 14h | 597 | 函数 | 如何改错,会调试了还是很慢,不熟练 |
11/16—11/22 | 21h | 241 | 分支结构 | 函数递归?还有如何替换字符串。 |
11/23—11/29 | 29h | 868 | switch语句 | 我也不知道我从哪开始就懵了 |
11/30—12-6 | 10h | 179 | while和do...while循环 | 无 |
12-7—12-13 | 31h | 312 | 循环嵌套 | 如何巧妙运用continue |
3.2 累积代码行和博客字数(5分)
时间 | 博客字数 | 代码行数 |
---|---|---|
第一周 | 1951 | 879 |
第二周 | 1994 | 458 |
第三周 | 6917 | 144 |
第四周 | 1924 | 597 |
第五周 | 4553 | 641 |
第六周 | 3792 | 868 |
第七周 | 4849 | 179 |
第八周 | 4060 | 312 |
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
学习内容总结:
- 本周我们学习了循环嵌套,能够解决打印复杂图形问题
感悟:
- C语言越来越难了,看来不能随便搞了。另说goto语句,bug真多,不推荐用。
- 室友复习好积极,我却总是拖延,,,看来要戒游戏一段时间了。
- 这周的PTA难度挺大,折磨人。打印菱形这类算是比较经典的嵌套了但是有难度。
- 刷题、刷题、刷题。