练习:33

原题:从键盘录入10个整数,合法值为1,2,3,不是这三个数字则为非法数字.试着编写程序输出相应数值的数量.

参考代码如下:

/*
* 按照书本170的提示,创建两个数组nums,count
* nums用于储存用户输入的10个数字,count用于存储1,2,3及非法数字的个数
* 在count数组中定义四个数字,假设为:1,2,3,4![注意:数组的下标是由0开始]
* count数组中的数值可随便设置,可随意统计nums中的数值,但别忘记在输出的时候减去相应数值
* 用switch结构判断nums中有几个是1,2,3或者非法字符,并且在count中的相应数值上累加
* !!!注意,在输出的时候,你会发现统计的每个数据中都多加了:1,2,3,4(这是因为在count数组中的四个值为1,2,3,4)
* 比如:count[0]++ = 1(数组中的下标为0的值为1)+1(用户输入)
* count[1]++ = 2+2 (同上),依次类推
* 所以每次相加都会将数组中原本的数据添加到结果里面,假如直接输出count[3]肯定会出错的,因为它多加了一个4
* 所以在输出的时候,我们需要用 统计数字的结果 减去 count数组中对应的值
* 原题:从键盘录入10个整数,合法值为1,2,3,不是这三个书则为非法数字.
* 试着编写程序输出相应数值的数量.
*/
import java.util.Scanner;
public class P170_4{
public static void main (String[]args){
Scanner input = new Scanner (System.in);
int nums [] = new int [10];//创建数组存储用户输入的10个数字
int count[] = new int []{1,2,3,4};//创建数组统计用户输入的合法数字
System.out.println("请输入十个整数:");
for (int i =0;i

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据