C语言I博客作业09

作业头

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-3 *
这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-3/homework/11636
这个作业的目标 函数调用,定义函数与声明函数的区别,局部变量和全局变量的区别及用法
学号 20209042

一.PTA实验作业

请在此处列出自己的排名图片

1.16-1 统计某类完全平方数

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

1.1.1实验代码截图

1.1.2数据处理

数据表达:定义了a,n等整形变量m通过赋值得到。
数据处理:运用了数组a[10]={0}; 定义num的长度为10,因为传入的整数的每位数可能是0~~9,而不是传入数的位数.
while (m > 0)语句遍历N的每一位上的数字,在相应的数组中自加 如果有一个数组元素等于2 说明至少有2个位上的数相同.

1.1.3造测试数据
输入数据 输出数据 说明
666 676 cnt=1 666为三个数字相等的数,可却不是某个数的平方数所以cnt = 1,这个N值为676=pow*(26,2).
0 10 cnt= 1 0到10之间只有10的平方数符合条件,说明个位数的平方数不可能有两个位数相等
105 500 cnt=6 符合题目要求,程序正确。
1.1.4PTA提交列表及说明


运行加时错误:之前用的另一种方法,未对定义变量赋值
解决方法:换了一种方法

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

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

1.2.1实验代码截图

1.2.2数据处理

|数据表达 |定义了t,s,i并对s,i进行了赋值 |
| ---- | ---- | ---- |
|数据处理 |运用了while和for循环 |

1.2.3造数据处理
输入数据 输出数据 说明
104 999 count = 15, sum = 3720 符合题目要求,程序正确
-104 999 count = 21, sum = 3885 测试负数也符合要求
1.1.4PTA提交列表及说明

编译错误:局部变量运用错误,定义了全局变量,用混
解决方法:定义两个s==0,一个局部变量,一个全局变量

二代码互评

同学代码

我的代码

不同以及相同的地方
我们都运用数组来定义num的长度为10,因为传入的整数的每位数可能是0~~9,而不是传入数的位数,同时用while语句来判断是否是某个数的平方数,且有位数相等。

3.学习总结

3.1学习进度条

第几周 这周所花时间 代码行 这周所学知识及简介 目前比较疑惑的问题
第8周 13h 166 学了for的双循环以及break和continue在语句中作用的不同点 运用for的双循环和break,continue解决实际问题
第9周 14h 188 局部变量和全局变量的区别及用法 函数调用和声明

3.2累计代码行和博客字数

3.3学习内容总结和感悟

3.3.1学习总结

3.3.2学习感悟

本周学习了函数及他的作用,怎样去确定函数还有定义函数的调用与声明,而两者的区别是函数的声明与函数的定义形式上十分相似,但是二者有着本质上的不同。声明是不开辟内存的,仅仅告诉编译器,要声明的部分存在,要预留一点空间。定义则需要开辟内存。

posted @ 2020-12-21 18:14  王明杰3  阅读(82)  评论(0编辑  收藏  举报