将一个数字的每一位分别打印出来

本文介绍如何编程实现将给定数字的每一位提取并单独打印。内容涵盖数字转换为字符串,遍历字符串并逐个打印字符的方法。
摘要由CSDN通过智能技术生成
首先我们先看一下题目:将一个三位数的百位,十位,个位分别打印出来。
我们来理解一下题目的意思:表面上看是分别将一个三位数的每一位打印出来,仔细想一想,联系所学,其实它考察的就是我们的itoa函数,那何为itoa函数呢,顾名思义,就是讲一个整型转化为字符串类型输出而已。
然后我们来具体的分析一下:比如我输入一个数字123然后需要将它输出为1、2、3,好的,那我们要怎么操作呢?个位的输出是最简单的,对这个三位数进行10取模然后结果就是个位了,那十位和百位怎么操作呢?且听我细细道来。十位的输出其实也挺简单的,我们先对这个三位数进行除以10运算,得到一个整型数字12,然后我们再对其进行10取模,得到的结果即为十位上的数字。百位的输出怎么输出呢也就很显而易见了,我们只需要在之前对这个三位数进行除以10运算的基础上再除以10得到的一个整型数即为所求的百位上的数。
具体的流程:123 % 10 = 3;
           123 / 10 = 12;
           12 % 10 = 2;
           12 / 10 = 1;
算法的大致执行过程就是这样。其实我们只需要执行一个循环体就能搞定。

下面的是具体的代码:
#include <stdio.h>
#include <string.h>

int itoa(int num,char *str)
{
    char *temp = str;
    while(num != 0)
    {
        *str = num % 10 + '0';//先对该数字对10取模
        str++;
        num = num / 10;//将该数字除以10
    }

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值