完成すれば良い、と言われたので、取り急ぎ完成はさせたのですが、プログラムが汚くて困っています。
こちらです。
#include<stdio.h>
int main(void)
{
int mloop;
int space,space2=2,cspace,cspace2=5;
/*********上半分出力*********/
for(mloop=0;mloop<3;mloop++) //メインループ(mloop)
{
for(space=0;space<mloop;space++) //スペース0で始まってmloop(行数)分スペース表示
printf(" ");
printf("*"); //*出力
for(cspace=cspace2;cspace>0;cspace--)
printf(" ");
cspace2-=2; //次ループ次の中央スペースの数を2減らす。
printf("*");
printf("\n"); //改行
}
/*********中央*出力*********/
printf(" *");
printf("\n");
/*********下半分出力*********/
cspace2=1;
for(mloop=0;mloop<3;mloop++) //メインループ(mloop)
{
for(space=space2;space>0;space--) //スペース0で始まってmloop(行数)分スペース表示
printf(" ");
space2-=1;
printf("*"); //*出力
for(cspace=0;cspace<cspace2;cspace++)
printf(" ");
cspace2+=2; //次ループ次の中央スペースの数を2増やす。
printf("*");
printf("\n"); //改行
}
}
中央の一つ
バッテンの下半分
この3つのパーツに分けて出力しています。
先頭のスペースの数の増減
中央のスペースの数の増減
これらにあわせてアスタリスク、スペースを表示させるforループの回数を変動させています。
これで表示はされるものの、もう少し、綺麗にできないでしょうか。
例えばちょっとした数式を使うだとか…。(cspace2、space2 などの無駄な変数がきになる)
ご教示お願いします。