C语言第三十弹---打印一个整数的每一位数

简介: C语言第三十弹---打印一个整数的每一位数

C语言实现打印整数的每一位数

逆序打印整数

思路:通过n%10可以获得整数的个位,获得个位后,整数/10就看去掉个位,得到新的一个数。循环即可获得所有数。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
void print(int n)
{
  while (n)
  {
    //获取个位
    int tmp = n % 10;
    printf("%d ",tmp);//打印获得的个位
    //去除个位
    n /= 10;
  }
}
int main()
{
  int n = 0;
  scanf("%d",&n);
  print(n);
  return 0;
}

正序打印

思路:使用递归,设定一个数>9作为开始和结束条件,并在条件里面进行递归。当<9时就使用整数%10求出n的最后一位打印,然后再回归。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
void print(int n)
{
  if (n > 9)
  {
    print(n / 10);//执行递归,n/10的值进行递归,当不满足if语句时就会开始回归
  }
  printf("%d ",n % 10);
}
int main()
{
  int n = 0;
  scanf("%d",&n);
  print(n);
  return 0;
}
相关文章
|
5月前
|
C语言
【C语言刷题每日一题#牛客网BC6】输入三个整数,输出第二个整数
【C语言刷题每日一题#牛客网BC6】输入三个整数,输出第二个整数
|
5月前
|
C语言
C语言:从键盘读入三个整数,按从大到小输出
C语言:从键盘读入三个整数,按从大到小输出
|
5月前
|
存储 C语言
【C语言刷题系列】求一个数组中两个元素a和b的和最接近整数m
【C语言刷题系列】求一个数组中两个元素a和b的和最接近整数m
|
5月前
|
C语言
【C语言刷题每日一题】——求1到100中包含数字9的整数的个数
【C语言刷题每日一题】——求1到100中包含数字9的整数的个数
|
5月前
|
C语言
C语言---试计算在区间1 到n 的所有整数中,数字x(0 ≤ x ≤ 9)共出现了多少次?
C语言---试计算在区间1 到n 的所有整数中,数字x(0 ≤ x ≤ 9)共出现了多少次?
|
6月前
|
存储 安全 编译器
C语言中的枚举类型与整数常量:差异与处理
C语言中的枚举类型与整数常量:差异与处理
119 2
|
5月前
|
C语言
【C语言刷题系列】交换整数的奇数位和偶数位
【C语言刷题系列】交换整数的奇数位和偶数位
|
5月前
|
存储 C语言
【C语言进阶篇】整数在内存的存储——原码、反码、补码
【C语言进阶篇】整数在内存的存储——原码、反码、补码
|
5月前
|
C语言
【C语言刷题系列】计算整数的二进制位中1的个数 (三种方式)
【C语言刷题系列】计算整数的二进制位中1的个数 (三种方式)
|
5月前
|
C语言
C语言-----计算两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
C语言-----计算两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?