怎样用C语言编写一个求平均数的程序?要求如下.刚学C语言,要-查字典问答网
分类选择

来自胡延苏的问题

  怎样用C语言编写一个求平均数的程序?要求如下.刚学C语言,要求是:由五个大写英文字母(ABCDF,没有E)分别代表4,3,2,1,0五个数字,执行程序时,要求连续输入六个大写字母并用空格隔开(如ABF

  怎样用C语言编写一个求平均数的程序?要求如下.刚学C语言,

  要求是:由五个大写英文字母(ABCDF,没有E)分别代表4,3,2,1,0五个数字,执行程序时,要求连续输入六个大写字母并用空格隔开(如ABFCDF),输出时直接得到由这几个字母代表的数字的平均数并精确到两位小数(即(A+B+F+C+D+F)/6=(4+3+0+2+1+0)/6=1.67)

  原题的英文要求如下,有可能翻译的不标准:

  Eachcoursegradeisoneofthefollowingfiveletters:A,B,C,D,andF.(NotethatthereisnogradeE.)ThegradeAindicatessuperiorachievement,whereasFstandsforfailure.InordertocalculatetheGPA(GradePointAverage),thelettergradesA,B,C,D,andFareassignedthefollowinggradepoints,respectively:4,3,2,1,and0.TheGPAistheaveragenumberofthesegrades.

  Input

  Theinputdataare6coursegradeinaline.Thereare6uppercaseletters,separatedbyblankspaces.

  Output

  Ifalluppercaselettersonaparticularlineofinputcamefromtheset{A,B,C,D,F}thentheoutputwillconsistoftheGPA,displayedwithaprecisionoftwodecimalplaces.Otherwise,themessage"Unknownlettergradeininput"willbeprinted.

  SampleInput

  ABFCDF

  BFFCCA

  DCEFAB

  AAAAAA

  SampleOutput

  1.67

  1.83

  Unknownlettergradeininput

  4.00

1回答
2020-12-29 01:44
我要回答
请先登录
何苹

  #include

  intchartoint(charch)

  {

  inta;

  switch(ch)

  {

  case'A':a=4;

  break;

  case'B':a=3;

  break;

  case'C':a=2;

  break;

  case'D':a=1;

  break;

  case'F':a=0;

  break;

  default:a=-5000;

  }

  returna;

  }

  main()

  {

  charch;

  intgpa,i;

  while(scanf("%c",&ch)!=EOF)

  {

  gpa=chartoint(ch);

  for(i=0;i=0)

  printf("%.2fn",gpa/6.0);

  else

  printf("Unknownlettergradeininputn");

  getchar();

  }

  }

  这个可以实现输入多组数据的,感觉题目不规范,没有描述终止条件,最后的getchar()是用来吸收回车的,你可以去掉以后调试一下就知道效果了

2020-12-29 01:48:12

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •