問題
3つの整数をA,B,Cを入力すると、2番目の値を出力するプログラムを作りなさい。
という問題なんですけど、自分でも書いて見て2番目の値は出力するのですが、
とてもプログラミングとは言えないような記述でどのようにすれば良いか教えていただきたいです。
c
1 #include <stdio.h> 2 int main(void) { 3 int a,b,c; 4 5 printf("aを入力しください: "); 6 scanf("%d", &a); 7 printf("bを入力しください: "); 8 scanf("%d", &b); 9 printf("cを入力しください: "); 10 scanf("%d", &c); 11 12 if ( (b < a && a < c) || (c < a && a < b) ) { 13 printf("2番目の値は%dです\n" , a); 14 } 15 else if ( (c < b && b < a) || (a < b && b < c) ) { 16 printf("2番目の値は%dです\n" , b); 17 } 18 else if ( (a < c && c < b) || (b < c && c < a) ) { 19 printf("2番目の値は%dです\n" , c); 20 } 21 else if ( a == b && a < c) { 22 printf("2番目の値は%dです\n" , a); 23 } 24 else if ( a == b && c < a) { 25 printf("2番目の値は%dです\n" , c); 26 } 27 else if ( a == c && a < b) { 28 printf("2番目の値は%dです\n" , a); 29 } 30 else if ( a == c && b < a) { 31 printf("2番目の値は%dです\n" , b); 32 } 33 else if ( b == c && a < b) { 34 printf("2番目の値は%dです\n" , a); 35 } 36 else if ( b == c && b < a) { 37 printf("2番目の値は%dです\n" , b); 38 } 39 else { 40 printf("すべて等しい値です。\n"); 41 } 42 } 43
配列などを使えばすっきりとしたプログラムが書けるのでしょうか?
よろしくお願いいたします。
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/13 21:50
2019/04/13 21:53
2019/04/13 21:58
2019/04/13 22:11
2019/04/13 22:20
2019/04/13 22:29
2019/04/13 22:33
2019/04/13 22:40
2019/04/13 23:11 編集
2019/04/14 04:12
2019/04/14 04:35
2019/04/14 05:01
2019/04/14 05:09
2019/04/14 09:15