• 课堂检测正整数


    一、 程序设计思路

    提示用户输入整数,定义变量number,输入正整数number,调用函数执行判断是几位数、取每一位数、求和。函数中首先定义几位数变量,和变量,amount=1(最小的正整数只有一位);存放每一位数的数组等,在while循环中不断除以10,amount++,直到除10等于0 结束,amount的值就是位数;在while循环中先将正整数x除10取余,然后除10取整把这个数赋值给x,把这余数存到数组里,并将每一位加起来,循环结束条件是取整之后的数x为0;从倒叙输出数组里面的数,输出和;

    二、 程序流程图

       

    三、 程序代码

    import java.util.Scanner;

    public class IntGet {

     

        public static void main(String[] args) {

            System.out.print("请输入整数:");

            Scanner input=new Scanner(System.in );

            int number=input.nextInt();

            num(number);

        }

        static void num(int number)

        {

            int amount=1,sum=0;//amount 记录是几位数,sum为各位之和

            int a[]=new int [10];//数组存放各位的数

            int m=number,x=1,i=10;

            while(x!=0)//判断有几位

            {

                x=m/i;

                if(x!=0)

                    amount++;

                i=i*10;

            }

            System.out.print(amount+"位数字分别为:");

            x=number;

            int k=0;

            while(x!=0)

            { 

                m=x%10;//取到每一位数

                x=x/10;

                a[k]=m;//存到数组里

                k++;

                sum=sum+m;

            }

            k=amount-1;

            while(k>=0)//倒叙输出

            {

                System.out.print(a[k]+" ");

                k--;

            }

            System.out.println();

            System.out.println(amount+"位数字之和为:"+sum);

        }

     

    }

     

    四、 结果截图

    五、 实验总结

    看完题干直接就开始代码绝对是不正确的,脑子非常乱;必须先在纸上写一下,画一下流程图流程图,然后思路就比较清晰了,其实写代码的时间是很少的,关键是思路。数组倒叙输出时是从k-1开始。

  • 相关阅读:
    UVA 1557
    基于角色的权限设计(二)
    用DirectShow实现视频採集-流程构建
    oracle中schema指的是什么?
    GCC 命令行具体解释
    希尔排序
    单点登录SSO的实现原理
    济南最新公交线路一览(BRT)
    编写你自己的单点登录(SSO)服务
    C和指针 (pointers on C)——第五章:操作符和表达式
  • 原文地址:https://www.cnblogs.com/wxd136/p/7645229.html
Copyright © 2020-2023  润新知