C语言I博客作业09

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 作业要求
我在这个课程的目标是 学习数组
这个作业在那个具体方面帮助我实现目标 编写数组有关代码
参考文献 www.baidu.com

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

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

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

数据表达:
N_t,int型,赋值
xh,int型,计算
t,int型,计算
a[10],int型,赋值
数据处理:
首先if (N < 0)判断N是否大于零,若小于零则直接返回0可以节省运算量
if (N >0)判断N是否有两位数,再进行下面判断
首先for (xh = 0; xh * xh <= N; xh++) if (xh * xh == N)循环
判断N是否是完全平方数
t=N_t % 10将余数赋予给t,
再将其他余数对应的数组位置赋值为1,再判断a[t]是否等于1,
若等于1则其有两位数相同,则返回1
否则进行下一次循环直到N_t等于0
若循环结束还未判断到a[t]==1
则返回0

1.1.2实验代码截图

1.1.3 造测试数据

输入 输出 说明
1 500 cnt = 6 1至500有6个数是有两位数相同的完全平方数

1.1.4 PTA提交列表及说明

Q1:不知道怎么结束循环输入
A1:查找后知道使用while (scanf("%c %d ",&c,&x)!=EOF)即可

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<a≤b≤10000。
1.2.1 数据处理

数据表达:

数据处理:

-结束

1.2.2 实验代码截图

1.2.3 造测试数据

输入 输出 说明
5 2000 5 is counted
count = 36, sum = 21105
5至2000有36个各位数和为5,且他们的和为21105

1.2.4 PTA提交列表及说明

Q1:未找到错误在哪
A1:重新编写代码后提交正确了

2.代码互评(5分)
同学代码

自己代码

同学的代码和自己的差异不大,就是定义的变量有所差距;

3.学习总结(15分)
3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第八周 20小时 214行 Printf函数的应用,/* ———— */注释语句使用,C语言基础知识 怎么让程序的用户给变量赋值
第九周 25小时 239行 Scanf函数的熟练应用,If-else语句的熟悉与应用 如何用C语言输出沙漏形状的字符
第十周 20小时 260行 For循环语句 用C语言做出贪吃蛇需要什么水平,按目前学习状况大概要花多久才能学会
第十一周 15小时 200行 副函数定义及调用 学了for循环后花了2小时还是没能解决沙漏题目,暂时放弃等待灵感吧
第十二周 16小时 210行 if-else语句的进阶 while循环怎么使用
第十三周 14小时 200行 swith语句 数组怎么使用
第十四周 10小时 200行 while循环 数组怎么用
第十五周 15小时 200行 数组 依旧是数组怎么用
第十六周 10小时 150行 数组进阶使用以及一些库函数的调用
3.2 累积代码行和博客字数(5分)

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

3.3.2 学习体会
这周pta编程2题真的有点难,需要考虑到的情况太多了,有些判断也想不到思路解决,参考了同学的代码才勉强看懂了一些,有点要挂科的感觉了,这些编程题目越来越没有思路,脑回路有点不够用,时间也有点紧,希望考试能够过吧

原文地址:https://www.cnblogs.com/1003905763zzx/p/14169866.html