《啊哈C语言》第四章第六节习题2

2.请尝试用while循环打印下面的图形
输入一个整数n(1<=n<=30),当输入n=3时,打印结果是:
1
2 3
4 5 6
当输入n的值是5的时候,打印结果是:
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c,n;
a=1;
c=1;
scanf("%d",&n);
while(a<=n)
{
if(1<=n<=30) /*书上限定了n的范围 */
{
b=1;
while(b<=a)
{
printf("%d",c);
b=b+1;
c=c+1;
}
}
printf("\n");
a=a+1;

system("pause");
return 0;

}
思路:
1.声明a,b,c,n四个变量。
2.给a,c,变量赋值。
3.运用scanf()得到输入的量
4.如果外循环(a<=n)成立,则限定n的取值范围
5.当n的值位于[1,30]的时候,则将b的值赋值为1,接着引入内循环,使得当你输入的数字是n时候输出的数字是多少行,引入c,使得while(b<=a)内循环开始,最后运行printf("\n");
例:输入2
1.判定a是否小于n,
2.若成立,则进入if,
3.判断n是否小于30大于1,
4.成立则将1赋值给b,将1赋值给b后,
5.进入while(b<=a),若成立,则打印c,c=1
b1=b+1=2
c1=1+1=2
6.回到内循环的开始,判断b是否小于a,因为2<=2成立,则继续内循环,此时打印出c=2,接着b2=b1+1=3
c2=c1+1=3
7.此时,回到开头,3<=2不成立,则内循环结束,打印printf("\n"),后if函数结束,最后执行外循环a=a+1;

PS:初学研究出的代码,如果各位在运行时发现错误,欢迎留言指正。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值