C语言输出菱形.c

/*C语言输出菱形
 * */
# include <stdio.h>
# include <stdlib.h>

int main() {
int i, j, row, column; //当前行/当前列/总行数/总列数
printf("Input a odd number for row \n"); 
scanf ("%d",&row);
if (row % 2 == 0){ //判断是否为奇数
printf ("the number must be odd\n");
exit (1);
}
  column = row; //菱形的行数和列数是相等的
for (i = 1; i <= row; i++){ //遍历所有行
  if (i < (row+1)/2 + 1){ //遍历所有行的上半部分
  for (j = 1; j <= column; j++){ //遍历上半部分的所有列
  if ((column+1)/2 - (i - 1) <= j && j <= (column+1)/2 + (i - 1)){
  printf("\033[32m*\033[0m");
  } else { 
  printf (" ");
  }
  }
 }
  else { //下半部分
  for (j = 1; j < column;j++){ //遍历下半部分的所有列
  if ((column+1)/2 - (row - i) <= j && j <= (column+1)/2 + (row -i)){
  printf ("\033[32m*\033[0m");
  } else {
  printf (" ");
  }
  }
  }
  printf("\n");
}//此处才退出行遍历,即遍历上下部分的时候都是在有效行内
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值