使用C语言打印出一个菱形:

记得还是上C语课的时候,自己使用过一个比较笨的方法写过7行的实心菱形,但是今天一同学问我,让我帮他写这个程序时缺一时键不知到怎么写。然后自己就把这个算法模拟了一辩,使用了三种方法实现了打印菱形。

代码如下:

#include<iostream>
using namespace std;

void diomand(int r)        // 打印空心菱形
{
    for (int x=0; x <= 2 * r; x++)
    {
        for (int y=0; y <= 2 * r; y++)
        {
            if (y==x+r||y==x-r||y==-x+r||y==-x+3*r)
            {
                printf("*");

}
            else
            {
                printf(" ");
            }
        }
        printf("\n");
    }
}

// 方法一  分步打印
void rhombus(int len)
{
    int i, j, k;
//    int m = len / 2+1;   // 记录前len/2+1行;   
 // 打印出前len/2+1行
    for (i = 0; i <=len / 2 + 1; i++)
    {
        // 光标移到每行开始输出“ ”的位置
        for (j = 0; j < len / 2 + 1 - i; j++)
        {
            cout<<" ";
        }

// 开始输出“*”
        for (k = 0; k < 2 * i + 1; k++)
        {
            cout<<"*";
        }
        cout<<endl;
    }

// 打印出后len/2-1行
    for (i = len/2;i>=0; i--)
    {
        // 光标移到每行开始输出“ ”的位置
        for (j = 0; j <=len / 2 - i; j++)
        {
            cout << " ";
        }

// 开始输出“*”
        for (k = 0; k < 2 * i + 1; k++)
        {
            cout << "*";
        }
        cout << endl;
    }
}

// 方法二:     // 按条件输出“*”和“ ”
void rhombus2(int len)
{
    for (int i = 0; i <len; i++)
    {
        for (int j = 0; j < len; j++)
        {
            if (i + j <= len/2-1 || (j - i >= len/2+1 || i - j >= len/2+1) || i + j >=len+len/2)
            {

cout << " ";
            }
            else
            {
                cout << "*";
            }
        }
        cout << endl;
    }
}
int main(void)
{
    int r = 0;
    int m = 0;
    cin >> r;
     diomand(r);    // 打印出空心菱形
//    rhombus(7);
    rhombus1(r);    // 分步打印实心菱形
    cin >> m;
    rhombus2(m);  // 按条件打印出实心菱形
    return 0;
}

使用C语言打印出一个菱形相关推荐

  1. 编写C语言程序 输出一个菱形

    用C语言程序实现打印出一个菱形,观察菱形,它的每一行前面会有空格,要打印菱形,首先要算出空格多少的规律,以及每行*的数目,把菱形分为上下两部分打印,上半部分规律:观察最长的一行,它的*数目是它行数的二 ...

  2. php用打印出实心菱形,php打印实心菱形

    编程打印实心菱形的四种算法 刘雨玚 [期刊名称]<福建电脑> [年(卷),期]2016(032)004 [摘要]本文提出了编程打印实心菱形的四种算法,其中前三种方法都是将实 心菱形分为上下 ...

  3. 如何运用C语言打印出菱形

    运用C语言打印出菱形 #include <stdio.h> #include <stdlib.h> void main() {int line; //菱形总行数int colu ...

  4. c语言如何输出三角函数公式大全,用C语言打印出三角函数

    在网上看到一个实例,是用C 中的* 打印出三角函数cos #include #include int main() { double y; int x,m; for(y=;y>=-;y-=0.0 ...

  5. C语言存储编码输出,C语言怎么输出一个菱形

    C语言怎么输出一个菱形 C语言是计算机的高级语言,在IT行业被众多的人们是使用,由于IT行业的热门,使用以及学习C语言的人越来越多,掌握一些C语言基本的语言是非常重要的,只有基础知识扎实了,才能在C语 ...

  6. 用c语言绘制五角星图形,用c语言画出一个五角星图案

    用c语言画出一个五角星图案 感觉上五角星和六角星 的思路差不多,所以就不做重复劳动啦~嘿嘿O(∩_∩)O~ 以下公布一个非本人的代码,虽然感觉这个五角星画的不是很"正",但总体感觉 ...

  7. c语言n阶方阵,如何用C语言编出一个N阶螺旋方阵?

    如何用C语言编出一个N阶螺旋方阵? 來源:互聯網  2009-06-01 10:17:07  評論 分類: 電腦/網絡 >> 程序設計 >> 其他編程語言 問題描述: 例如:1 ...

  8. 用c语言画出一个五角星图案,用c语言画出一个五角星图案.doc

    用c语言画出一个五角星图案 感觉上五角星和六角星 的思路差不多,所以就不做重复劳动啦~嘿嘿O(∩_∩)O~ 以下公布一个非本人的代码,虽然感觉这个五角星画的不是很"正",但总体感觉 ...

  9. C语言打印出心形表白,初学C语言也能看懂~(3)

    例2:C语言实现打印出心形,初学者的表白神器. 解题思路:这道例题可以分成4部分,前3行一部分,4-6行一部分,7-13行一部分,最后一行一部分,读者请仔细阅读注释,小林写的很详细了. 前三行输出,为 ...

  10. c++打印心形_【附源码】如何C语言打印出心形表白?

    使用C语言实现打印出心形,初学者的表白神器~ 我们分了4部分,前3行一部分,4-6行一部分,7-13行一部分,最后一行一部分,读者请仔细阅读注释,已经写的很详细了. 前三行输出,为了让初学者知道,即使 ...

最新文章

  1. ESLint问题记录
  2. 将信息系学生的计算机文化学,计算机学生论文,关于基于职业岗位的计算机文化基础课教学相关参考文献资料-免费论文范文...
  3. type和object
  4. vbs画动态爱心代码_前端必看之如何用CSS3画一个八卦和爱心
  5. 自定义Xcode 文件头部的注释
  6. 设计一款博弈类游戏的人机对战算法、策略_卡牌游戏八合一,华人团队开源强化学习研究平台RLCard...
  7. nginx简单的操作
  8. 开除“野狗”式程序员,团队的效率提高了
  9. 【HDOJ】2266 How Many Equations Can You Find
  10. 统计学习方法--提升方法adaBoost算法(集成学习)
  11. 数组保存为灰度图_「PS抠图系列9」通道
  12. 仅需6道题轻松掌握Python异常捕获 | Python技能树征题
  13. R语言可视化学习笔记之ggpubr包
  14. Pycharm2018 汉化
  15. 零成本建立医学数据库之实践
  16. 在c语言中 fb abs是什么,abs()在c语言里表示什么意思?它是库函数吗?
  17. 【Windows XP】下载地址及产品密钥
  18. 豆瓣读书数据分析实战
  19. mysql大于等于between比较_MySQL范围查询优化,Between与大于等于对比及优化
  20. 基础入门-算法逆向散列对称非对称JS源码逆向AESDESRSASHA

热门文章

  1. 关于OpenCV中图像的widthStep
  2. VS2008下easyMule-VeryCD源代码的编译
  3. win10设置无盘服务器,win10系统无盘安装系统的操作方法
  4. PTA程序设计类实验辅助教学平台-基础编程题--JAVA--7.3 逆序的三位数
  5. vb和python语言的区别大吗_vb语言为什么被淘汰
  6. 非常详细的Maven安装与配置教程
  7. bootdo增加多级菜单
  8. 2021 泰迪杯 C 思路
  9. 电视、家庭影院、音响、电影院、中高端声卡测试多声道测试样片
  10. IDEA简单开发java和Spring