小白入门.输入金字塔图形,行数有输入控制.(循环嵌套)
#include<stdio.h> void main() { int i,j,n; printf("Please input n:\n"); scanf("%d",&n); if(n<0) printf("行数错误!\n"); else { for(j=1;j<=n;j++) { for(i=1;i<=j;i++) { printf("*"); } printf("\n"); } } }
有两个控制循环计数的变量i,j.
找到两个控制循环变量的关系及 i,j,之间的关系。
例:金字塔 *
***
*****
******* 一行增加了两个*,而控制行数的变量j,与控制每行个数的变量i,
关系为 i= 2*j-1 。所以内层循环控制条件为 for(i=1;i<=2*j-1;i++)
if(n<0) printf("Input error!"); else { for(j=1;j<=n;j++) { for(i=1;i<=2*j-1;i++) { printf("*"); } printf("\n"); } }
再例:倒三角 *******
*****
***
* 控制行数 j,与个数 i,之间的关系 2*n+1-2*j (n为输入的金字塔行数)
字母金字塔:
#include<stdio.h> void main() { int i,j,n; char ch='A'; printf("please input n:\n"); scanf("%d",&n); if(n<0) printf("Input error!\n"); else { for(j=1;j<=n;j++) { for(i=1;i<=j;i++) { printf("%c",ch); } printf("\n"); ch++; } } }

浙公网安备 33010602011771号