第三次作业

问题 答案
这个作业属于哪个课程 c语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/8718
我在这个课程的目标是 熟练使用C语言
这个作业在那个具体方面帮助我实现目标 pta习题
参考文献 https://leetcode-cn.com/problems/plus-one/comments/

1.PTA实验作业(15分/题)

1.1题目描述

  • 本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公

1.1.1实验代码截图

1.1.2 数据处理

运用了三条边长a,b,c,周长的一半s,四个变量,变量类型double
数据用到的表达式有sqrt(s(s-a)
(s-b)*(s-c)),a+b+c,s=(a+b+c),结构流程为选择结构。

1.1.3

Q1:部分错误,一开始以为是算法有问题,特定的值无法算出结果。
A1:仔细看了十几分钟,发现是perimeter拼错了。

1.2题目描述

*中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?

1.2.1实验代码截图

1.2.2数据处理

*运用了天数N,天数除五的余数y两个个变量,都属于int变量
*运用的表达式有y=N%5,结构流程为选择结构

1.2.3


Q1:多次的部分正确,由于之前有部分正确最后发现是拼写错误的先例,我选择多次修改并检测拼写问题。
A1:穷途末路之后选择仔细看atp提示,显示N最大值时计算错误,意识到余数取0时为晒网,于是在条件中加入y>0一项。

1.3题目描述

  • 为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。请编写程序计算电费。

1.3.1实验代码截图

1.3.2数据处理

有电量,电费x,cost两个变量,变量类型为double
运用的表达式有cost=0.53x,cost=50
0.53+(x-50)*0.58,结构为选择结构

*忘记为啥了。

2.int* plusOne(int* digits, int digitsSize, int* returnSize){

for(int i=digitsSize-1;i>=0;--i)
{
    digits[i] = (digits[i]+1)%10;
    if(digits[i]!=0)    break;
}
*returnSize = digitsSize;
if(digits[0]==0)
{
    int *result = (int*)malloc(sizeof(int)*(digitsSize+1));
    result[0] = 1;
    for(int k=1;k<digitsSize+1;++k)
        result[k] = 0;
    *returnSize = digitsSize+1;
    return result;
}
else
    return digits;

}
*这行代码可以输入一个由三个数组成的数集,并且在最后一个数上加一然后输出。
*这行代码由c语言编写,执行用时0ms,打败%100的用户,内存使用7.2MB,打败了%5.51的用户。
*虽然不怎么看的懂,但是执行用时和低内存使用表明这份代码的优化十分到位。

3.学习总结

3.1学习进度条

| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
| - | - |
| 10/7-10/14 | 7个小时 | 130 | 选择结构的使用,变量类型的区别及使用 | 为啥老师要让我们看看不懂的代码 |

3.2 累计代码行和博客字数

3.3 学习感悟

*在学习了三周的c语言课,和一些网课后,学会了浅显的使用c语言简单的编写一些简单的小程序,以为自己已经算是入门,但在老师推荐的两个网站里,找了半个小时,连最简单的两数相加的题目都无法看懂,所有简单题也是如此,深感自己还有很长的路要走。

posted @ 2019-10-10 23:34  ‘panzer  阅读(336)  评论(0编辑  收藏  举报