#include<stdio.h>
#define H 6           //上半部分行数
int main()
{
 void top(char a);
 void bottom(char a);
 char elem;
 scanf("%c", &elem);
 top(elem);
 bottom(elem);
 return 0;
}
/*实现上半部分*/
void top(char a)
{
 int temp1 = H - 1;
 int temp2 = 0;
 int h = 0;
 for (; h < H; h++, temp1--, temp2++)
 {
  if (h == 0)
  {
   int nub1 = temp1;
   while (nub1--)
    printf(" ");
   printf("%c\n", a);
  }
  else
  {
   int nub1 = temp1;
   int nub2 = temp2 * 2 - 1;
   while (nub1--)
    printf(" ");
   printf("%c", a);
   while (nub2--)
    printf(" ");
   printf("%c\n", a);
  }
 }
}
void bottom(char a)
{
 int temp1 = 1;
 int temp2 = H - 2;
 int h = H - 1;
 for (; h > 0; h--, temp1++, temp2--)
 {
  if (h == 1)
  {
   int nub1 = temp1;
   while (nub1--)
    printf(" ");
   printf("%c\n", a);
  }
  else
  {
   int nub1 = temp1;
   int nub2 = temp2 * 2 - 1;
   while (nub1--)
    printf(" ");
   printf("%c", a);
   while (nub2--)
    printf(" ");
   printf("%c\n", a);
  }
 }
}
/*********************************************************/

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/* * *                            修缮一下                                 * * */

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/*********************************************************/

/* * * * * * * * * * * * * * * * */
/* * * 修改时间 2018 7 月 9 日 * */
/* * * 作者 段振杰 * * * * * * * */
/* * * * * * * * * * * * * * * * */
#include<stdio.h>
int H;
int main3()
{
 void top(char a);
 //void bottom(char a);
 printf("请依次输入棱形的 组成符号 和 一半的 行数(通过回车确认)\n");
 char elem = getchar();
 fflush(stdin);
 scanf("%d", &H);
 top(elem);
 //bottom(elem);
 return 0;
}
/* * * * * * * * * * * * * * * * * */
/* * * 函数名: top        * * * * */
/* * * 功能:打印空心棱形  * * * * */
/* * * * * * * * * * * * * * * * * */
void top(char a)
{
 /*  *  *  *  *  *  */
 /*  实现上半部分  */
 /*  *  *  *  *  *  */
 int temp1 = H - 1;
 int temp2 = 0;
 int h = 0;
 for (; h < H; h++, temp1--, temp2++)
 {
  int nub1 = temp1;
  int nub2 = temp2 * 2 - 1;
  if (h == 0)
  {
   while (nub1--)
    printf(" ");
   printf("%c\n", a);
  }
  else
  {
   while (nub1--)
    printf(" ");
   printf("%c", a);
   while (nub2--)
    printf(" ");
   printf("%c\n", a);
  }
 }
 /*  *  *  *  *  *  */
 /*  实现下半部分  */
 /*  *  *  *  *  *  */
 temp1 = 1;
 temp2 = H - 2;
 h = H - 1;
 for (; h > 0; h--, temp1++, temp2--)
 {
  if (h == 1)
  {
   int nub1 = temp1;
   while (nub1--)
    printf(" ");
   printf("%c\n", a);
  }
  else
  {
   int nub1 = temp1;
   int nub2 = temp2 * 2 - 1;
   while (nub1--)
    printf(" ");
   printf("%c", a);
   while (nub2--)
    printf(" ");
   printf("%c\n", a);
  }
 }
}

C语言 练手代码——(1)棱形相关推荐

  1. java练手代码大全手机版_20个Java练手项目,献给嗜血如狂的你

    过年了都放假了,宅在家给大家推荐一条由浅入深的JAVA学习路径,首先完成 Java基础.JDK.JDBC.正则表达式等基础实验,然后进阶到 J2SE 和 SSH 框架学习.最后再通过有趣的练手项目进行 ...

  2. 【GO语言】实现同步传输系统:局域网内手机和电脑互传文件互发消息。go语言练手项目

    GO语言实现同步传输系统:局域网内手机和电脑互传文件互发消息 项目总览: 一.项目功能展示 1.用手机传输文件到电脑 2.用手机传输图片到电脑 3.用电脑传输文字到手机 4.服务器显示情况,端口信息: ...

  3. java练手代码大全手机版_20个Java练手项目,献给嗜血如狂的人

    给大家推荐一条由浅入深的JAVA学习路径,首先完成 Java基础.JDK.JDBC.正则表达式等基础实验,然后进阶到 J2SE 和 SSH 框架学习.最后再通过有趣的练手项目进行巩固: JAVA基础 ...

  4. C语言练手小代码------five

    1 猜数字游戏 功能:可以随机猜一个数字,直到猜对为止,虽然游戏有些无聊,但是可以锻炼我们使用二分查找的思想来快速查找数字.代码已经托管到码云上,点击打开链接.下边附上一张大概的游戏截图: 2.写代码 ...

  5. c++ 小游戏_C/C++编程笔记:C语言写推箱子小游戏,大一学习C语言练手项目

    C语言,作为大多数人的第一门编程语言,重要性不言而喻,很多编程习惯,逻辑方式在此时就已经形成了.这个是我在大一学习 C语言 后写的推箱子小游戏,自己的逻辑能力得到了提升,在这里同大家分享这个推箱子小游 ...

  6. C语言练手项目--C 语言制作简单计算器

    C 语言制作简单计算器 一.需求 二.实现 1.思路 2.代码 3.运行结果 三.参考链接 一.需求 使用 C 语言做一个简单的计算器,能执行加.减.乘.除操作 二.实现 1.思路 (1)标准输入到s ...

  7. 设计九宫格手机输入法(附C++源码)初学C语言练手小项目!

    九宫格输入法是一个很经典的输入法,当你输入每个字母的时候,它会提前显示你想输入什么单词,大大加快了人们的打字速度,尤其是在手机屏幕还比较小的时代. 下面是小编整理好的一套C/C++资料,加小编C/C+ ...

  8. java练手代码大全手机版_java循环练习的简单代码实例

    ★打印九九乘法表 public class TestDemo { public static void main(String[] args){ for(int b=1;b<10;b++){ f ...

  9. 初学 C 语言没有项目练手?这 20 个小项目拿走不谢~

    C 语言是大多数人的编程入门语言,但很多初学者在学习的过程中难免会出现一些迷茫,比如:不知道 C 语言可以开发哪些项目,可以应用在哪些实际的开发中-- 今天我们收集了 20 个 C 语言练手项目,提供 ...

最新文章

  1. boost::type_erasure::binding_of相关的测试程序
  2. linux 运行 chom,Hadoop安装-单节点/伪分布(2.7.3)
  3. 暑假集训-个人赛第六场
  4. Hive性能优化(全面)
  5. 智慧农业、数字农业、农产品交易、发布供应、采购详情、报价列表、交易订单、供应大厅、采购大厅、发布采购、采购需求、采购订单、在售商品、出售订单、账户中心、洽谈列表、入驻申请、Axure原型、农业数据看板
  6. 2500万美元和AI专家!谷歌出钱出人,要用AI做“对社会有益”的事情
  7. Python Tricks(十一)—— 阶乘的实现
  8. mysql索引和事务_mysql的索引和事务详细解读
  9. cad小插件文字刷_必备CAD插件大全,内含最全字体库
  10. 论文阅读 A SIMPLE BUT TOUGH-TO-BEAT BASELINE FOR SEN- TENCE EMBEDDINGS
  11. JavaScript下载文件到本地的方法总结
  12. ROS系列:八、图像消息和OpenCV图像之间进行转换-cv_bridge
  13. 自签名证书和私有CA证书的制作
  14. 参数化三维管网建模系统MagicPipe3D
  15. 川土微电子 | CA-IS3050U隔离式CAN收发器
  16. 这些最真实的 “猥琐程序员”,今天必须曝光!
  17. 如何通过银行卡号 判断归属银行
  18. 【JavaScript】 基础知识
  19. matlab 图片雾化代码,雾化效果图片制作代码汇总
  20. 有钱人抢豪宅,普通人不敢消费:社会在割裂,富人更富,穷人更穷

热门文章

  1. 【JS缓存技术】-本地存储
  2. 步进电机驱动器PCB原理图及其stm32源码S型曲线控制代码本
  3. ASCII、Unicode、UCS-2、UTF-8 等字符编码规则的区别与联系
  4. 【后台定位】Android13后台定位方案
  5. php旅行社erp,旅行社SaaS系统,相比传统ERP软件还有哪些优势?
  6. 制作同轴电缆BNC接头的标准作业流程
  7. 广州大学Linux实验报告,操作系统实验_实验1
  8. 华为服务器修改root密码,修改root密码
  9. OSG之节点写入文件(.ive)
  10. Pytorch实现残差神经网络(ResNet)