无聊去一些论坛写的…

代码

/*******************************************************************************
我自己的做法是:每次要输出的字符, 用一个字符常量累加相应的数(转换为相应的ASCII码),
再累加一次整数,再输出;当要逆序输出字母时,同理。
******************************************************************************
*/
#include
<stdio.h>
#define N 5
#define src \'A\'

int main()
{
int i, j, index;
char dest;

index
= 0;
for (i = 1; i <= N; i++) /* 第1~5行 */
{
for (j = N - i; j >= 1; j--) /* 输出空格 */
{
putchar(
\' \');
}
for (j = 1; j <= 2 * i - 1; j++) /* 输出字母 */
{
dest
= src + index;
index
++;
putchar(dest);
}
putchar(
\'\n\');
}

index
= 15;
for (i = 4; i >= 1; i--) /* 第6~19行 */
{
for (j = N - i; j >= 1; j--) /* 输出空格 */
{
putchar(
\' \');
}
for (j = 1; j <= 2 * i - 1; j++) /* 输出字母 */
{
dest
= src + index;
index
--;
putchar(dest);
}
putchar(
\'\n\');
}

return 0;
}

 

 

版权声明:本文为xyoung原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xyoung/archive/2010/12/03/1895754.html