(実行例) 4 5
*****
* *
* *
*****無題
-
やそ
Re:無題
boxさんがおっしゃっているのは、
処理の流れを一つ一つ順を追って書き出してみると良い。
と言うことです。
*を使った四角形の表示。
まずは*で塗りつぶす四角形を考えてみてください。
それが出来ればあとちょっとの工夫で出来るはずです。
たて、横の数値の入力はとりあえずscanf()関数でも使って入力させてみては?
その数字が取得できればfor文でまわしてあげるだけですね。
処理の流れを一つ一つ順を追って書き出してみると良い。
と言うことです。
*を使った四角形の表示。
まずは*で塗りつぶす四角形を考えてみてください。
それが出来ればあとちょっとの工夫で出来るはずです。
たて、横の数値の入力はとりあえずscanf()関数でも使って入力させてみては?
その数字が取得できればfor文でまわしてあげるだけですね。
int i, j, tate, yoko;
scanf("たて",&tate);
scanf("よこ",&yoko);
for(i=0;i<tate;i++){
for(j=0;j<yoko;j++){
printf("*");
}
printf("\n");
}
ご参考まで^^-
管理人
Re:無題
ほぼ答えになってしまいますが、
例えば10x10のエリア上にy<=xかつy>=x-4の範囲で塗りつぶしたい時は以下のようにかけますよね。
例えば10x10のエリア上にy<=xかつy>=x-4の範囲で塗りつぶしたい時は以下のようにかけますよね。
#include <stdio.h>
int main(void)
{
int i,j;
int x_Length=10, y_Length=10;
for(i=0;i<y_Length;i++){
for(j=0;j<x_Length;j++){
if(j>=i && j<=i+4)
printf("*");
else
printf(" ");
}
printf("\n");
}
printf("\n");
return 0;
}
実行結果
*****
*****
*****
*****
*****
*****
****
***
**
*