C语言I-博客作业05
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | C语言1博客作业05 |
我在这个课程的目标是 | 学会运用函数编代码 |
这个作业在那个具体方面帮助我实现目标 | 写C语言作业的时候,编代码的实践中 |
参考文献 | 教材《C语言程序设计1》 |
一、Pta实验作业
1.1求组合数
本题要求编写程序,根据公式算出从n个不同元素中取出m个元素(m≤n)的组合数
建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
输入格式:
输入在一行中给出两个正整数m和n(m≤n),以空格分隔。
输出格式:
按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。
输入样例:
输出样例:
1.1.1数据处理
数据表达:使用了整型int变量i,m,n,其中i连用了2次,浮点型double变量result,M,N,Q以及定义和调用函数fact(n)
其中double变量result要通过整型变量i通过for循环语句循环式子 result = resulti得出,而M,N,Q则是用来附上函数fact(n)的;
数据处理:首先一个基础源程序框架,然后函数声明:double fact(int n);主要通过for循环语句时result = resulti以及最终的:result = fact(n)/(fact(m)*fact(n-m));
** 函数参数:int main() 为主调函数;double fact(int n)为被调函数;整型;实参为result;形参为n,都为整型。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
6 7 | result = 7 | m≤n |
7 7 | result = 1 | m=n |
8 7 | result = 0 | n≤m |
1.1.4 PTA提交列表及说明
提交列表说明:
1.编译错误:第16行int i后面没打“;”;
2.答案错误:输出结果没按照“result =”来写;
3.答案错误:结果保留小数错了。
1.2水仙花数判断
本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
函数接口定义:
其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。
裁判测试程序样例:
输入样例:
输出样例:
1.2.1数据处理
数据表达:使用了整型int变量sum,n
数据处理:基础源程序框架,运用while循环语句和if-else判断语句来运行表达式sum +=(n % 10)(n % 10)(n % 10);n /= 10;
** 函数参数:int main() 为主调函数;被调函数:int func(const int N),被调函数的名称func,被调函数的类型为整型,形参N.
1.2.2实验代码截图
1.2.3造测试数据
输入数据 | 输出数据 | 说明 |
7 | 1 | 素数 |
100 | 0 | 不是素数 |
0 | 1 | 代码条件之外 |
1.2.4PTA提交列表及说明
二、代码互评
同学(付翔亮)代码截图
同学(乐树文)代码截图
我的代码截图
- 第一位同学和第二位同学的代码区别:第一位同学代码用的while循环语句,而第二位同学用的是for循环语句;而且第一位同学用的n /=10表示得到的值等于n除以10后商的整数部分,而第二位同学则用了两个表达式x=i%10和i=i/10来表达这个意思,而且第一个同学做了一些多余的操作,在最后那里多加了个“{}”,虽然不影响,但完全没必要。
我和两位同学的代码区别:我的代码和第一位同学的差不多,不过就是排版好看一些,所以和第二位同学的区别类似于第一条。
三、学习总结
3.1 学习进度条
周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题 第七周 10小时 132行 常用的数学函数,if-else语句 函数的运算问题 第八周 13小时 156行 学会运用for循环语句和知晓DevcC++调试 对于DevcC++还是不大会用 第九周 12小时 145行 学会了函数定义和调用函数 对于函数的返回,不是很理解 3.2 累积代码行和博客字数
时间 博客字数 代码行数 第五周 464 0 第六周 1017 50 第七周 1638 185 第八周 2533 341 第九周 3421 520 3.3 学习内容总结和感悟
3.3.1 学习内容总结
- 本周学习了定义和调用函数,以及函数的返回;
这周进一步进行了代码的调试,上周我只是知道有这么个东西,会流程,具体操作其实并不会,这周会了大概,设置断点,添加查看变量,一步一步测试;
请用思维导图的形式将到目前为止所学的内容进行整理。
3.3.2 学习体会
学到的东西越来越多,题目难度也越来越大,有点不适应了,时间越来越紧迫,不是说大一最轻松吗。。。我怎么感觉玩的时间都没有,一周两节课,作业也有两次。通过课本稍微学了一点while的循环语句,感觉比for循环语句使用方便,也可能是题目问题,还不够熟练,为了变优秀,我还得继续努力啊。
C语言I-博客作业05的更多相关文章
- C语言l博客作业05
问题 回答 这个作业属于哪个课程 C语言程序设计ll 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9830 我在这 ...
- C语言I博客作业05
内容 答案 这个作业属于哪个课程 C语言程序设计II 这个作业要求在哪里 C语言I作业05 我在这个课程的目标是 更熟练的运用编译函数问题 这个作业在哪个具体方面帮助我实现目标 PTA实验作业 参考文 ...
- c语言1博客作业05
一.本周作业头 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-3/homework/9831 我 ...
- C语言I博客作业12—学期总结
一.我学到的内容 二.我的收获(包括我完成的所有作业的链接+收获)不能只有作业链接,没有收获 作业次数 作业链接 第一次 C语言I博客作业01 第二次 C语言I博客作业02 第三次 C语言I博客作业0 ...
- c语言1博客作业12-学期总结
一.我学到的内容 二.收获总结 2.1我的收获 链接: c语言1博客作业01:https://www.cnblogs.com/dy-985211/p/11578914.html c语言1博客作业02: ...
- c语言1博客作业02
c语言1博客作业02 这个作业属于哪个课程 C语言程序设计 这个作业的要求在哪 [作业要求](https://edu.cnblogs.com/campus/zswxy/SE2019-2/homewor ...
- C语言l博客作业06
C语言l博客作业06 问题 回答 这个作业属于哪个课程 C语言程序设计ll 这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homew ...
- C语言I博客作业01
C语言I博客作业01 作业1 这个作业属于哪个课程? C语言程序设计I 这个作业要求在哪里? https://edu.cnblogs.com/campus/zswxy/CST2019-2/homewo ...
- C语言I博客作业
|这个作业属于哪个课程 | C语言程序设计I | | ---- | ---- | |对这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-2 ...
- C语言I博客作业02
这个作业属于那个课程 C语言程序设计I 这个作业要求在哪 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/8656 我在这个课程的目标 ...
随机推荐
- hive严格模式
说真的,这个模式在我做sql开发的岁月里,从未用到过.用的都是动态分区非严格模式. 我的好友东岳同学在车上问我.确实问到了我 .体现出了我基本功不扎实的情况. 1.what is Hive严格模式 H ...
- ubuntu日常
1804 处理 1,修改为固定ip vim /etc/netplan/01-netcfg.yaml network: version: 2 renderer: networkd ethernets: ...
- 小程序获取Unionid
小程序获取用户Unionid,必须授权获取密文.但授权成功后不是永久的.除非关注了公众号或者App微信绑定了, 解决办法是通过code获取openid,然后用openid去数据库查对应的Unionid ...
- C++ 打印XPS文档
CoInitializeEx(, COINIT_MULTITHREADED); IXpsOMObjectFactory *xpsFactory; HRESULT hr = CoCreateInstan ...
- 序列式容器————vector
目录 介绍 1 创建 2 容量和大小 size() capacity() 3 resize() 4 reverse() 5 获取元素 front() back() 6 迭代器(待补充) 7 push_ ...
- MySQL的启动关闭及登录退出
1启动和关闭: (1)此电脑->管理->搜索服务->查看本地服务->找到MySQL57然后选择启动 (2)同样步骤进行关闭 作为程序员,打开和关闭的方式当然要更多一点,打开cm ...
- python学习之路(22)
使用模块 Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用. 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env python # - ...
- nginx下的负载均衡
负载均衡应用场景: 普通web应用部署到多台应用服务器上,客户端通过访问应用服务器发送请求,最简单的就是n对1模式,n个客户端访问同一个应用服务器,这种情况当并发量大了,就无法应对,而且,如果只有一台 ...
- Java的LinkedList底层源码分析
首先我们先说一下,源码里可以看出此类不仅仅用双向链表实现了队列数据结构的功能,还提供了链表数据结构的功能.
- 如何让css与js分离
在 webpack 我们如何让 css 与 js 分离: 我们需要安装插件:extract-text-webpack-plugin 1. 用:npm 下载插件 npm install extract- ...