(実行例) 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; } 実行結果 ***** ***** ***** ***** ***** ***** **** *** ** *