C语言I博客作业11

C语言I作业10:第十五周作业

第5章 函数 要求学生掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型。

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 hhttps://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10032
我在这个课程的目标是 关注函数如何定义以及如何调用
这个作业在那个具体方面帮助我实现目标 通过pta作业进行复习,熟悉函数的运用
参考文献 《C语言程序设计》

1.PTA实验作业

1.1 6-1 统计某类完全平方数

本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。

函数接口定义:
int IsTheNumber ( const int N );
其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。

1.1.1数据处理

数据表达:用int定义整形变量n,i,a.double定义浮点型变量m.

数据处理:用了for循环语句,和if,while语句

伪代码:

begin
函数接口定义:int IsTheNumber ( const int N );
定义变量n,i,a.double定义浮点型变量m.
n=(int) sqrt(N),m=sqrt(N);N=a;
if(a==m*n)则int a[10]←{0}/这里的for循环起到了一个类似于计数器的作用,t依托数组通过数组从0-9的下标对应与输入数N的个十百位.在用下标对应的数计数中出现w数字的次数
定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,则该函数必须返回1,否则返回0
用a代替M是因为const是一个C语言的关键字,它限定一个变量不允许被改变;用一个a代替来解决这个问题
循环计算
end

1.1.2实验代码截图

C语言I博客作业11_第1张图片

1.1.3 造测试数据

输入数据 输出数据 说明
105 500 6 有6个满足条件的函数
101 203 3 有3个满足条件的函数
0 547 7 有7个满足条件的函数

1.1.4 PTA提交列表及说明

C语言I博客作业11_第2张图片

提交列表说明:

格式错误:没找到思路无头苍蝇一样乱撞...

格式错误:int num[10]={0};的[]和{}搞反,导致格式错误.

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

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

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

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

count = 满足条件的整数个数, sum = 这些整数的和
进行输出。题目保证0

1.2.1 数据处理

数据表达:定义了变量a,b,函数声明int a,int b.

数据处理:

begin
函数接口定义:int is( int number );
定义a;定义b,函数声明int a,int b.
int is(int number)
int digital;
int sum1=0;
digital=number%10;number=number/10;(除去各位数情况);
sum1←5则返回1,否则返回0;
函数接口定义void count_sum(int a, int b)
定义变量count = 0, sum = 0;
for (int i = a; i <= b; i++);则进入循环if (is(i)){count++;sum += i;}计算输出值count\sum;
end

1.2.2 实验代码截图

C语言I博客作业11_第3张图片

1.2.3 造测试数据

输入数据 输出数据 说明
123 765 count = 12, sum = 3381 各位数字之和等于5的个数为12;各位数字之和等于5这些整数的和为3381
104 999 count = 15, sum = 3720 各位数字之和等于5的个数为15;各位数字之和等于5这些整数的和为3720
105 200 count = 3, sum = 363 各位数字之和等于5的个数为3;各位数字之和等于5这些整数的和为363

1.2.4 PTA提交列表及说明

提交列表说明:

C语言I博客作业11_第4张图片

格式错误:for语句中我添加了if-else语句导致答案错误,格式错误是因为一个地方少了个{;

编译错误:没有给sum赋初始值

2.代码互评

同学代码截图

同学甲:

C语言I博客作业11_第5张图片

同学乙:

C语言I博客作业11_第6张图片

我的代码:

C语言I博客作业11_第7张图片

相同点:思路基本相同

不同点:

1.乙同学运用的是for语句循环f++来进行判断循环是否有梅森数

2.甲同学梅森数输出的条件不同与我的不同

3.乙同学和我用了自定义函数进行运算2^i-1的值

3.学习总结

3.1 学习进度条

周/日期 这周所花时间 代码行 学到的知识点简介 此前比较迷茫的问题
第一周 2天 26行 学会了printf()语句,知道主函数 整型变量的意义
第二周 3天 35行 学会计算摄氏温度与华氏温度的转化 %d的作用
第三周 2天 66行 学习scanf()语句,定义变量,if-else结构 if-else语句使用方法
第四周 3天 132行 学会了for()语句 %lf的使用
第五周 2天 137行 对函数的定义和调用有初步的认识 在函数的定义中是否可以输入形参的值
第六周 3天 144行 加深对if-else分支结构的认识,字符型变量和常量的定义以及字符型输入输出函数 字符型数据的输出
第七周 2天 126行 学会switch语句,用switch语句处理多分支选择问题 每行case后需要break跳出
第八周 2.5天 85行 学习了while语句,do-while语句,属于循环语句一种 两种语句的区别
第九周 3天 61行 初步了解循环嵌套,学会了简单的循环嵌套 当循环嵌套较多时,不知道部分循环语句该在什么时候跳出
第十周 2天 92行 综合介绍循环结构的程序设计 一些题目存在逻辑问题
第十一周 2.5天 77行 函数的定义和调用 函数调用的先后顺序

3.2 累积代码行和博客字数

C语言I博客作业11_第8张图片

3.3 学习内容总结和感悟

3.3.1 学习内容总结

C语言I博客作业11_第9张图片

3.3.2 学习体会

这周作业完成的速度还是太慢,每次把事情堆到星期五然后就没时间完成作业,所以下周作业给自己定个目标:星期四之前完成!

还有就是快要考试了,应该去看看自己之前的作业,复习复习,错误较多的作业需要重点复习。

争取不要挂科!!!

你可能感兴趣的:(C语言I博客作业11)