C语言博客作业--函数
一、PTA实验作业
题目1:6-5 使用函数输出一个整数的逆序数
2 .设计思路
- 第一步:定义一个整型变量a=0;
- 第二步:计算a=a*10+number%10,number=number/10;
- 第三步:如果number>0,重复步骤2;
- 第四步:返回a到主函数;
3.本题调试过程碰到问题及解决办法
问题:不知道如何表示逆序数,并且一开始利用count找出number位数,再通过嵌套循环表示;
解决方法:通过伪代码,找出逆序数的规律,从未简便代码;
4.本题PTA提交列表
题目2:6-6 使用函数输出水仙花数
2 .设计思路
- 第一步:定义2个整型变量i,j表示循环变量,定义整型变量count表示数字位数,a表示输入的数字,b为每个位置上的数,c为储存每个位上的数字的N次幂,sum储存每个位上的数字的N次幂之和;
- 第二步:通过计算a有多少位数count,利用循环次数等于count,实现每个位上的数字的N次幂计算;
- 第三步:如果每个位上的数字的N次幂之和等于输入的number,返回结果1,否则返回结果0;
- 第四步:再利用void函数,定义整型变量i,若循环满足narcissistic(i) == 1,则输出i;
3.本题调试过程碰到问题及解决办法
问题:一直都是运行超时,但是计算方法没有错误。
通过调试发现我的结果没有限制,会无限输出结果,因为没有通过count定义位数,造成这种后果。
4.本题PTA提交列表
题目3:7-1 求组合数
2 .设计思路
主函数
1.定义整型变量m和n,double类型变量result;
2.输入m和n;
3.result=fact(n)/(fact(m)fact(n-m));
4.输出result;
fact函数
1.传入数据n;
2.定义double类型变量result=1,int类型循环变量i;
3.在循环里计算result=resulti;
4.返回result的值;
3.本题调试过程碰到问题及解决办法
问题:部分正确,m/n错误;
定义result为双精度浮点型变量;
4.本题PTA提交列表
二、截图本周题目集的PTA最后排名
同学代码结对互评
1.同学互评照片
2.我的代码、互评同学代码截图
我
志彬
3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。
我和志彬的代码相似点很多,因为这个题是我们共同讨论出来的,只是我的比他的相对省略了一些没必要的步骤。总体来说我觉得这个题目比较简单,出现的问题很少。
三、本周学习总结
1.你学会了什么?
1 C语言哪些数据类型?
有int型,float型,double型,char型,short型,long型,undesigned型,longlong型。
2 字符型数据需要注意地方?
要注意字符型数据只能保存一个字符,所以多余的空格和回车都会占用这个字符。
3 自增自减运算符?
n++后,n的值虽然加了1,但n++的值与原来的n相等。++n后,n的值加了1,++n的值也加了1。
自减与自增相同。
1.4 运算符优先级?
2.本周的内容你还不会什么?
记不住很多知识点,也不会运用。函数题看不懂,不会做。看同学的代码都看不懂,心累。
3.你碰到什么困难,打算如何解决?
感觉前面学的知识点都能掌握,但打代码就不会,有一些题平时打代码会,但是一考试就不会。像平时打代码的同学积极请教。
上机考试小结
心里收到一万点暴击,很受打击,怀疑自己真的不适合学习计算机。考试的时候思路断断续续的,整体性的思路基本没有。平时很简单判断素数的两个条件居然会忘记,如果不是老师提醒,根本想不到。对于字符型输出,平时都会用,一考试不知道如何打出‘A'这个字符。算数题看不懂题意,不知道题目想表达什么,感觉自己脑子一片空白。连尝试的心思都没有,就白白看见时间流逝。自认为自己循环学的还将就,结果考试出现这么多问题。然后这周的函数题基本不会写,不知道上机考试又会是怎样的打击。