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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

在主函数中的调用Scanner 方法需要抛出异常或者声明异常。个人有点懒,就略过了{:soso_e113:}。程序不足之处,大家多多交流。
  1. import java.util.Scanner;

  2. /*
  3. *@author   作者E-mail:
  4. *@version  创建时间:2013-10-21 下午7:43:29
  5. *@explain  说明:输入高度,输出对应高度的菱形,例如输入9.
  6. */
  7. class Demo10{
  8.         public int lingXing(int n,int q,int z){
  9.                 // n=9;   //更改n的值来决定菱形。
  10.                
  11.                 //int q=2;   //更改q的值来决定每行打印多少菱形
  12.                 //int z=1;   //更改z的值来决定打印多少行
  13.                
  14.                
  15.                 for(int v=0;v<z;v++){
  16.                         int m=0;
  17.                         int t=0;
  18.                         m=n/2;
  19.                         t=n/2+2;
  20.                         for (int i = 0; i < n; i++) {
  21.                                 for(int c=0;c<q;c++){
  22.                                         for (int j = 1; j < n+1; j++) {
  23.                                                 if(i<n/2+1){
  24.                                                         if(j>m && j<t){
  25.                                                                 System.out.print("*");
  26.                                                         }
  27.                                                         else{
  28.                                                                 System.out.print("-");
  29.                                                         }
  30.                                                 }
  31.                                                 else {
  32.                                                         if(j>(-m) && (j-1)<(n-(-m))){
  33.                                                                 System.out.print("*");
  34.                                                         }
  35.                                                         else {
  36.                                                                 System.out.print("-");
  37.                                                         }
  38.                                                 }
  39.                                         }
  40.                                
  41.                                 }
  42.                                 m--;t++;
  43.                                 System.out.println();
  44.                         }
  45.                         //System.out.println("ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo");
  46.                 }
  47.                
  48.                 return n;
  49.         }
  50. }
  51. public class Example10 {

  52.         public static void main(String[] args) {
  53.                 Scanner sc1 = new Scanner(System.in);
  54.                
  55.                 Demo10 d = new Demo10();
  56.                
  57.                 System.out.println("输入菱形高度:");
  58.                 int j = sc1.nextInt();
  59.                 while(j<0||j%2==0){
  60.                 if(j<0||j%2==0){
  61.                         System.out.println("输入大于0的奇数:");
  62.                         j = sc1.nextInt();
  63.                 }}
  64.                 System.out.println("输入每行菱形个数:");
  65.                 int k = sc1.nextInt();
  66.                 while(k<0){
  67.                 if(k<0){
  68.                         System.out.println("输入大于0的整数:");
  69.                         k = sc1.nextInt();
  70.                 }}
  71.                 System.out.println("输入打印行数:");
  72.                 int l = sc1.nextInt();
  73.                 while(l<0){
  74.                         if(l<0){
  75.                                 System.out.println("输入大于0的整数:");
  76.                                 l = sc1.nextInt();
  77.                 }}
  78.                        
  79.                
  80.                 d.lingXing(j,k,l);
  81.                

  82.         }

  83. }
复制代码

评分

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

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马