C语言算法积累分离数位示例

 更新时间:2022年06月06日 16:57:34   作者:aprilzj123  
这篇文章主要为大家介绍了C语言算法积累分离数位的实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

题目:输出一个三位整数的个、十、百位数。

关键字:得到数位

思路:

Q:如何利用简单的基本运算来得到一个数字的各个数位上的数字?

A:利用除法和求余运算:以153为例

首先,百位最容易得到:153/100=1。任何三位数除以100都是得到其百位的数字

其次,个位也好弄:153%10=3。任何三位数对10取余都是其个位数。

最后,十位数有四个方法。 

最好想的:

1.用(原三位数—百位数* 100—个位数 * 1)/10

153-1X100-1X3=50; 50/10=5

2.将原三位数对100取余,再除以10。 

不好想的:

利用求解百位和个位的方式,组合着来求解十位

(简而言之,就是只有最高位和最低位的数是可以通过除法,取余来一步得到的,所以就是要将十位数化到最高位或者最低位上)

1.化在最高位上:

  • 1):通过已经求出的百位数,将原三位数减去其百位数100f1a;153-1100=53;
  • 2):将剩余部分除以10。53/10=5

2.化在最低位上:

  • 1):通过已经求出的个位数,将原三位数减去其个位数1:153-13=150;
  • 2):将剩余部分对10取余。53%10=3

代码:

int main()
{
    /*x,bw,sw,gw分别用来存放三位正整数及其百位,十位和个位数*/
    int x, bw, sw, gw;
    printf("请输入一个三位正整数:\n");
    scanf_s("%d", &x);
    bw = x / 100;
    sw = (x % 100) / 10;
    gw = x % 10;
    printf("个位数为%d ,十位数为%d, 百位数为%d", gw, sw, bw);
    return 0;
}

以上就是C语言算法积累分离数位示例的详细内容,更多关于C语言算法分离数位的资料请关注脚本之家其它相关文章!

相关文章

  • C语言实现单链表的快速排序算法

    C语言实现单链表的快速排序算法

    大家好,本篇文章主要讲的是C语言实现单链表的快速排序算法,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • c++函数指针和回调函数示例

    c++函数指针和回调函数示例

    这篇文章主要介绍了c++函数指针和回调函数示例,需要的朋友可以参考下
    2014-05-05
  • 利用C++实现简易的狼人杀游戏

    利用C++实现简易的狼人杀游戏

    狼人杀游戏是一款非常有趣的角色扮演游戏,它需要玩家之间互相猜测身份并进行投票,通过推理来找出真正的狼人。本文将用C++实现这一游戏,感兴趣的可以了解一下
    2023-04-04
  • C++实例讲解引用的使用

    C++实例讲解引用的使用

    引用是C++一个很重要的特性,顾名思义是某一个变量或对象的别名,对引用的操作与对其所绑定的变量或对象的操作完全等价,这篇文章主要给大家总结介绍了C++中引用的相关知识点,需要的朋友可以参考下
    2022-05-05
  • C语言scanf,fscanf和sscanf的区别

    C语言scanf,fscanf和sscanf的区别

    每种语言都对正则表达式有着不同程度的支持,在C语言中,有输入功能的这三个函数对正则表达式的支持并不强大,但是我们还是有必要了解一下
    2021-10-10
  • 一文详解C语言中的switch语句和while循环

    一文详解C语言中的switch语句和while循环

    这篇文章主要给大家详细介绍了C语言中的switch语句和while循环,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-12-12
  • Windows下Qt打包自动寻找依赖的DLL

    Windows下Qt打包自动寻找依赖的DLL

    本文介绍了两种在Windows下使用Qt打包应用程序并自动寻找依赖DLL的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • C语言音乐播放器实例代码

    C语言音乐播放器实例代码

    文章给大家分享了用C语言音乐播放器的实例代码,对此有需要的朋友参考学习下。
    2018-07-07
  • C++中Stack(栈)的使用方法与基本操作详解

    C++中Stack(栈)的使用方法与基本操作详解

    Stack是一种常见的数据结构,常常被用来解决递归问题、括号匹配问题、函数调用栈等等。本文将介绍C++中stack的使用方法及基本操作,需要的可以参考一下
    2023-05-05
  • C++面向对象多级菜单向Arduino的移植问题小结

    C++面向对象多级菜单向Arduino的移植问题小结

    这篇文章主要介绍了C++面向对象多级菜单向Arduino的移植问题及实现思路,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-06-06

最新评论