初学者也能会的金字塔打印

1.基本语法形式

for(表达式1;表达式2;表达式3)

其中,表达式1代表初始化,表达式2为判断部分,表达式3为调整部分。将for语句改写为while语句如下:

表达式1;

while(表达式2) 

{

    表达式3;

}

2.for语句的优势如下

   其不仅可以用于循环以及确定的情况,还可以用于循环次数不确定只给出循环结束条件的情况。可以完全替代while循环。

3.for语句的变种:

   1.  for(;表达式2;表达式3)//表达式1一般可以省略,且表达式1一般是给变量赋值

   2.  for(表达式1;;表达式3)//表达式2省略代表循环无终止的进行。等同于while(1)

4.使用for循环来打印一些特殊的图形如下代码:比如金字塔,漏斗,菱形

//打印金字塔
#include<stdio.h>
int main()
{
	int i = 0;
	int j = 0;
	int n = 0;
	int k = 0;
	printf("请输入一个数字n来决定金字塔的层数:");
	scanf_s("%d", &n);
	for (i = 0; i < n; i++) //外循环控制次数
	{
		for (j = n; j > i; j--) //内循环线打印空格后打印星号
		{
			printf(" ");
		}
		for (k = 0; k < 2 * i + 1; k++)
		{
			printf("*");
		}
		printf("\n");
	}
	return 0;
}
//打印漏斗
#include<stdio.h>
#include<math.h>
int main()
{
	int i = 0;
	int j = 0;
	int m = 0;
	int n = 0;
	printf("请输入一个数n来确定漏斗的大致形状:");
	scanf_s("%d", &n);
	
	for (i=-abs(n);i <= abs(n);i++)//外循环控制层数
	
	{
		
		for (j = 0;j <= n - abs(i);j++) //使用abs函数取绝对值来减少for的多层嵌套
			{
				printf(" ");
			}

		for (m = 0;m <= abs(i);m++)
			{
				printf("* ");
			}
		
    
		printf("\n");
	}
	return 0;
}

菱形与漏斗差异不大,此处不再赘述。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值