輸入三個數, 判斷是什麼樣的三角形
阿新 • • 發佈:2019-01-09
三角形的任意兩邊之和, 都比第三邊長
#include <stdio.h> bool yesorno(float, float, float); //函式宣告 void main() { float a, b, c; //定義三條邊 bool s; //布林型變數 char ch; do { printf("請輸入3角形的三條邊:\n"); printf("a = "); scanf("%f", &a); printf("b = "); scanf("%f", &b); printf("c = "); scanf("%f", &c); printf("\n"); //呼叫函式, 判斷能否組成三角形, 能返回真, 否則返回假 s = yesorno(a, b, c); if(s) { printf("這三個陣列成的3角形是: "); if(a == b && b == c) { printf("等邊3角形\n"); } else { if(a != b && b != c && a != c) printf("不等邊3角形\n"); else printf("等腰3角形\n"); } } else { printf("你輸入的三個數%f, %f, %f ,它們不能組成3角形!\n", a, b, c); } printf("還要繼續判斷嗎?(Y/n): "); while((ch = getchar()) != '\n') continue; //去掉緩衝區中的所有字元, 準備下次輸入 ch = getchar(); //輸入是否進行繼續 }while((ch == 'Y') || (ch == 'y')); } bool yesorno(float a, float b, float c) { if((a + b > c) && (a + c > b) && (c + b > c)) return true; else return false; }
在vc++ 6.0中輸出結果為:
請輸入3角形的三條邊:
a = 3
b = 4
c = 5
這三個陣列成的3角形是: 不等邊3角形
還要繼續判斷嗎?(Y/n):