C语言I博客作业04

这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11493
我在这个课程的目标是 更好的理解现在所学习的内容,补充细节和框架
这个作业在哪个具体方面帮助我实现目标 思维导图和代码互评
参考文献 《C Primer Plus》

1.PTA实验作业

1.1实验4-2-3 验证“哥德巴赫猜想” (20分)

数学领域著名的“哥德巴赫猜想”的大致意思是:任何一个大于2的偶数总能表示为两个素数之和。比如:24=5+19,其中5和19都是素数。本实验的任务是设计一个程序,验证20亿以内的偶数都可以分解成两个素数之和。

1.1.1 数据处理

数据表达:
1.变量n:由输入得来,类型为整型;
2.变量i:由赋值得来,类型为整型;
3.变量flag:由赋值得来,类型为整型;
4.变量a:由赋值得来,类型为整型;
5.变量b:由赋值计算得来,类型为整型;
6.变量x: 由输入得来,形式参数,类型为整型;
7.变量prime:由赋值得来,实际参数,类型为整型。
数据处理:
1.表达式:赋值表达式,算术表达式,关系表达式,逻辑表达式。
2.流程结构:声明自定义函数;主函数:1.定义变量,2.输入变量,3.while循环(判断两个整数是否为素数,相加是否为所输入的值);自定义函数Prime:1.定义返回值,2.赋值返回值,3.用if-else语句判断是否为素数。
3.主调函数:main,被调函数:Prime,类型为int,形参为x,实参为prime,i,类型均为int。

1.1.2 实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
8 8 = 3 + 5 8的素数和中P最小的为3
5996 5996 = 43 + 5953 当p较大时的输出
3 输入为奇数,不满足题目要求,无输出

1.1.4 PTA提交列表及说明

编译错误:在vs中编写的程序,复制粘贴过来后忘记删除_s。
部分正确:测试点2,测试点3运行超时。
部分正确:测试点3,答案错误,后发现是判断素数时循环中少了一个等于号,导致部分不是素数被判断为素数。

1.2 7-12 打印沙漏 (20分)

本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印:

*****
 ***
  *
 ***
*****

所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。
给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。

1.2.1 数据处理

数据表达:
1.变量n:由输入得来,为整型;
2.变量row:由计算得来,为整型;
3.变量s:由计算得来,为整型;
4.变量a:由赋值得来,为整型;
5.变量c:由输入得来,为字符;
6.变量i,j:由赋值,计算得来,为整型。
数据处理:
1.表达式:赋值表达式,算术表达式。
2.流程结构:定义变量,输入变量,for循环计算,for循环嵌套for循环分别输出空格与字符,输出剩余的字符。
3.函数参数:主调函数main,无被调函数。

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
1 * 0 输出一行,剩余0
6 * 5 因为不满足输出三行,所以只输出一行,剩余5个
17 0 刚好满足输出五行,于是输出沙漏并输出0

1.2.4 PTA提交列表及说明

编译错误:在vs中编写的程序,复制粘贴过来后忘记删除_s;
部分正确:测试点2,测试点3,测试点4错误,因为当字符不满三行时仍然输出三行;
部分正确:测试点3错误,当出现最小n及最大于时,仍然多显示两行,且余数显示负数。

2.代码互评

同学代码:
1.

2.

自己代码:

不同:

第一份代码中编写了两个自定义函数,将判断是否为素数,与判断是否相加等于输入的数字分别用自定义函数表达,节省了运行时间,主函数也更简洁明了。
第二份代码中判断素数的自定义函数运用了函数返回值的特性,1是真,0是假,在主函数的if语句中直接判断真假,而不需要自己再定义一个变量来存储返回值。

3.学习总结

3.1 学习进度条

周/日期 这周所花时间 代码行 学到的知识点简介 目前比较困惑的问题
第八周 30小时 600 基础知识,输入输出函数if-else语句
第九周 30小时 700 for循环,while循环,switch语句,数组 怎样用数组打出金字塔和蛇形数组
第十周 30小时 500 二维数组的使用
第十一周 25小时 550 自定义函数,命名法 怎样解决自己的暴力解题思路,让代码更直观简洁

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3#3.3.2 感悟

这周学习了自定义函数,之前写题时碰到不少的运行超时都随着自定义函数的的到来解决了,也证明了我现在写题的方式是十分表层的,还有很多东西都没有接触到,希望下周继续加油。

posted @ 2020-11-14 19:23  葳染  阅读(201)  评论(7编辑  收藏  举报