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

如题所述

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

参考资料:百度百科--C语言

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-09-19

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

2 示例

#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 运行结果

第2个回答  2018-05-10

假设那么数为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。

本回答被网友采纳
第3个回答  2021-03-24
#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 1:不要使用“GOTO”语句

二十几年前,当计算机编程尚处于起步阶段时,程序流程是由“GOTO”语句来控制。该类语句允许程序员对当前代码行断行,而直接进入另一个不同的代码段。列表1为简单的示例。

列表1 使用GOTO语句

编程语言终究开始引入了函数的概念,即允许程序对代码进行断行。如果已经完成,不再使用goto语句来表示代码的断行。函数调用后,函数将回到下一条指令。列表2为示例。这一做法改善了程序结构,提高了可读性。自此,这被视为编写程序的正确方法。只要看到或想到goto语句,就会让软件工程师退缩,产生本能的厌恶。其中一个主要的原因是,一个遍布goto语句的程序会让让人很难抓住重心,不便于对程序的理解和维护。

列表2 用函数控制流程

技巧 2:使用FOR(;;)或While(1)

如果goto语句已经过时,那么对程序创建无限循环应该如何去做呢,这是一些硬件工程师可能会疑惑的问题。毕竟,之前都是通过创建一个goto语句然后再返回到main语句。解决这一问题就要利用C语言中已经存在的循环语句for和while(列表3和4)。

列表3 使用一个无限的For循环

列表4 使用一个无限的While循环

列表中的循环条件相对比较简单。for循环无非是以无条件情况使用条件语句。而另一方面,while循环是语句为真即予执行,这等同对任何条件的非零值。仅供参考本回答被网友采纳
第4个回答  2013-04-30
假设那么数为x,不知道是多少位的.你可以使用下面的表达式个位:x%10十位:x/10%10百位:x/100%10千位:x/1000%10本回答被网友采纳

C语言怎样提取一个数的十位个位百位千位?
设一个数为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 thousandPl...

C语言怎样提取一个数的十位个位百位千位?
假设那么数为x,不知道是多少位的.你可以使用下面的表达式个位:x%10十位:x\/10%10百位:x\/100%10千位:x\/1000%10

C语言怎样提取一个数的十位个位百位千位
C语言有以下几种取整方法:1、直接赋值给整数变量。如:int i = 2.5; 或 i = (int) 2.5;这种方法采用的是舍去小数部分,可以用于你的问题。2、C\/C++中的整数除法运算符"\/"本身就有取整功能(int \/ int),而下面介绍的取整函数返回值是double。整数除法对正数的取整是舍去小数部分,但是整数除...

如何用c语言输出一个数的个位、十位和百位
用c语言分别输出个位十位和百位的数字,可以根据下面步骤进行,c语言作为一种程序代码,因此在输入时绝对不能弄错任何符号。include<stdio.h> int main(){int x;scanf("%d",&x);printf("%d的百位=%d,十位=%d,个位=%d\\n",x,x\/100,x\/10%10,x%10);return 0;} ...

在c语言中一个三位数的个位,十位,百位怎么表示
在C语言中,表示一个三位数的个位、十位、百位可以通过以下步骤实现。首先定义三个变量,分别表示百位、十位和个位,即:unsigned int number;unsigned char ge, shi, bai;接下来,通过将数字除以10的幂次来获取每一位的值。例如:bai = number \/ 100;shi = (number % 100) \/ 10;ge = number...

C语言如何得到一个整数的个位、十位、百位
在C语言中,你可以通过数学运算来得到一个整数的个位、十位、百位等。以下是一个简单的示例,它展示了如何将一个整数分解为其个位、十位和百位:在这个程序中,我们使用了 %(取余)和 \/(除法)操作符来得到整数的各个位数。num % 10 返回 num 的个位数,num \/ 10 返回 num 去掉个位数后的新...

C语言中如何将一个数字的各个位上的数分别提取?
1、方法一:我的做法是先将整型转为字符串,再将转后的字符串取需要的字符转为整型,过程说起来复杂,但是写起来只要两行代码就行了~include <stdlib.h> include <stdio.h> int main(void){ int number = 12345;char string[25];itoa(number, string, 10);printf(...

用c语言如何表示出一个数的个位,百位,十位
设一个数为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 thousand...

如何用c语言分别输出个位十位百位的数字?
用c语言分别输出个位十位和百位的数字,可以根据下面步骤进行,c语言作为一种程序代码,因此在输入时绝对不能弄错任何符号。include<stdio.h> intmain(){intx;scanf("%d",&x);printf("%d的百位=%d,十位=%d,个位=%d\n",x,x/100,x/10%10,x%10);return0;} ...

c语言里取一个数字的个,十位怎么写?
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;} 运行结果:个位:...

相似回答