| 一 | 二 |
|---|---|
| 这个作业属于哪个课程 | C语言程序设计 |
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-1/homework/8725 |
| 我在这个课程的目标是 | 能够熟练的运用C语言,解决一些问题 |
| 这个作业在那个具体方面帮我实现目标 | 学会好的提问方式,软件的安装与操作 |
| 参考文献 | https://www.nowcoder.com/ta/acm-solutions?query=&asc=true&order=&page=2 |
1.PTA实验作业
##1.1计算存款利息
本题目要求计算存款利息,计算公式为interest = money * pow((1+rate,year) - money。
1.1.1实验代码截图

1.1.2数据处理
数据表达:用了定义变量money,rate,year,interest.都是题目中给出的。被double定义成双精度浮点型变量。
数据处理:表达式:interest = money * pow((1+rate,year) - money,流程结构:预处理指令-函数部分-声明变量-赋值-输出。
1.1.3PTA提交列表及说明

Q1.对scanf()函数不理解,出现了编译错误,段错误。
A1.通过翻译错误原因,经过多次修改,解决了忽略返回值“scanf”,用属性warn_unused_result[-wunused result]声明 scanf(“%d”和money)这个问题。
1.2阶梯电价
为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。请编写程序计算电费。
1.2.1实验代码截图

1.2.2数据处理
数据表达:用了double型变量,if-else语句,定义变量cost。
数据处理:表达式:cost=0.53x, cost=(x-50)0.58+50*0.53;流程结构:预处理指令-定义变量-调用scanf函数,if-else语句-输出。
1.2.3PTA提交列表及说明

Q1.刚开始没用看清楚题目。老是编译错误。
A1.再次检查题目,发现对小于0也要进行分段处理。
Q2.出现部分答案错误,找了20分钟还没找到错误。
A2.最后通过在网上找相似的题目,解决了问题。
1.3输出三角形面积和周长
本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式area=sqrt(s(s-a)(s-b)*(s-c));
1.3.1实验代码截图

1.3.2数据处理
数据表达:用了a,b,c,s,area,perimeter定义变量,if-else语句。
数据处理:表达式:area=sqrt(s(s-a)(s-b)*(s-c)),s=(a+b+c)/2,perimeter=a+b+c。流程结构:预处理指令-定义变量-调用scanf函数,if-else语句,分成正常三角形和练不成三角形两种情况-输出
1.3.3PTA提交列表及说明

Q1.对关系运算符不够了解。经常出现编译错误。
A1.重新查找资料,找到了错误点a+b>c&&a+c>b&&b+c>a中的&要打两个。
2..阅读代码
把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。

优点:上述代码是一个数学问题,关于放苹果的方法有多少种?这个代码很好的解决了这个问题,能够快速,清楚的算出多少种方法。为我们解决这一系列的问题提供了一种便捷的方法。程序结构简洁、紧凑、规整,表达式简练、使用灵活。而且还在旁边写了一些为什么这样编译的理由。可以让读者快速的了解并学会如何运用。
学习的地方:代码简单但又很巧妙,并且还有解释,这是我应该学习的地方,要学会精益求精。
3.学习总结
3.1学习进度条
| 日期 | 这周所花的时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 10.7-10.13 | 7个小时 | 80+ | 编译if-else语句,变量,数据类型不清楚,算术运算与赋值运算 | 容易混淆“=”和“==”,中英符号。 |