c语言输出字母金字塔AABCABCD(c语言如何输出字母金字塔)
导语:C语言-输出字母金字塔
①字母金字塔
空空空空空空A
空空空空空 BBB
空空空空 CCCCC
空空空 DDDDDDD
空空 EEEEEEEEE
~
观察规律
一共5行,
从上到下依次递增
内容递增ABCDE
数量递增13579
同时前置递减的空格65432
从而形成对齐的金字塔图形
~
②源程序
include<stdlib.h>
int main()
{
int i=1,n,k,r;char ch;
for(i=1;i<6;i++)
{ch=+i-1;
n=2*i-1;
for(k=6;k>=i;k--)putchar(` `);
for(r=1;r<=n;r++)putchar(`ch`);
printf();
};
system();
}
~
③解释
include<stdlib.h>
为了调用 system函数
int main()
主函数main是执行程序入口,固定格式
只是函数返回值为整型,main前面必须加int
{
int i=1,n,k,r;char ch;
字母i、n用于计数
字母k用于输出空格数量(kong取首字母)
字目 r用于输出内容数量(rong取首字母)
字符ch用于输出内容字母(char后面有空格)
for(i=1;i<6;i++)
一共5行,i为1到5。
因为下一句,i=5时,+i-1刚好递增4=E
{ch=+i-1;
字母=A开始往后递增,用ASCLL码把ABCDE等字母量化
n=2*i-1;
n是表示13579的数列
for(k=6;k>=i;k--)putchar(` `);
k表示空格从6递减到2,5行递减5次,
倒着输出空格
第一行,i=1时,k=654321,6空格
第二行,i=2时,k=65432,5空格
第三行,i=3时,k=6543,4空格
第四行,i=4时,k=654,3空格
第五行,i=5时,k=65,2空格
putchar(`中间有空格`),表示输出字符空格
for(r=1;r<=n;r++)putchar(`ch`);
r表示内容数量按13579递增
ch=+i-1表示内容按字母顺序ABCDE递增
5行递增5次
第一行,n=1时,r=1,1个A
第二行,n=3时,r=123,3个B
第三行,n=5时,r=12345,5个C
第四行,n=7时,r=1234567,7个D
第五行,n=9时,r=123456789,9个E
putchar(`ch`),表示输出字符字母
printf();
每一行最后不要忘了回车
};
system();
解决窗口闪退问题
}
~
④胡思乱想
可以把字母换成汉字,增加程序可读性,
程序可以执行,但考试会被扣分
k=空格
r=内容
ch=字母
include<stdlib.h>
int main()
{
int i=1,n,空格,内容;char 字母;
for(i=1;i<6;i++)
{ch=+i-1;
n=2*i-1;
for(空格=6;空格>=i;空格--)putchar(` `);
for(内容=1;内容<=n;内容++)putchar(`字母`);
printf();
};
system();
}
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小媛创作整理编辑!