给定4位数字,如何在屏幕上打印该数字的单位,十,十万个?

何塞·库尼亚(JoséCunha)

我真的是C语言的新手,当时我正在做一个练习,我应该打印十二,十万个数字的单位。(例如:1234 =>单位= 4;十二= 3;一百= 2;千= 1.)

这是我想出的:

int main ()
{ 
    int number , reminder , unit , dozen , hundred , thousand;  
    
    printf ("Type a number with a maximum of 4 digits : ");
    scanf ("%d" , &number);
         
    while (number)
    { reminder = number%10;
      number = number/10;
      printf ("Number : %d Reminder : %d\n", number , reminder); 
    }
    
    return 0;
}


 

输出看起来像这样

输入最多4位数字:1234

号码:123提醒:4

人数:12提醒:3

数量:1提醒:2

号码:0提醒:1

我用了剩下的,以便我可以分开数字。我希望输出是这样的

输入最多4位数字:1234

单位= 4

打= 3

一百= 2

千= 1

关于如何解决此问题的任何建议?

风向标

只需进行一些调整,您就可以做到这一点。我已经使用字符串数组digname[]来描述每个数字值。而且我确保number > 9999通过使用power也索引字符串数组的循环结束

#include <stdio.h>

#define MAXPOWER 4

int main ()
{ 
    char *digname[MAXPOWER] = {"Units", "Tens", "Hundreds", "Thousands"};
    int number = 0, remainder, power = 0;  

    printf ("Type a number with a maximum of 4 digits : ");
    scanf ("%d" , &number);

    while (number) {
        remainder = number % 10;
        printf ("%s: %d\n", digname[power], remainder); 
        number = number / 10;
        if (++power >= MAXPOWER)
            break;
    }
    return 0;
}

示例程序输入了4位以上的数字:

Type a number with a maximum of 4 digits : 12345
Units: 5
Tens: 4
Hundreds: 3
Thousands: 2

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

给定的n,取n的数字TSUM。如果该值有一个以上的位,继续减少单位数字产生

找出一个四位数的数字,其平方是8位数字,最后4位数字是原始数字

如何在汇编中将两个十六进制128位数字相乘

使用十进制数据类型后无法打印1076位数字

C-如何打印15位数字?

如何在C中从用户给定的数字打印10个完美数字?

如何在Octave中将两个8位数字组合为16位

如何在python中创建4位数字的密码?

解密4位数字

如何在C ++中打印最多6个十进制数字的数字?

C ++如何在32位数字中更改4位的值

给定用户3位数字,找到并打印它的最小数字

如何在逗号(。)后仅允许2位数字和1位数字?

给定一个三位数的数字,找到其数字的总和。蟒蛇

如何在反应本机中转换除开头的最后4位数字外的起始数字

分割4位数字

如何在python中定义一个包含1000位数字的十进制类?

如何在Matlab中显示4位数字?

如何将十进制数字格式化为2或3位数字?

如何使用SQL Server获得给定14位数字的最后一位数字(第15个Luhn校验位)

如何在每行上打印3个不同的数字

如何在lc3中添加2个数字以获得4位数字的总和?

根据一个数字序列生成一个伪唯一数字(代码),该数字在4位数字之内没有重复

如何在5位数字上添加小数

如何在C中将2个4位无符号数字组合为1个8位数字

如何用2位数字和4个字母创建6位OTP?

将两个 32 位数字相乘并将 64 位结果打印为十进制 NASM 程序集

如何以最佳方式存储五十万个键值对?

当数字从两位数变为一位数时,如何使屏幕上的字体居中?