PTA练习总结
练习2-15 交错的加减运算
练习2-15 求简单交错序列前N项和 (15分)
本题要求编写程序,计算序列 1 - 1/4 + 1/7 - 1/10 + … 的前N项之和。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后三位。题目保证计算结果不超过双精度范围。
输入样例:
10
输出样例:
sum = 0.819
在做这个题中遇到的问题是,没有掌握到如何进行交错的加减运算,在搜索之后发现,需要在循环中加一个 x = -x 即可。(我太菜了,是个憨批)
习题2-6 在循环后进行清零
习题2-6 求阶乘序列前N项和 (15分)
本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。
输入格式:
输入在一行中给出一个不超过12的正整数N。
输出格式:
在一行中输出整数结果。
输入样例:
5
输出样例:
153
做这道题遇到的问题是,计算所得的数非常大,两个循环的思路是没有问题的,但关键在于,没有在第二个循环处将sum1的值再次变1。所以,只需要在第一个循环的内容加一个 sum1 = 1;且加在最前面即可。
练习3-3 c语言变量的初始化赋值
在做练习3-3时,average的平均数算出来非常的大,在检查算法后发现并没有出错,最后发现是没有对sum进行初始化赋值。在C语言中,如果没有对一个变量进行赋值,则为给它随机分配一个值,这就是为什么average非常大的原因,因为给sum随机赋了一个非常的值。
习题3-5 三角形的判断
C语言中,三角形判断的方式
if(a<(b+c) && b<(a+c) && c<(a+b))