下のソースをifを使わないで書く方法

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
knight

下のソースをifを使わないで書く方法

#1

投稿記事 by knight » 17年前

#include <stdio.h>

int main(void)
{
int i, j;

for(i=5; i>0; i--){
for(j=1; j<=5; j++){
if(j > i){
printf("■ ");
}else{
printf("□ ");
}
}
printf("\n");
}

return 0;
}
これをifを使わないで書く方法を教えてください。
とりあえず、自分で、途中までしたのを下に書きます。
#include <stdio.h>

int main(void)
{
int i, j;

for(i=0; i<5; i++){
for(j=4; j>=i; j--){
printf("□ ");
}
printf("■ ");
printf("\n");
}

return 0;
}

バグ

Re:下のソースをifを使わないで書く方法

#2

投稿記事 by バグ » 17年前

switchを使ってみては如何でしょうか?

knight

Re:下のソースをifを使わないで書く方法

#3

投稿記事 by knight » 17年前

ありがとうございます。for分だけで書く場合はどうなるのでしょうか?

GPGA

Re:下のソースをifを使わないで書く方法

#4

投稿記事 by GPGA » 17年前

これはどうでしょうか?
#include <stdio.h>

int main(void) 
{ 
	int i, j; 

	for(i=5; i>0; i--){ 
		for(j=1; j<=5; j++){ 
			printf("%s ", j > i ? "■" : "□"); 
		} 
		printf("\n"); 
	}
	return 0;
}

knight

Re:下のソースをifを使わないで書く方法

#5

投稿記事 by knight » 17年前

ありがとうございます~。助かりました。感謝いたします。

toyo

Re:下のソースをifを使わないで書く方法

#6

投稿記事 by toyo » 17年前

もう解決したようですが
私の答えはこれだ
#include <stdio.h>

int main(void)
{
	int i, j;
	
	for(i=5; i>0; i--){
		for(j=1; j<= i; j++){
			printf("□ ");
		}
		for(; j<= 5; j++){
			printf("■ ");
		}
		printf("\n");
	}
	
	return 0;
}

バグ

Re:下のソースをifを使わないで書く方法

#7

投稿記事 by バグ » 17年前

では、私はこれで(笑)
#include <stdio.h>

int main(void)
{
	printf("□□□□□\n");
	printf("□□□□■\n");
	printf("□□□■■\n");
	printf("□□■■■\n");
	printf("□■■■■\n");
	return 0;
}

閉鎖

“C言語何でも質問掲示板” へ戻る