欢迎交流,共同进步。

题目为:已知内层和外层菱形的高度,输出一空心菱形

使用自己的语言描述:使用C语言画出一个菱形,输入上三角高内层菱形为L1,外高为L2,输入需要保证数值为正整数,且为奇数。

此处我理解菱形为对角线相等的菱形

看了题目后编写如下,设计思路为从“*”菱形中扣“ ”菱形,写的时候遇到很多思路不清晰的时候把自己绕晕,此处不应直接编写,需要写出对应规律分析,再下手。

输入一个菱形的内高和外高,画出一个空心菱形

#include<stdio.h>
int main()
{int L1,L2 ;int flag =0;int k = 0;int l = 0;int n = 0;//输入边界while (!flag){scanf("%d,%d", &L1, &L2);printf("\n");if ((0 <= L1 )&&(L1<= 20) && ((L1&1)!=0) && (0 <= L2)&&(L2 <= 20) && ((L2 & 1) != 0) && (L1 < L2))flag = 1;elseprintf("WARRING\n");}//上半三角for (int i = 0; i < L2; i++){//输出前导空格for (int j = L2 - i - 1; j != 0; j--){printf(" ");}//计算一行中需要操作的多少位置n = i * 2 + 1;for (int m = 0; m < n; m++){//判断该行是否有空格if ( i == (L2 - L1) + k){//判断此处应该画什么if (m == (L2 - L1)){l = k * 2 + 1;n = n - k * 2;while (l--){printf(" ");}k++;}elseprintf("*");}elseprintf("*");}printf("\n");}k = 1;l = 0;//下半三角for (int i = 1; i < L2 ; i++){//输出前导空格for (int j = 0; j < i; j++){printf(" ");}//计算一行中需要操作的多少位置n = (L2 - 1 - i) * 2 + 1;for (int m = n; m != 0; m--){//判断该行是否有空格if (i <  L1){//判断此处应该画什么if ((n - m)== (L2 - L1)){l = 2*L1 - 2*k -1;m = m - l + 1;while (l--){printf(" ");}k++;}else{printf("*");}}elseprintf("*");}printf("\n");}return 0;
}

但是居然可以用几何方法更简单的写出来,震惊!

输入一个菱形的内高和外高,画出一个空心菱形相关推荐

  1. matlab画一个正弦波,在MATLAB画出一个正弦波

    模拟信号: 正弦波三要素: 幅度A,角频率 ,相位 角频率 与频率 的关系: 要注意已知信号的角频率还是频率? 频率是Hz , 一秒几次的概念,角频率是rad/s , 一秒多少度的概念,  是一圈的弧 ...

  2. 在MATLAB画出一个正弦波

    模拟信号: 正弦波三要素: 幅度A,角频率,相位 角频率与频率的关系: 要注意已知信号的角频率还是频率? 频率是Hz , 一秒几次的概念,角频率是rad/s , 一秒多少度的概念, 是一圈的弧度,一圈 ...

  3. 用HTML+CSS画出一个同心圆

    参加web前端校招的同学们经常会遇到这样的面试题:用HTML+CSS画出一个同心圆. 例如: 这道题主要考验的是基础盒模型布局能力和倒圆角属性的巧用. 1.html代码 [html] view pla ...

  4. 编写一个APPlet,再随机的位置上画出几个随机大小的矩形。

    编写一个APPlet,再随机的位置上画出几个随机大小的矩形.如果一个矩形的宽度小于高度,则矩形填充成亮紫色:如果矩形的宽度大于高度,则矩形填充为浅黄色:如果矩形的宽度和高度相等,则只用红色线画出矩形的 ...

  5. python中词云图怎样变成特殊图案_如何利用python画出一个多变的词云图?(1)...

    问题描述: 如何利用python画出一个多变的词云图? 解决方法:import numpy as np import matplotlib import matplotlib.pyplot as pl ...

  6. php绘制一个三角形,如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)...

    我们在平时的前端开发的时候,有时候是需要一些小图形来丰富一下页面效果,比如:下拉列表的倒三角图形.那么这样的一个三角形是如何制作出来的,本章给大家介绍如何利用css或html画出一个三角形?两种不同的 ...

  7. [html] 你能否画出一个0.5px的直线?

    [html] 你能否画出一个0.5px的直线? 通过scale(0.5)来实现 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定很酷.欢迎大家一起讨论 主目录 与歌谣一起通关 ...

  8. [html] 使用svg画出一个矩形

    [html] 使用svg画出一个矩形 <svg width="400" height="200" viewbox="0 0 2000 1000& ...

  9. [css] 用CSS画出一个任意角度的扇形,可以写多种实现的方法

    [css] 用CSS画出一个任意角度的扇形,可以写多种实现的方法 先画一个圆,外加两个绝对定位的半圆 扇形可以通过两个半圆作为遮罩旋转来露出相应的角度实现 这只能切出180°以内的扇形 超过180°的 ...

最新文章

  1. 美多后台管理和项目环境搭建
  2. Linux keypad 设备树,SC7731客户配置文档.pdf
  3. Boost:使用/type <>语法测试成员函数
  4. 【python数字信号处理】——DFT、DTFT(频谱图、幅度图、相位图)
  5. 前端面试技巧和注意事项_前端面试百分之九十九过的技巧
  6. Android Studio 常用快捷键(超实用!!!)
  7. Nhibernate3.3.3sp1基础搭建测试
  8. 谷歌浏览器插件迁移到火狐浏览器
  9. 第五模块 常用邮件沟通场景(1):求职信
  10. 机器学习中的范数规则化之L0、L1与L2范数
  11. wireshark抓包新手使用教程
  12. java.lang.UnsatisfiedLinkError: Couldn't load XXX
  13. Java学习第一周总结
  14. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(三)技能标签(Ability Tags)
  15. Realsense-Ros安装配置
  16. R语言数据可视化包ggplot2之折线图
  17. iOS 使用TestFlight进行App外部测试
  18. Mysql查看表的数据量
  19. 牛客_求将一个数组分割为两个差值最小的部分
  20. mysql odbc桥_jdbc-odbc桥连接数据库

热门文章

  1. 【TS语法|基础入门】《前端的未来——TypeScript》掌握TS基础语法
  2. wps解析json数据_一些非常实用的JSON 教程
  3. Visual Studio 2015 解决方案资源管理器
  4. 将EMS单号的物流信息导出EXCLE表格的实例
  5. 2556. 【NOIP2011模拟9.7】伊吹萃香 (Standard IO)
  6. 深入源码分析SpringBoot中使用@ConditionalOnBean无效的问题(@ConditionalOnBean did not find any beans of type)
  7. 涅槃重生,成就自我!
  8. c语言choose函数怎么用,choose函数_excel中,choose函数的问题
  9. 嘿,你的产品好用吗?
  10. ToolStrip快速操作方法