标题: 一个0-999之间的数,如何把它的个位,十位,百位分别提取出来呢? [打印本页]

作者: 明日香    时间: 2020-12-8 15:24
标题: 一个0-999之间的数,如何把它的个位,十位,百位分别提取出来呢?
某个数x,在0-999之间,不知道他是几位数,如何把它的各位分别提取出来呢?

作者: 狗肉天涯    时间: 2020-12-8 15:57
使用不断取余的方式,就可以提取了
作者: 梁廷明    时间: 2020-12-8 16:00
ge=x%10;shi=x/10%10;bai=x/100%10;
作者: cxflew    时间: 2020-12-8 16:02
取余,位数没影响吧
作者: 压着我头发啦    时间: 2020-12-8 16:10

  1.     l=k/100;
  2.     m=k/10%10;
  3.     n=k%10;
  4. 参考
复制代码

作者: 619925983    时间: 2020-12-8 16:55
设一个数为n,则在C语言中其个位、十位、百位、千位依次这样计算:n/1%10,n/10%10,n/100%10,n/1000%10
作者: Llllldbndbd    时间: 2020-12-8 19:21
n/1%10,n/10%10,n/100%10,n/1000%10,不断取余,以此类推,不管多少位都是取余
作者: 漠城    时间: 2020-12-8 22:08
你先假设你要算的数值,然后除,取余,直到算出你想要的值
作者: 18956649856    时间: 2020-12-8 22:23
#include<stdio.h>
int main(){
       
        int a=199;
        int temp;
        int i=0;
        int b[100];
        temp =a;
        while(temp){
        b[i]=temp%10;//对a取余
        printf("%d ",b[i]);//打印取余的结果
        temp =temp/10;//整除10是将最后一位去掉
        i++;       
        }
}
//该函数可以将a的各位打印出来
作者: rayin    时间: 2020-12-9 09:20
void tablex(uint tab1)      //数据分解
{
        h1=tab1/1000;                  //1023 可以得到1
        h2=tab1%1000/100;          //0230可以得到0
        h3=tab1%100/10;             //23可以得到2
        h4=tab1%10;                   //得到3
}
作者: whgh    时间: 2020-12-9 15:45
999999 ->"999999"
wtvw[0]=aa/100000+0x30;
wtvw[1]=(aa%100000)/10000+0x30;
wtvw[2]=(aa%10000)/1000+0x30;
wtvw[3]=(aa%1000)/100+0x30;
wtvw[4]=(aa%100)/10+0x30;
wtvw[5]=aa%10+0x30;
作者: lilifang    时间: 2021-9-25 00:59
用求余求末的方式
对这个数取余,然后x=x/10,直到x<1

作者: 城北信公    时间: 2021-9-25 09:44
已知0-999 所以直接取余就行, 就算是两位数 比如99 取余百位是0 ,所以直接取余即可.
n/1%10,n/10%10,n/100%10,n/1000%10
作者: 天ノ忆    时间: 2021-9-25 18:06
本帖最后由 天ノ忆 于 2021-9-25 18:09 编辑

/**
* @name:NumtoString
* @param {int} num
* @param {char} bit
* @param {char*} string
* @return {*}
*/
char* *NumtoString(int num, char bit, char *string)
{
        for (char i = bit; i > 0; i--)
        {
                *(string + bit - i) = num / pow(10, i - 1);
                num %= (int)pow(10, i - 1);
        }

        return string;
}







欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1