这个作业属于哪个课程 | https://bbs.csdn.net/forums/csuft_swxy_C?typeId=17328 |
---|---|
这个作业要求在哪里 | https://bbs.csdn.net/topics/603700545 |
这个作业的目标 | <利用函数来解决问题> |
学号 | <20218620> |
C语言I博客作业09
PTA作业
6-1 统计各位数字之和是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)的整数,并计算这些整数的和。最后按照格式
1.1.1代码截图
1.1.2数据处理
运用while,for循环,对数据每一位进行分离,在通过对每一个位数进行累加,接入函数判断。
1.1.3PTA提交列表及说明
格式错误:没有看到中间得空格键
6-2 使用函数输出水仙花数
水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=1
3
+5
3
+3
3
。 本题要求编写两个函数,一个判断给定整数是否水仙花数,另一个按从小到大的顺序打印出给定区间(m,n)内所有的水仙花数。
函数接口定义:
int narcissistic( int number );
void PrintN( int m, int n );
函数narcissistic判断number是否为水仙花数,是则返回1,否则返回0。
函数PrintN则打印开区间(m, n)内所有的水仙花数,每个数字占一行。题目保证100≤m≤n≤10000。
1.1.1代码截图
1.1.2数据处理
运用while,for循环,对数据得位数进行计算,在通过对每一位数得N次方进行累加,接入函数判断。
1.1.3PTA提交列表及说明
编译错误:代码没有接入函数中
答案错误·:循环提结构不完善
格式错误:没有看到空格
6-3 使用函数验证哥德巴赫猜想
本题要求实现一个判断素数的简单函数,并利用该函数验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。
函数接口定义:
int prime( int p );
void Goldbach( int n );
其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数Goldbach按照格式“n=p+q”输出n的素数分解,其中p≤q均为素数。又因为这样的分解不唯一(例如24可以分解为5+19,还可以分解为7+17),要求必须输出所有解中p最小的解。
1.1.1代码截图
1.1.2数据处理
运用if-else,for循环结构进行判断,对数据采取一个一个的查找。
1.1.3PTA提交列表及说明
部分正确:写漏了一些数据
答案错误:将函数中的p写成了自定义的一个数并没有赋值。
6-4 使用函数求素数和
使用函数求素数和
prime§, 其中函数prime当用户传入参数p为素数时返回True,否则返回False. PrimeSum(m,n),函数PrimeSum返回区间[m, n]内所有素数的和。题目保证用户传入的参数1<=m<n。
函数接口定义:
在这里描述函数接口:
prime§,返回True表示p是素数,返回False表示p不是素数
PrimeSum(m,n),函数返回素数和
1.1.1代码截图
1.1.2数据处理
输入数据进行判断
1.1.3PTA提交列表及说明
答案错误:因为不会,还没开始学
学习总结
2.1学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第十五周 | 30小时 | 2450 | 函数的用法,物联网 | 函数这一块有些地方不明白 |
2.2累积代码行数和博客字数
2.3学习感悟
在学习遇到问题,还是要多向周围的同学请教,其次,写作业还是要静下心来,不能浮躁,也要注意书写的格式问题,要写的规范一些。