C语言I作业05
一、本周教学内容&目标
第2章 用C语言编写程序-函数 2.5 生成乘方表与阶乘表。使学生对函数的定义和调用有初步的认识,能模仿编程
二、本周作业头
| 问题 | 答案 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计lhttps://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/8657 |
| 我在这个课程的目标是 | 扎实的学号c语言为以后学好c++做准备 |
| 这个作业在那个具体方面帮助我实现目标 | 使我可以更加了解运用markdown的语法为我学习c语言有更好的基础 |
| 参考文献 | 《提问的智慧》 《PTA系统常见问题解答》《如何有效的报告Bug》《21天学好c语言》 |
三、本周作业
1.PTA实验作业
- 1.1编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
** 1.1.1数据处理
| 变量 | 变量来源 | 变量类型 |
|---|---|---|
| i | 输入 | 整形 |
| sum,x | 随着i的变化而变化 | 整形 |
| ** 表达式: | ||
| (1) x = i%10; | ||
| (2)sum = sum+x*x; | ||
| (3)i = i/10; | ||
| 流程结构:循环结构;分支结构;顺序结构 | ||
| 主调函数:main() | ||
| 被调函数: int fun( int n ); | ||
| 实参:n. 类型:整形 | ||
| 形参:i, sum. 类型:整形 | ||
| ** 1.1.2实验代码截图 | ||
![]() |
||
| ** 1.1.3造测试数据 | ||
| 输入数据 | 输出数据 | |
| :----: | :----: | |
| 321 | The result is 0 | |
| 0 | The result is 1 | |
| 123 | The result is 0 | |
| ** 1.1.4 PTA提交列表及说明 | ||
![]() |
(1)编译错误:
问题:没找出来
方法:加几个空格再次提交
(2)编译错误
问题:定义函数后不用加(;)
反法:去掉(;)
1.2、本题要求编写程序,根据公式n!/m!(n−m)! 算出从n个不同元素中取出m个元素(m≤n)的组合数。
** 1.1.1数据处理
|变量|变量来源|变量类型|
|:----😐:----😐
|m,n|输入|整形|
|f|随着m,n的变化而变化|整形|
** 表达式:
(1) result = fact(n)1.0/(fact(m)fact(n-m));
(2) f = f*i;
流程结构:循环结构;分支结构;顺序结构
主调函数:main()
被调函数:int fact( int a);
实参:a. 类型:整形
形参:f,i. 类型:整形
** 1.1.2实验代码截图

** 1.1.3造测试数据
| 输入数据 | 输出数据 |
|---|---|
| 2,7 | 21 |
| 3,6 | 20 |
| 0,0 | 1 |
| 4,4 | 1 |
| ** 1.1.4 PTA提交列表及说明 | |
![]() |
|
| (1)部分正确 | |
| 问题:全部的答案都错误 | |
| 方法:用DvC++调试 | |
| (2)部分正确 | |
| 问题:结果的精度不对 | |
| 方法:调整输出结果的精度 |
代码互评
同学(1)

自己

(1)他用自学的while语句进行计算,我用老师讲的for语句进行计算
(2)都是用整数的取余与取整把数给分解
3学习总结
** 3.1 学习进度条
| 日期 | 这周所花时间 | 代码行 | 学到的东西 | 目前比较困惑的地方 |
|---|---|---|---|---|
| 10.21-10.27 | 5天 | 90 | 怎么定义一个新的函数 | 对代码的调试不太会用 |
| ** 3.2累积代码行和博客字数 | ||||
![]() |
3.3 学习内容总结和感悟
** 3.3.1 学习内容总结

** 3.3.2 学习体会
收获
(1)学会了怎样定义一个新的函数
(2)怎么在一个函数里镶嵌另一个函数
(3)怎么取一个数每个位的数
感悟
觉得每天打代码也很好完,有的时候打着打着就忘了时间,但是每次都会出现各种各样很怪的编译错误。
现在学的C语言编程函数用法太少了只会死用一种方法来解题。




浙公网安备 33010602011771号