首页 > 其他分享 >for循环打印菱形

for循环打印菱形

时间:2023-04-27 19:24:16浏览次数:32  
标签:星星 int 打印 空格 菱形 循环

for循环打印菱形


今天我们来看一个使用双重for循环打印菱形的经典题目
总体来说还是要找到规律,用外层循环控制行数。内层循环控制空格和星星的数量
关键是要找到需要打印多少个空格和星星

#include <stdio.h>

int main()
{
/*
  我们就先写一个7行的菱形然后再写n行的菱形
  */
//先写前4行
//for(int i=0;i<4;i++){
//	if(i!=0){
//		printf("\n");
//	}
//	for(int j=0;j<3-i;j++){
//		printf("  ");
//	}
//	for(int k=0;k<2*i+1;k++){
//		printf(" *");
//		
//	}
//	
//}
////打印下面三行
//  for(int i=0;i<3;i++){
//	  printf("\n");
//	  for(int j=0;j<i+1;j++){
//		  printf("  ");
//	  }
//	  for(int k=0;k<2*(3-i)-1;k++){
//		  printf(" *");
//		  
//	  }
//  }
//  
  //下面我们来打印n行菱形
  int n;
  scanf("%d",&n);
  n=(n+1)/2;//这个是得到上面的部分有几行
  
  
  for(int i=0;i<n;i++){
	  if(i!=0){
		  printf("\n");//这里是在每行结束进行换行,且第一行不换行
	  }
	  for(int j=0;j<n-1-i;j++){
		  printf("  ");//我这里是直接打印了两个空格
	  }
	  for(int k=0;k<2*i+1;k++){//关键是找到循环规律
		  printf("* ");//复制代码来看每个星星后面有个空格
		  
	  }
	  
  }
	
  
	
  /*
	打印下半部分,关键是要找到规律
	
	可以先用一个确定的值进行打印最后换成n;这样比较直观
   */
  
  for(int i=0;i<n-1;i++){
	  printf("\n");
	  for(int j=0;j<i+1;j++){
		  printf("  ");
	  }
	  for(int k=0;k<2*(n-1-i)-1;k++){
		  printf("* ");
		  
	  }
  }
  
	return 0;
}

标签:星星,int,打印,空格,菱形,循环
From: https://www.cnblogs.com/harper886/p/17360006.html

相关文章

  • 打印空心字母金字塔
    打印空心字母金字塔今天独自做了一个这个题,简单的分享一下我的思路和代码#include<stdio.h>intmain(){////charch;////ch=getchar();////////这里我们先输出带有E行的图案//for(inti='A';i<='A';i++){//用字符来做循环条件的参数// for(intj=0;j<39;j++){//先打......
  • jeecgboot启动时日志打印所有接口,作为开发时的参考作用吧。
    主要的方式是使用了RequestMappingHandlerMapping这个bean当中保存了所有的映射、对应的controller类、方法等等的信息。在单体启动类中取出这个bean然后遍历就可以了,代码如下:/***单体启动类(采用此类启动为单体模式)*/@Slf4j@SpringBootApplicationpublicclassJeecgSyste......
  • Microsoft Print To PDF如何打印到网络地址
    正常情况下,MicrosoftPrintToPDF是仅提供本地PDF打印功能的。不过还是可以通过配置,打印到网络地址。这里需要用到文件共享功能假设我们要使用MicrosoftPrintToPDF从A电脑打印到B电脑的D:\output文件夹。操作方法如下 1、打开D:\output文件夹属性,切换到共享页,打开共享对......
  • 请用java写二叉树算法,实现添加数据形成二叉树功能,并以先序的方式打印出来....
    先转载过来以后再研究importjava.io.*;importjava.util.Stack;publicclassmyTest{privatemyTreetree;/***二叉树的插入,参数为(关键字,数据)***/publicvoidinsert(intkey,intdata......
  • bat循环获取注册表下表项
    在网上搜索了一下用bat读取一个注册表里面的表项名称,如果一个注册表里面后很多子项目名称,那我们这么才能全部读取出来了?但是网上大家看到的根本不是自己的要的,还不能用报错。。。下面亲测,直接通过cmd命令循环赋值显示表项名称。1、先读取一个注册表路径,显示里面所有的值。2、......
  • Python打印一个字典,输出带双引号
    Python中dict(字典)默认的表示方式是用单引号表示键和值,例如:my_dict={'key1':'value1','key2':'value2'}print(my_dict)这将输出:{'key1':'value1','key2':'value2'}如果你想使用双引号代替单引号进行表示,可以使用json......
  • 打卡 打印点、圆、圆柱信息
    定义平面二维点类CPoint,有数据成员x坐标,y坐标,函数成员(构造函数、虚函数求面积GetArea,虚函数求体积函数GetVolume、输出点信息函数print。由CPoint类派生出圆类Cirle类(新增数据成员半径radius),函数成员(构造函数、求面积GetArea,虚函数求体积函数GetVolume、输出圆面积信息函数pr......
  • go:函数高级、包的使用、if-else、循环、switch、数组
    目录一、函数高级二、包的使用三、if-else四、循环五、switch六、数组七、作业python实现链表一、函数高级1、函数的参数和返回值都是类型的一部分,函数可以赋值给一个变量,有两种情况:test3函数,接收一个参,参数是函数类型:没有参数没有返回值test3有返回值,返回值是个函数:函数......
  • go语言 函数高级、包的使用、if-else、循环、switch、数组
    函数高级//函数1没有参数没有返回值fun函数名(){}2有参数没有返回值fun函数名(aint){}3多个参数同一种类型,可以简写fun函数名(a,bint){}4多个参数同一种类型,有返回值可以简写fun函数名(a,bint)int{retruna+b}5多个返回值fun......
  • while循环逻辑控制器+配置元件计数器的用法
    一、在线程组下添加逻辑控制器WhileController二、在逻辑控制器WhileController下添加Sample,BeanShellSampler,三、逻辑控制器WhileController下添加配置元件,计数器四、在线程组下添加监听器,察看结果树:注意while中设置的是${__javaScript("${number}"<"4")},而请求出......