题目1065:输出梯形(2001年清华大学计算机研究生机试真题(第II套))

来源:互联网 发布:apache 和nginx模型 编辑:程序博客网 时间:2024/05/23 12:02

题目描述:

输入一个高度h,输出一个高为h,上底边为h的梯形。

输入:

一个整数h(1<=h<=1000)。

输出:

h所对应的梯形。

样例输入:
4
样例输出:
      ****    ******  ******************
提示:

梯形每行都是右对齐的,sample中是界面显示问题


这题用Java会超时,用c语言就不会,又一次证明了高级语言是用时间来换方便的框架的。估计以后做题会越来越多这种情况。

#include "stdio.h"int main(){int h = 0;while( scanf("%d",&h)!=EOF ){int base = h + 2 * (h-1);for (int j = 0; j < h; j++) {for (int i = 0; i < base; i++) {if(i < base - h -2*j){printf(" ");}else{printf("*");}}printf("\n");}}return 0;}

package com.jude.online.alfred.jobdu;import java.util.Scanner;public class NO1065 {/** * @param args */public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while( scanner.hasNext() ){int h = scanner.nextInt();int base = h + 2 * (h-1);for (int j = 0; j < h; j++) {for (int i = 0; i < base; i++) {if(i < base - h -2*j){System.out.print(" ");}else{System.out.print("*");}}System.out.println();}}}}


0 0
原创粉丝点击