猿问

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

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


holdtom
浏览 8728回答 3
3回答

月关宝盒

设一个数为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语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

达令说

1 设一个数为n,则在C语言中其个位、十位、百位、千位依次这样计算:n/1%10,n/10%10,n/100%10,n/1000%102 示例123456789101112#include<stdio.h>int&nbsp;main(){&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;n&nbsp;=&nbsp;123456;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;unitPlace&nbsp;=&nbsp;n&nbsp;/&nbsp;1&nbsp;%&nbsp;10;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;tenPlace&nbsp;=&nbsp;n&nbsp;/&nbsp;10&nbsp;%&nbsp;10;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;hundredPlace&nbsp;=&nbsp;n&nbsp;/&nbsp;100&nbsp;%&nbsp;10;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;thousandPlace&nbsp;=&nbsp;n&nbsp;/&nbsp;1000&nbsp;%&nbsp;10;&nbsp;&nbsp;&nbsp;&nbsp;printf("个位:%d\n十位:%d\n百位:%d\n千位:%d\n",&nbsp;unitPlace,&nbsp;tenPlace,&nbsp;hundredPlace,&nbsp;thousandPlace);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getchar();&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;}3 运行结果

Qyouu

假设那么数为x,不知道是多少位的.你可以使用下面的表达式:个位:x%10;十位:x/10%10;百位:x/100%10;千位:x/1000%10。C语言有以下几种取整方法:&nbsp; &nbsp;1、直接赋值给整数变量。如:&nbsp; &nbsp;int i = 2.5; 或 i = (int) 2.5;&nbsp; &nbsp;这种方法采用的是舍去小数部分,可以用于你的问题。&nbsp; &nbsp;2、C/C++中的整数除法运算符"/"本身就有取整功能(int / int),而下面介绍的取整函数返回值是double。整数除法对正数的取整是舍去小数部分,但是整数除法对负数的取整结果和使用的C编译器有关。 &nbsp; &nbsp; &nbsp;3、使用floor函数。floor(x)返回的是x的整数部分。如:&nbsp; &nbsp;floor(2.5) = 2&nbsp; &nbsp;floor(-2.5) = -3&nbsp; &nbsp;4、使用ceil函数。ceil(x)返回的是不大于x的最小整数。如:&nbsp; &nbsp;ceil(2.5) = 2&nbsp; &nbsp;ceil(-2.5) = -2&nbsp; &nbsp;floor和ceil对于正数没有区别,但是对于负数结果不同。floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。
随时随地看视频慕课网APP
我要回答