织梦CMS - 轻松建站从此开始!

罗索

C语言如何进行取整

罗索客 发布于 2006-07-17 09:31 点击:次 
C语言如何进行取整 编号: QA003792 建立日期: 2001年1月18日 最后修改日期: 2005年8月22日 所属类别: C/C++ - 其他方面 操作系统: win98 编程工具: tc 2.0 问题: 对一个4位数的每一位进行处理,每一位数加7,然后和10相除,取余数。 我的想法是用这个四位数abcd.除
TAG:

C语言如何进行取整
编号: QA003792
建立日期: 2001年1月18日 最后修改日期: 2005年8月22日
所属类别: C/C++ - 其他方面


操作系统: win98
编程工具: tc 2.0
问题: 对一个4位数的每一位进行处理,每一位数加7,然后和10相除,取余数。
我的想法是用这个四位数abcd.除以1000,取整得到a ,然后余数除100 得到b ,余数除10,得到c,
.......
但是我不知道如何进行取整!能帮帮我么?
水平: 刚入门(cflanker)

C语言有以下几种取整方法:
1、直接赋值给整数变量。如:
int i = 2.5; 或 i = (int) 2.5;
这种方法采用的是舍去小数部分,可以用于你的问题。
2、C/C++中的整数除法运算符“/”本身就有取整功能(int / int),而下面介绍的取整函数返回值是double。整数除法对正数的取整是舍去小数部分,可以用于你的问题。但是整数除法对负数的取整结果和使用的C编译器有关。
3、使用floor函数。floor(x)返回的是小于或等于x的最大整数。如:
floor(2.5) = 2
floor(-2.5) = -3
4、使用ceil函数。ceil(x)返回的是大于x的最小整数。如:
ceil(2.5) = 3
ceil(-2.5) = -2
floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。floor函数可以用于你的问题。

hyh的意见:
int x,a,b,c,d;
a=x/1000;
b=x%1000/100;
c=x%100/10;
d=x%10;

郭丽: 几位专家解释的floor和ceil两个函数是不是只能在 tc 2.0中适用,我在vc++中试过了,不认这个函数,是不是还要包括一个什么特殊的头文件啊?请各位专家指教,我是新手。谢谢了
答:这两个函数在VC++中也可以使用,但使用时需要包含math.h文件。可以在程序的开始添加如下代码:
#include

此问题由李海、张磊回答。

附加关键字:编程, 源程序, programming, source code, C/C++, MFC, C++ Builder, Borland C++, Turbo C, C, BCB, 其他方面, 。

(admin)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/200607/6106.html]
本文出处: 作者:admin
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容