题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

程序分析:学会分解出每一位数,如下解释。

C语言实现:

#include <stdio.h>

int main()
{ 
    int n;
    printf("请输入大于 10 的数字:");
    scanf("%d",&n);
    int x[1000];
    int i=0;
    int j=0;
    while(n!=0)
    {
        x[i]=n%10;
        n=n/10;
        i++;
    }
    int z=i;
    printf("该数字为 %d 位数",z);
    printf("\n逆序为:");
    for(j=0;j<z;j++)
    {
        printf("%d ",x[j]);
    }
}

Java实现:
package com.xxnotes;

import java.util.Scanner;

public class Cdemo29 {

public static void main(String[] args) {
    @SuppressWarnings("resource")
    Scanner scan = new Scanner(System.in);
    System.out.println("请输入一个五位以内的数:");
    int num = scan.nextInt();
    int[] sum = new int[5];
    int t = 0;
    while(num > 0) {
        sum[t]=num%10;
        num /=10;
        t++;
    }
    System.out.println("这是一个"+t+"位数\n逆序输出为:");

    for(int i =0;i<t;i++) {
        System.out.println(sum[i]);
    }
    
}

}

最后编辑:2020年09月16日 ©著作权归作者所有

发表评论