欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

C語言

如何判斷C語言小程序三角型類型

時(shí)間:2025-03-09 03:01:32 C語言 我要投稿
  • 相關(guān)推薦

如何判斷C語言小程序三角型類型

  C語言是一個有結(jié)構(gòu)化程序設(shè)計(jì)、具有變量作用域(variable scope)以及遞歸功能的過程式語言。以下是小編為大家搜索整理的如何判斷C語言小程序三角型類型,希望能給大家?guī)韼椭?更多精彩內(nèi)容請及時(shí)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!

  第一個判斷三角形的類型,兩個浮點(diǎn)型數(shù)據(jù)不能直接判斷相等,為了輸入方便一些,自己設(shè)置的精度比較低,10^(-3)

  復(fù)制代碼 代碼如下:

  #include

  #include

  #define EPSINON 1e-3

  #define ABS(a) (((a)>0)?(a):(-a)) //?:不支持表達(dá)式嵌套

  #define ZERO(x) ((x)>-EPSINON && (x)

  #define MAX(a,b) (((a)>(b))?(a):(b))

  #define MIN(a,b) (((a)<(b))?(a):(b))

  float a, b, c;

  float max, mid, min;

  char input_err_flag = 0;

  char judge_err_flag = 0;

  int equal(float a, float b)

  {

  float tmp;

  tmp = a - b;

  tmp = ZERO(ABS(tmp));

  return tmp;

  }

  void input(void)

  {

  a = b = c = 0;

  printf("輸入三條邊的值:");

  scanf("%f %f %f",&a, &b, &c);

  if(!(a>0) || !(b>0) || !(c>0))

  {

  input_err_flag = 1;

  }

  }

  void sort(void)

  {

  max = MAX(MAX(a,b),c);

  min = MIN(MIN(a,b),c);

  if(MAX(a,b) < c)

  mid = MAX(a,b);

  else

  mid = MAX(MIN(a,b),c);

  }

  void judge(void)

  {

  float max_square, mid_square, min_square, tmp;

  if(max >= (mid+min))

  {

  judge_err_flag = 1;

  }

  else

  {

  max_square = max * max;

  mid_square = mid * mid;

  min_square = min * min;

  tmp = mid_square + min_square;

  if(equal(mid,min) || equal(max, mid))

  {

  if(equal(mid, min))

  {

  if(mid == max)

  puts("等邊三角形。");

  else if(equal(max_square, tmp))

  puts("等腰直角三角形。");

  else if(max_square < tmp)

  puts("等腰銳角三角形。");

  else

  puts("等腰鈍角三角形。");

  }

  else

  {

  if(equal(min, mid))

  puts("等邊三角形。");

  else

  puts("等腰銳角三角形。");

  }

  }

  else if(equal(max_square, tmp))

  puts("直角三角形。");

  else if(max_square < tmp)

  puts("銳角三角形。");

  else

  puts("鈍角三角形。");

  }

  }

  int main(void)

  {

  char cs, ch;

  do

  {

  input();

  sort();

  judge();

  if(input_err_flag)

  {

  input_err_flag = 0;

  while((cs=getchar())!='n' && (cs=getchar())!=EOF);

  printf("輸入錯誤,a b c必須大于零,是否新輸入(y/n):");

  }

  else if(judge_err_flag)

  {

  judge_err_flag = 0;

  while((cs=getchar())!='n' && (cs=getchar())!=EOF);

  printf("組不成三角形,是否重新輸入(y/n):");

  }

  else

  {

  while((cs=getchar())!='n' && (cs=getchar())!=EOF);

  printf("是否再輸入一組數(shù)據(jù)(y/n):");

  }

  ch = getchar();

  }

  while(ch=='y' || ch=='Y' || ch=='n');

  puts("Goodbye!");

  return 0;

  }

【如何判斷C語言小程序三角型類型】相關(guān)文章:

如何判斷三角形類型的c語言小程序09-16

C語言程序的內(nèi)存如何布局09-06

c語言10個經(jīng)典小程序08-09

10個經(jīng)典的C語言小程序08-11

10個C語言經(jīng)典小程序09-19

Java程序如何調(diào)用C/C++語言函數(shù)10-29

C語言如何提高程序效率04-10

C語言編程程序的內(nèi)存如何布局09-07

在VS下如何運(yùn)行C語言程序09-12