C语言I博客作业09

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-1
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11634
这个作业的目标 掌握break和continue,实践并运用于循环结构
这个作业在那个具体方面帮助我实现目标 使我更好的运用分支和循环
参考文献 《C语言程序设计》(第三版)
学号 20208944

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

请再此处列出自己的排名图片,如:

1.1 解一元二次方程

解一元二次方程

请编写程序,解一元一次方程

一元二次方程的求根公式为:

要求:

若 a=0,则为一元一次方程。
若 b≠0,则方程有唯一解,输出这个解;
若 b=0,c≠0,则方程无解,输出“无解”;
若 b=0,c=0,则方程有无穷多解,输出“无穷多解”。
若 a≠0,则为一元二次方程。
若 Δ>0,则方程有两个不等的实根,输出这两个根;
若 Δ=0,则方程有两个相等的实根,输出这两个根;
若 Δ<0,则方程有两个共轭的虚根,输出这两个根。

1.1.1数据处理

数据表达:
定义了a,b,c,用于储存方程常数
x1,x2,x,用于储存方程解
i,z,bta分别用于储存实数,虚数,和Δ
数据处理:用if-else进行判断a=0,b!=0的情况,再判断a=0,b=0,c!=0的情况,以下同理进行多次判断输出即可.

1.1.2实验代码截图

1.1.3 造测试数据

输入 输出 说明
0 4.5 -3.6 x = 0.8 a=0,b!=0,方程有唯一解

1.1.4 PTA提交列表及说明


Q1:未考虑到误差和-0,导致结果输出了-0
A1:if语句判断当x为0时直接输出0,而不输出%g。

1.2 统计各位数字之和是5的数

本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。

函数接口定义:

int is( int number );
void count_sum( int a, int b );

函数is判断number的各位数字之和是否等于5,是则返回1,否则返回0。

函数count_sum利用函数is统计给定区间[a, b]内有多少个满足上述要求(即令is返回1)的整数,并计算这些整数的和。最后按照格式

count = 满足条件的整数个数, sum = 这些整数的和

进行输出。题目保证0<ab≤10000。

1.2.1 数据处理

数据表达:
定义了y储存余数和
x用于转移number
数据处理:
用for循环将x的余数和赋给y,并将x=x/10消去已经被用的位数,if(y==5)语句判断各位数和是否为5,并返回相应值

1.2.2 实验代码截图

1.2.3 造测试数据

输入 输出
104 999 104 is counted.
count = 15, sum = 3720
104-999有15个数各位数和为5,他们的和为3720

1.2.4 PTA提交列表及说明

Q1:未考虑到number=b时的情况
A1:循环多进行一次即可

2.代码互评(5分)

同学代码截图

自己代码截图

可能因为题目比较简单,同学代码和自己的代码几乎相同,除了变量有区别外几乎无其他区别。

3.学习总结(15分)

3.1 学习进度条(5分)

3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)

3.3.1 学习内容总结

3.3.2 学习体会

随着学习的深入这次上面花费的时间越开越多,知道的也越多,越觉得自己知道的太少,但出现了没学过的内容就有些束手无策并且在一些细节上不是很完美的,在处理if,if-else,while的问题,数组的处理,上是错误的,还有就是作业多了我花费的时间也多了,每周已经很少有时间学习数学了,为几周的怎么办啊!!

原文地址:https://www.cnblogs.com/29547s/p/14169533.html