zoukankan      html  css  js  c++  java
  • 课堂检测求一个数的各个位

    1.程序设计思想

    (1) 创建一个函数,在函数中定义一个数组,用来存放取到的各个数

    (2) 输入一个正整数

    (3) 若输入的正整数正确,执行循环,在循环里将num%10赋值给a,将a存放在数组中,并使下标加1,sum=sum+a,num=num/10。

    (4) 输出sum和依次取到的数

    (5) 利用for循环,依次将取到的位倒序输出。

    (6) 在主函数中定义一个对象,调用qushu函数

    2.程序流程图

    3.源程序代码

    //信1605-1 20163690 李静
    import java.util.Scanner;
    public class Number 
    {
        int count=0,sum=0,a,num;
        public static void main(String[] args) 
        {
            Number N= new Number();//定义一个对象
            N.qushu();//调用qushu函数
            
        }
        public void qushu()
        {
            int []M=new int[10];//定义一个数组用来存放取到的位数
            Scanner input=new Scanner(System.in);
            System.out.println("输入一个正整数:");//输入number
            num=input.nextInt();
            while(num!=0)//当输入的数不为0时,执行循环
            {
                a=num%10;//a表示num%10取到的值
                M[count]=a;//count用来表示数组的下标
                count=count+1;
                System.out.print(a+" ");
                sum=sum+a;
                num=num/10;
            }
            System.out.print("
    ");
            System.out.println(count+"位数字");//输出num是几位数字
            System.out.println(sum);
            for(int i=count-1;i>=0;i--)//通过循环依次将取到的位倒序输出
            {
                System.out.print(M[i]+" ");
            }
        }
    
    }

    4.结果截图

     5.实验总结

    这次作业应该在课堂20分钟内完成,一开始看到程序就开始编程,并没有理清程序思路,在编的过程中无从下手。在以后的编程学习中当不清楚怎么编写时,学会用伪代码处理。做这道题时,对调用方法不太清楚,以及当有多个类时,如何在一个类中引用另一个类,对这种并不太熟悉,导致这道题不会做。题目中并没有规定输入几位数,所以判断当num!=0时才执行循环。

  • 相关阅读:
    FluorineFx:基于RSO(远程共享对象)的文本聊天室
    第一个十年,我从教师转行为web程序员,下一个十年呢?
    AS3中的单件(Singleton)模式
    数据结构C#版笔记双向链表(DbLinkList)
    FluorineFx:认证与授权
    FluorineFx:视频录制及回放(Flash/AS3环境)
    数据结构C#版笔记顺序表(SeqList)
    puremvc框架之hello world!
    flex中使用swc实现更好的界面代码分离
    puremvc框架之Command
  • 原文地址:https://www.cnblogs.com/lijing925/p/7647982.html
Copyright © 2011-2022 走看看