C语言博客作业--函数

一、PTA实验作业(5分)

题目1:7-1 求组合数

本题要求实现一个判断整数是否为完全平方数的简单函数。

1. 本题PTA提交列表

2. 设计思路

1.定义子函数double fact (int n);
2.定义双精度浮点型变量count,total,i;
3.令count=n;total=1
4.依次累加i至n,进行 total=totalcount;
count=count-1;计算n的阶级
5,返回total
6.定义主函数
7.定义整型变量a,b
8.输入a,b
9.用公式 printf("result = %.0f\n",fact(b)/(fact(a)
fact(b-a)));得出答案

3.本题调试过程碰到问题及PTA提交列表情况说明。

1.本题武无明显错误,但因没有将total定义为双精度浮点型变量导致提交错误,用调试也难以查错,在同学帮助下解决。

题目2:6-5 使用函数输出一个整数的逆序数

本题要求实现一个求整数的逆序数的简单函数。

1. 本题PTA提交列表

2. 设计思路

1.定义子函数int reverse( int number );
2.定义整型变量count,total,i,save;。
2令count=1,total=0,save=number;
4利用for(;;)无限循环,将输入的数字逐渐除以10,用if判断,若输入的数字除以10不为0则重复循环且count+1,否则停止。
5.count为输入数字的位数,number=save,回归原值
6.用公式total=(number%10)*pow(10,count-i)+total;计算输出值
7.函数返回total。

3.本题调试过程碰到问题及PTA提交列表情况说明。

1.本题除了编译错误以外无明显错误,以下为调试过程。

题目3:6-6 使用函数输出水仙花数

1. 本题PTA提交列表

2. 设计思路

1.定义子函数int narcissistic( int number );
2.定义整型变量i,count,number2,total。
3.令 number2=number;total=0;count=1
4.利用for(;;)重复循环,令number=number/10,直到number%10==number,用count来统计次数,计算number的位数。
5.令number=number2回归原值
6.用foe循环语句,依次累加i直到count,用公式total=total+pow((number2%10),count),number2=number2/10;来实现对水仙花数的判断
7.若total=number,则返回1,否则返回0
8定义子函数void PrintN( int m, int n )
9.定义整型变量j。
10.用for依次累加j,从m+1到n-1
11.若满足narcissistic( int number )=1,则输出该数字.

3.本题调试过程碰到问题及PTA提交列表情况说明。

1.忽略了当m取153时会输出两次153的情况,根据提示修改代码,在调试时发现多进行了一次输出
2.运用了pow但是没有用#include<stdio.h>语句导致错误.
3.公式运用错误,误以为水仙花数为各个位数的立方相加.

二、同学代码结对互评(1分)

1.同学互评照片。

2.我的代码、互评同学代码截图(此处截图核心代码就好,不一定截图全部代码,图上指明是谁的代码。)

吴军霖的代码

我的的代码

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。

我的代码较为复杂,吴某的代码更加精简,我较喜欢精简的代码,

三、截图本周题目集的PTA最后排名。(2分)

PTA排名

四、本周学习总结(2分)

1.你学会了什么?

1.如何定义子函数以及子函数的利用
2.什么是形参什么是实参
3.双精度浮点型变量与整型变量的差别

1.1 C语言哪些数据类型?

整型 字符型 浮点型

1.2 字符型数据需要注意地方?

1.输入时用%c
2.字符旁边需要加''来代表该符号为字符,且输出时需要%c来输出字符,否则为asc码

1.3 自增自减运算符?

自增++
自减--
a++表示先表达后赋值
++a表示先赋值后表达

1.4 运算符优先级?

初等运算符>单目运算符>算术运算符>移位运算符>关系运算符>位逻辑运算符>逻辑运算符>三目运算符>赋值运算符>逗号运算符

1.5 C语言哪些表达式?课堂派哪里做错,做错的请在这里分析原因?

赋值表达式,关系表达式,关系表达式,逻辑表达式,条件表达式

8.忽略了当||左边式子为真时不执行右边

1.6 其他内容?

做题效率不够,还需练习。

2.本周的内容,你还不会什么?

1.运算优先级记得不熟
2.各个运算符的运用不够熟

3.循环结构考试总结(全部同学都要写)

1.哪题做错了,怎么改?

1.第四题做时因为题目误认为18的二进制为11000导致没做出来
2.第五题最后一个条件格式错误,利用if语句解决

2.考试结果满意么,怎么改进?

不满意,审题不够认真,对于难题思考时间过久。

3.其他总结。

需要多刷题来加强做题效率

posted on 2017-11-18 17:36  FaceTheWind  阅读(1057)  评论(1编辑  收藏  举报

导航