C语言I博客作业09

1.作业头

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-4
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11637
这个作业的目标 掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型
学号 20209051

1.PTA作业

1.1 统计各位数字之和是5的数 (20分)

本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于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<a≤b≤10000。

裁判测试程序样例:

#include <stdio.h>

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

int main()
{
    int a, b;

    scanf("%d %d", &a, &b);
    if (is(a)) printf("%d is counted.
", a);
    if (is(b)) printf("%d is counted.
", b);
    count_sum(a, b);

    return 0;
}

/* 你的代码将被嵌在这里 */

1.1.1 数据处理
数据表达:sum,sun,x,c都为整型变量;sum,sun,c初次赋值后累加,a计算后赋值。
数据处理:
       表达式: a=number%10;number=number/10;sum=sum+a;c++;sun=sun+x;
       流程结构:do-while循环,if-else条件判断,for循环
1.1.2实验代码截图

1.1.3造测试数据
输入数据 输出数据 说明
104 999 104 is counted. count = 15, sum = 3720 范围之内,104满足条件
1 9999 count = 56, sum = 77770 临界
1 10000 count = 56, sum = 77770 临界
1.1.4 PTA提交列表及说明

说明:
部分正确:a<=b忘记打=,打成了a<b
编译错误:中途加入变量,却没有去定义变量

1.2 解一元二次方程

解一元二次方程

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

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

要求:

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

1.2.1数据处理
数据表达: a,b,c,x1,x2,d,e,f,m,n都为浮点型,a,b,c直接输入数值,其余计算得值。
数据处理:
        表达式:d=b*b-4*a*c; m=(-b+sqrt(d))/(2*a); n=(-b-sqrt(d))/(2*a);e=fabs(-b/(2*a));f=fabs(sqrt(-d)/(2*a));
        流程结构:if-else多分支判断
1.2.2实验代码截图

1.2.3造测试数据
输入数据 输出数据 说明
3 0 0.27 x1 = 0+0.3i, x2 = 0-0.3i
0.3 0 0 x1 = x2 = 0
1 -0.4 0.04 x1 = x2 = 0.2
1.2.4PTA提交列表及说明

说明:
答案错误:对d的条件判断有错误直接判0,没有意识到浮点型计算的差值。
编译错误(太久远了没有截到截图里):语法错误,}少了一个。

2.代码互评

同学代码:

(1)

(2)

我的代码:

1. 第一位同学直接将每个数分离出来去判别,相较于我和第二位同学代码来说我们使用了数组会更加方便一些。
2. 我和第二位同学都使用了数组,但是我的代码看起来比较简洁一些

3.学习总结

3.1学习进度条
周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第十六周/12.19 20h 346 自定义函数 如何自定义函数
3.2累积代码行和博客字数

3.3学习内容总结和感悟
3.3.1学习内容总计

3.3.2学习感悟
  1. PTA最后一个编程题真的是炸脑袋,不过这次学会了怎样去用数组了,也算得上是一个小进步吧。
  2. 临近期末考试了,去复习之前做过的题目,觉得自己真的有很大的进步了,虽然说后面的题目越来越难了。
  3. 这周学习的函数部分的内容,虽然在之前就有提到过,但是依旧觉得自己还是没有彻底搞懂。
原文地址:https://www.cnblogs.com/toubi/p/14144455.html