南开C语言题库:去除偶数位并计算阶乘的函数实现
5星 · 超过95%的资源 需积分: 28 165 浏览量
更新于2024-07-19
2
收藏 765KB DOC 举报
南开大学C语言题库包含了丰富的编程练习题和知识点,主要针对C语言的基础操作、算法设计以及数据结构的运用。本资源中的两个题目展示了不同类型的C语言编程技巧。
第一个题目涉及的是函数`fun`的设计,该函数的目的是从输入的`unsigned long`类型的整数中移除偶数位,仅保留奇数位,然后更新原始变量。代码中需要填写的部分包括:
1. `t=*n%10;` 这一行获取的是`n`的个位数字,因此填空处应该填入10,因为`%`运算符用于取余数,10表示取个位。
2. `if(t%2!=0)` 判断当前位是否为奇数,由于我们是要去除偶数位,所以当位数不是偶数时保留,因此填空处应填0,表示非零则为奇数。
3. `*n=x;` 最后一步是将处理后的结果赋值回原变量,因此填空处应填`x`,表示更新`n`指向的整数。
第二个题目是关于阶乘计算函数`fun`的实现。函数需要计算`n!`(n的阶乘),给定代码中存在语法错误和逻辑问题:
1. `ifn==0` 后面的条件语句书写格式不正确,应该将条件写在`if`语句中,因此填空处应填`if(n==0)`,表示当`n`等于0时,返回1.0。
2. 在`while`循环里,`result *= n--`语句之后缺少分号,这会导致语法错误。填空处应添加分号`;`,使语句完整。
这些题目要求学生理解C语言的算术运算、条件控制以及函数参数传递等核心概念,并能够根据题目描述和已知条件正确填写代码。解答这类题目有助于提高学生的逻辑思维能力,熟悉C语言的语法和编程技巧。同时,通过解决这类实际问题,他们还能掌握字符串处理、数据类型转换等实用技能。
2010-10-15 上传
2022-11-30 上传
2010-04-12 上传
点击了解资源详情
2009-03-28 上传
2013-11-28 上传
2013-12-12 上传
2009-08-13 上传
2014-09-18 上传
cindynankar
- 粉丝: 1
- 资源: 2
最新资源
- launch-list:跟踪全球航天器所有即将到来的发射日期时间
- HealthSpeaks
- manager,c#获取网页源码指定元素site:bbs.csdn.net,c#
- VB写的可视化的控件注册程序
- exportToZip:标识M文件的依赖性并创建一个ZIP文件:$ matlabroot / toolbox中的文件被省略,从而提供了一种打包工作的有用方法-matlab开发
- SQLAlchemy:SQLAlchemy作业
- Turn Negative Numbers to Purple-crx插件
- length-of-word-histogranm,c#开发想qq一样的软件源码,c#
- DupMaster:摆脱Mac上的重复文件-开源
- Instagram_test:DRF-示例
- [论坛社区]Phpwind会员电子邮件地址导出程序_phpwind_email.rar
- fdbt-site:票价数据构建工具的主站点
- INL Image Artifacts:CMOS 图像传感器中积分非线性和列 ADC 失配效应的示例和模型-matlab开发
- Project-23
- GUMT - the GNU Users Management Tool-开源
- SilverlightWmv,c#查询系统源码,c#