C语言I博客作业03
一、本周教学内容&目标##
第2章 用C语言编写程序-选择结构 2.3 计算分段函数。要求学生掌握关系运算、if-else语句、格式化输入语句scanf(),以及常用的数学库函数。
二、本周作业头##
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://www.cnblogs.com/LHHH1/p/11648216.html |
我在这个课程的目标是 | 学习用C语言编程,熟练if-else语句,学会编程分段函数的应用 |
参考文献 | 《ACM题库题解大全》 |
三、本周作业##
1.PTA实验作业
2.阅读代码
3.学习总结
四、PTA作业##
1.PTA实验作业(15分/题)
1.1.1(7-4)阶梯电价##
1.1.1阶梯电价实验代码截图##
1.1.2数据处理##
·数据表达:用双精度浮点型函数x表示用户用电量,cost表示用户应缴电费
·数据处理:定义cost=500.53+(x-50)0.58表达式,首先通过if-else判断结构来判断用户用电量,进而用表达式计算用户应缴电费
1.1.3 PTA提交列表及说明##
·Q1:刚开始拿到这道题是非常懵的,不知从何下手,通过老师说的Vs2019双击可以指出错误,于是我尝试使用Vs2019进行编程。
·A1:关于%2f与%.2f的区别 刚开始把这两个弄混了,后来通过查阅书籍网上搜索才弄明白。 “%2f是把float的所有位数输出2位,包括小数点,如果不组2位,补0,如果超过2位,按照实际输出%.2f是float后的小数只输出两位”这里我卡了很久,也是自己粗心的原因。
·Q2:关于%d的意思,我也不懂,通过网上搜索知道 %d "表示输入或输出十进制有符号数"
·A2:关于&符号的运用,开始我用Vs进行编程时,粗心将&弄成了&&,于是一直显示编译错误。后来我通过询问学长才明白。这两个符号表示不同的意思。 &是一个位运算符——&&是一个逻辑运算符 //两个的作用也不同。
1.2(7-5)输出三角形面积和周长##
1.2.2输出三角形面积和周长代码截图##
1.2.3数据处理##
·数据表达:首先调用数学函数<math.h>紧跟定义三个整型变量a、b、c定义三角形三边长。还定义了三个双浮点函数area,perimeter,s。
·数据处理:利用判断语句if-else来判断a、b、c三边是否符合三角形的满足条件。
1.2.4PTA提交列表及说明##
·Q1:首先拿到这道题,我考虑了三角形构成的必要条件,但也不知道如何去写这个条件,有了第四题的铺垫,前面的都没啥问题主要是判断语句的书写与构成我思考了些许。
·A1:我寻找一些符号将三边长a、b、c怎样才可以联系在一起,联想到了前面的&&符号,有了前面的铺垫,理清a、b、c利用&&顺利的将它们联系了起来。
·Q2:pow符号运用//上课老师讲了pow是开平方根,我联想到高中学过的海伦公式求三角形面积,于是定义了一个表达式,但后来我却出现很久的编译错误,通过细心观察原来是s=pow((l(l-a)(l-b)(l-c)),0.5);括号的原因。
`A2:也是因为前面的铺垫,关于精确到小数后几点,我非常顺利的完成了此题。
1.3(7-6)三天打鱼两天晒网##
1.3.1三天打鱼两天晒网实验代码截图##
1.3.2数据处理##
·数据表达:定义了一个整型变量day天数,计算天数的余数。
·数据处理:通过if-else语句判断天数除以5的剩余值是否为1、2、3,然后按流程输出。
1.3.3PTA提交列表及说明##
·Q1:我第一个想到要区分闰年,首先我第一次编译时,使用了许多重复的代码,我将每个月的代码天数全部列出来了,真的令我很头痛,本来数学就不好,还要考虑区分闰年问题,我崩溃了许久。
·A1:后来我想到了由于“打鱼”和“晒网”的周期为 5天,所以将计算出的天数用 5去除。欸于是思路一下很清楚了。
·Q2:于是我还是通过if-else语句来判断根据余数判断他是在“打鱼”还是在“晒网”;若余数为 1,2,3,则他是在“打鱼”否则是在“晒网”
·A2:之后我顺理成章的完成了此题。
六、阅读代码##
·我了解到iostream在C语言中没有这个定义,这是C++的头文件,包含了C++中标准输入输出流的定义,其标准输入输出是cin和cout。
·同理cstdio就是将stdio.h的内容用C++的头文件形式表现出来。 这是我前面所不知道的,cstdio是标准 C++(STL),且cstdio中的函数都是定义在一个名字空间std里面的,如果要调用这个名字空间的函数,必须得加std::或者在文件中声明。
·学习到一个C++的函数“getline“,它的作用是读取一行字符直到换行符。C语言中类似的 有 fgets(), gets() 函数
·了解一些其他C++的编程代码,这也是好的,不局限于C语言
3.学习总结##
1.学习进度条
2.累积代码行和博客字数
3.学习感悟##
·A:这周学习了if-else语句,scanf函数,进阶到用判断语句解决数学分段函数,不懂的自己一步步去看书,一步步尝试用VS去调整修改,其实什么事都是要用心去做,然后脚踏实地去完成。
·B:遇到了问题首先还是不要慌,安安静静去解决,重要的是要靠自己去解决,去思考。问别人是没啥用的
·C:还是要把基础打牢把,不懂的就要去看书,扎扎实实打基础。
·D:有空闲时间的时候,多去看一些视频,把自己提高,多去熟悉一些代码,总之学习编程的的秘诀是编程编程再编程。