都那样做了..
还谈算法干嘛
我是指针,却丢失了目标地址! 我是循环,却缺少了结束条件! 我是函数,却没有人来调用!
(我是用了C++,你自己转换一下吧。算法是一样的)
使用的算法如下
BEGIN:
for(i=1;i<=4;i++) 从第一行到第四行
for(j=1;j<=16-i;j++) 第i行右移的次数(在*的前面有空格,所以要右移)
print space 打印空格
endfor j 结束j的循环
for(k=1;k<=(2*i-1);k++) 输出*的个数
print *; 打印*
endfor k 结束k循环
CR 换行
endfor i 结束i的循环
for(i=1;i<=3;i++) 从倒数第i行到第1行
for(j=1;j<=(i+12);j++) 从第i行右移的次数
print space; 输出空格
endfor j 结束j的循环
for(k=1;k<=(-2*i);k++) 输出*的个数
print * 打印*
endfor k 结束k循环
CR 换行
endfor i 结束i的循环
END
主要是要弄懂算法。。以下的程序仅供参考。
#include <iostream>
using namespace std;void main()
{
int i,j,k;
for(i+1;i<=4;i++)
{
for(j=1;j<=16;j++)
cout<<\" \";
for(k=1;k<=(2*i-1);k++)
cout<<\"*\";
cout<<endl;
}
for(i=1;i<=3;i++)
{
for(j=1;j<=i+2;j++)
cout<<\" \";
for(k=1;k<=(7-2*i);k++)
cout<<\"*\";cout<<endl;
}
}
[此贴子已经被作者于2007-4-22 21:41:37编辑过]