C语言|博客作业04

C语言|博客作业04

问题 答案
这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/9770
我在这个课程的目标是 熟练使用c语言编程
这个作业在哪个方面具体帮助我 可以提高自己表达能力,可以从写过的代码中找到自己的问题
参考文献 https://wenku.baidu.com/view/88ce638127d3240c8547efa5.html

1.PTA实验作业


从PTA题目集中选出2个你最满意的题目完成以下内容

1.1题目名(7.4)

本题要求对两个正整数m和n(m≤n)编写程序,计算序列和m​2​​+1/m+(m+1)​2+1/(m+1)+⋯+n*2+1/n。

1.1.1数据处理

数据表达:本题我用整型变量int定义,用double定义sum,加上for循环,最后加入%.6lf表示保留六位小数。
数据处理:给m,n赋值,然后准备一个变量sum用于输出,并利用for将循环的数加起来,最后注意六位小数的精度,输出值sum。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
10 15 955.489261 m<n的情况
10 10 100.100000 m=n的情况
15 10 0.000000 m<n的情况

1.1.4 PTA提交列表及说明


错误原因:1.编译错误:没注意输出结果要保留六位小数。2.编译错误:“%d”又写成“%f”,太粗心。
其实这题与之前题目差不多,熟练就好。

1.2题目名(7.1)

本题要求编写程序,计算序列 1 + 1/2 + 1/3 + ... 的前N项之和。

1.2.1数据处理

数据表达:本题我用double定义正整数N和sum,加上for循环,最后加入%.6lf表示出保留六位小数。
数据处理:给正整数N赋值,sum用于输出,再根据之后的"s+=1/n"加上for的循环数加在一起,输出值sum.

1.2.2实验代码截图

1.2.3造测试数据

输入数据 输出数据 说明
1 1.000000 取N最小值
10 2.928968 N取10的值
0 0.000000 取N不存在的数

1.2.4PTA提交列表及说明


错误原因:1.编译错误:“scanf("%lf",&n);”本来没打分号,找了很久。2.编译错误:"sum = %.6lf"中间刚开始忘记空格,后面才意识到。
这题相对于是最不麻烦的,仔细就好。

2.代码互评(7.3)和(7.4)

同学代码截图
1.
自己代码截图
1.
区别:(1.)这个同学相比我又定义了denominator
(2.)我认为我的代码相对更简便,直接用double定义出真正数N,item和flag,并用sum输出值,列出式子“sum=sum+flag(1.0/(3i-2))”求值即可。
同学代码截图
2.
自己代码截图
2.
区别:(1.)这位同学用“pow”来代表“i”的2次幂,而我的是直接“i * i”。然后其它的就差不多一样了。

3.学习总结

3.1 学习进度条

周/日期 这周所花时间 代码行 学到的知识点简介 目前比较迷惑的问题
1/21-1/23 三天 47 基础的代码知识 暂无
2/26-2/29 四天 64 学会用MinGw-w64来编译C程序 暂无
3/9-3/11 三天 99 学会了赋值和“If-else句式”的运用 暂无
4/16-4/18 三天 87 学会运用代码进行计算 暂无

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

(1)if语句,如:首先判断关键词 if 后括号内条件表达式的值,如果该表达式的值为逻辑真(非 0),则执行 if 体,接着执行 if 体后的其他语句;否则,若该表达式的值为逻辑假(0),则不执行该 if 体,直接执行 if 体后的其他语句。
(2)double语句,如可以用格式化输入输出语句scanf和printf进行double类型的输入输出,格式化字符为%lf,定义double a;可以用scanf("%lf", &a);进行输入,用prinf("%lf",a);进行输出。

3.3.2 学习体会

转眼已经学习C语言也有这么久了,其实刚学这的时候我是什么都不懂的,但经过了这么久的写pta,写作业,老师讲解,也算有了些了解,而且我现在越来越喜欢刷PTA了,犯的错误相比以前少了很多,刚刚我又从同学的代码中学到了更多写一个代码的方法,有一句古话说得好:“宝剑锋从磨砺出,梅花香自苦寒来。”相信只要努力一定会有你想要的结果出现人间。

原文地址:https://www.cnblogs.com/wl1314/p/11696225.html