A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 龚建锋 初级黑马   /  2012-7-21 23:11  /  1474 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class Test6 {
public static void main(String[] args)throws Exception{
//打印矩形
  int m=8;
  int n=6;
  for(int i=0;i<m;i++){
   for(int j=0;j<n;j++){
    System.out.print("*");
   }
   System.out.println();
  }  
}
}
/*这个程序怎样能实现m,n的值不在程序中写死,而是能让程序在运行时让用户先输入行和宽再打印呢?*/

5 个回复

倒序浏览
陶锋 发表于 2012-7-21 23:25
从键盘接受m和n的值:
int m = new Scanner(System.in).nextInt();
int n = new Scanner(System.in).nextIn ...

学习新知识了,多谢
回复 使用道具 举报
陶锋 发表于 2012-7-21 23:25
从键盘接受m和n的值:
int m = new Scanner(System.in).nextInt();
int n = new Scanner(System.in).nextIn ...

学习新知识了,多谢
回复 使用道具 举报
本帖最后由 王红霞 于 2012-7-22 03:05 编辑
  1. import java.util.Scanner;
  2. import java.io.*;
  3. public class L
  4. {
  5.    public static void main(String[] args)throws IOException
  6.   {
  7.    //打印矩形
  8.      int m = new Scanner(System.in).nextInt();
  9.      int n = new Scanner(System.in).nextInt();
  10.      // int m=5;
  11.          // int n=4;
  12.      for(int i=0;i<m;i++)
  13.          {
  14.         for(int j=0;j<n;j++)
  15.                 {
  16.              System.out.print("*");
  17.         }
  18.         System.out.println();
  19.      }  
  20.   }
  21. }
复制代码
打印的结果是下图:从键盘输入  3和7 回车出现结果

未命名.jpg (4.68 KB, 下载次数: 11)

未命名.jpg

评分

参与人数 1技术分 +1 收起 理由
刘笑 + 1 赞一个!

查看全部评分

回复 使用道具 举报
本帖最后由 凉宫蛋蛋 于 2012-7-22 03:59 编辑

  1. package Heima001_DumpAndDown100;

  2. import java.io.BufferedReader;
  3. import java.io.BufferedWriter;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.io.OutputStreamWriter;

  7. public class Test001_DumpAndDown100 {
  8.     public static void main(String[] args) throws IOException {

  9.         System.out.println("请输入行数m,列数n,程序将打印一个m*n的矩形");

  10.         System.out.println("如:3,4  回车,本次结束,输入end回车,则程序结束");
  11.         
  12.         System.out.println("若输入不规范,则自动重新输入");

  13.         // 字符输入流
  14.         BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
  15.         // 字符输出流
  16.         BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out));

  17.         String line = null;
  18.         String end = "end";

  19.         // 输入任意整数
  20.         String regex = "\\d+,\\d+";
  21.         while ((line = bufr.readLine()) != null) {
  22.             if (line.equals(end)) {
  23.                 break;
  24.             } else if (!line.matches(regex)) {
  25.                 System.out.println("输入格式错误,请重新输入,如:3,4  或 end,回车");
  26.                 continue;
  27.             } else {
  28.                 String [] str = line.split(",");
  29.                 int len = str.length;
  30.                 int [] array = new int[len];
  31.                 for(int i = 0; i < len; i++){
  32.                     array[i] = Integer.parseInt(str[i]);
  33.                 }
  34.                 int m = array[0];
  35.                 int n = array[1];
  36.                 System.out.println("你输入的m为: " + m + "你输入的n为:" + n);
  37.                 bufw.write(line);
  38.                 bufw.newLine();
  39.                 bufw.flush();
  40.                 for(int i=0;i<m;i++){
  41.                        for(int j=0;j<n;j++){
  42.                         System.out.print("*");
  43.                        }
  44.                        System.out.println();
  45.                       }  
  46.                 System.out.println("可继续输入,结束输入end");
  47.             }
  48.         }
  49.         bufw.close();
  50.         bufr.close();
  51.     }
  52. }

复制代码
自己写了一段很好用的在控制台的代码,功能齐全,方便使用
使用了IO流中的字符输入输出流,可以在控制台输入数据
并且使用了正则表达式校验输入结果,分离提取信息
用到了字符串、字符串数组、整型数组之间的转换
可以多次进行输入
自己还可以输入end结束程序
自己把代码读一下,我想会有收获的


评分

参与人数 1技术分 +1 收起 理由
刘笑 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马