为了账号安全,请及时绑定邮箱和手机立即绑定

C语言怎样提取一个数的十位个位百位千位?

C语言怎样提取一个数的十位个位百位千位?

holdtom 2019-05-09 11:07:27
C语言怎样提取一个数的十位个位百位千位?
查看完整描述

3 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

设一个数为n,则在C语言中其个位、十位、百位、千位依次这样计算:n/1%10,n/10%10,n/100%10,n/1000%10

代码如下:

#include<stdio.h>

int main(){

int n = 123456;

int unitPlace = n / 1 % 10;

int tenPlace = n / 10 % 10;

int hundredPlace = n / 100 % 10;

int thousandPlace = n / 1000 % 10;

printf("个位:%d\n十位:%d\n百位:%d\n千位:%d\n", unitPlace, tenPlace, hundredPlace, thousandPlace);

getchar();

return 0;

}

运行结果如图:

扩展资料

C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。



查看完整回答
反对 回复 2019-05-13
?
达令说

TA贡献1821条经验 获得超6个赞

1 设一个数为n,则在C语言中其个位、十位、百位、千位依次这样计算:n/1%10,n/10%10,n/100%10,n/1000%10

2 示例

123456789101112#include<stdio.h>int main(){    int n = 123456;    int unitPlace = n / 1 % 10;    int tenPlace = n / 10 % 10;    int hundredPlace = n / 100 % 10;    int thousandPlace = n / 1000 % 10;    printf("个位:%d\n十位:%d\n百位:%d\n千位:%d\n", unitPlace, tenPlace, hundredPlace, thousandPlace);     getchar();    return 0;}

3 运行结果



查看完整回答
反对 回复 2019-05-13
?
Qyouu

TA贡献1786条经验 获得超11个赞

假设那么数为x,不知道是多少位的.
你可以使用下面的表达式:
个位:x%10;十位:x/10%10;百位:x/100%10;千位:x/1000%10。

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) = 2
   ceil(-2.5) = -2
   floor和ceil对于正数没有区别,但是对于负数结果不同。floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。



查看完整回答
反对 回复 2019-05-13
  • 3 回答
  • 0 关注
  • 8620 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信