*で、ピラミッドを表示するプログラムで、一部、何を意味するのかが不明な点がありま
す。
*
**
という形で表示するプログラムなんですけど、
#include<stdio.h>
main(){
int i,j,height;
printf(ピラミッドを作ろう。);scanf(%d,&height);
for(i=1;i<=height;i++){
for(j=1;j<=height-i;j++)←第1疑問点
printf( );
for(j=1;j<=i*2-1;j++)←第2疑問点
printf(*);
printf(\n);
}
}
第一疑問点、第2疑問点のそれぞれの継続条件である
height-i,i*2-1の時のiというのは、ピラミッドの段数を表しているのか、
それとも*の横並びの数を表しているのか
どっちなのでしょうか?
>for(j=1;j<=height-i;j++)←第1疑問点
* の左側のスペース数。
>for(j=1;j<=i*2-1;j++)←第2疑問点
* の数。
> height-i,i*2-1の時のiというのは、ピラミッドの段数を表しているのか、
> それとも*の横並びの数を表しているのか
iは何かということなら、描こうとしているピラミッドの最上段から数えて何段目か
(スクリーン上で言えば何行目か)ということですね。
ピラミッドの段数はheight、最上段からi段目の*の横並びの数はi*2-1。
このような疑問が生じたら、手間を惜しまずに紙と鉛筆を使って自分で実行してみると
理解できます。
本題ではありませんが、main関数はint型の値(正常終了のときには0)を返すきまりと
なっています。
int main( void )
{
...
return 0;
}