输入边长n 输出n边长实心菱形 和n边长空心菱形

原创 2015年07月07日 21:11:03

虽然用用的foundation框架,但是语言是c,用studio.h头文件也可以运行.

理论就是把菱形的四个象限的公式计算出来了,通过||来显示边.


#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {

    // 用户输入边长

    int n = 0;

    int zongchang = 0;

    // 菱形所在矩形的总边长

    printf("请输入边长n:");

    scanf("%d",&n);

    zongchang = ((n*2)-1);

//    printf("%d",zongchang);

    // 矩形的高

    for (int i = 1; i <= zongchang;i++) {

        // 矩形的宽

        if(i <= (n-1)){

            // 矩形上半部

            for(int j = 1;j <= zongchang ; j++){

                if (j == i+(n-1) || j == (n+1)-i) {

                    printf("*");

                }else{

                    printf(" ");

                }

            }

        }else{

            // 矩形下半部

            for (int k = 1; k <= zongchang; k++) {

                if (k == i-(n-1) || k== (zongchang+n) - i) {

                    printf("*");

                    

                }else{

                    printf(" ");

                }

                

            }

        

        }

        printf("\n");

    }

    for (int i = 1; i <= zongchang;i++) {

        // 矩形的宽

        if(i <= (n-1)){

            // 矩形上半部

            for(int j = 1;j <= zongchang ; j++){

                if (j >= i+(n-1) || j <= (n+1)-i) {

                    printf(" ");

                }else{

                    printf("*");

                }

            }

        }else{

            // 矩形下半部

            for (int k = 1; k <= zongchang; k++) {

                if (k <= i-(n-1) || k >= (zongchang+n) - i) {

                    printf(" ");

                    

                }else{

                    printf("*");

                }

                

            }

            

        }

        printf("\n");

    }

    

    

    return 0;

}


版权声明:本文为博主原创文章,未经博主允许不得转载。

输入n,分别用*输出边长为n的实心菱形和空心菱形。

//注释的为实心菱形 for (int i=0; i9; i++) {         printf(" ");         for (int j=1;j17; j++) {...
  • Elvist
  • Elvist
  • 2015年08月15日 20:42
  • 802

用*输出边长为n的实心菱形

输入n,分别用*输出边长为n的实心菱形。     //    例如:n = 3时,输出:     //     *     //    ***     //   *****...

php 打印一个边长为N的实心和空心菱型

php 打印一个边长为N的实心和空心菱型。
  • fdipzone
  • fdipzone
  • 2015年02月27日 22:57
  • 19641

华为机考 给你一个N*M的矩阵,每个位置的值是0或1,求一个面积最大的子矩阵,这个矩阵必须是一个正方形,且里面只能由1构成,输出最大的正方形边长。其中n,m<=400;

借鉴博客 :http://www.bkjia.com/Androidjc/1019264.html 此问题主要是求一个数组的最大连续相同字符的正方形的问题,比如 0  1  1  1  1  1 ...

输出空心或实心菱形

  • 2011年11月26日 19:14
  • 403B
  • 下载

任意输入一个数,打印对应的空心实心金字塔以及菱形

1.打印1/4菱形 var n=window.prompt('请输入一个整数'); n=parseInt(n); for (var i=1;i
  • lf1218
  • lf1218
  • 2016年04月20日 11:35
  • 402

A.1输入长方形的两边长a和b,输出长方形的周长和面积

任务和代码 /* *copyright(c)2016,CSDN学院 *All rights reserved. *文件名称: main.c *作 者: 杨隆胜 *完成日期: 2017年4月25...

热身题——JAVA实现输出n行菱形

获取用户输入的行数Scanner sca=new Scanner(System.in); System.out.println("请输入一个数字:"); int input=sca.nextInt()...

C语言基础用基本的循环语句打印实心和空心菱形、九九乘法表

//菱形 #include void main() { int i,j; //菱形的上半部分的三角形 for(i=0;ii;j--) { printf(" "); } ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:输入边长n 输出n边长实心菱形 和n边长空心菱形
举报原因:
原因补充:

(最多只允许输入30个字)