中文天堂在线播放|777超碰|亚洲男人天堂手机版|露水红颜电影未删减完整版,简单任务国语高清在线观看完整版,成人xxxxx,日本aa在线

9月計算機三級網絡技術上機模擬題及答案

時間:2025-09-14 00:21:42 試題

9月計算機三級網絡技術上機模擬題及答案

  已知在文件IN100.DAT中存有N個實數(N<200),函數ReadDat( )讀取這N個實數并存入數組xx中。請編制程序CalValue( ),其功能要求:

  (1)求出這N個實數的平均值aver。

  (2)分別求出這N個實數的整數部分值之和sumint及其小數部分之和sumdec,最后調用函數WriteDat( )把所求的結果輸出到文件OUT100.DAT中。

  注意:部分源程序已給出。

  請勿改動主函數main( )、讀函數ReadDat( )和寫函數WriteDat( )的內容。

  試題程序:

  #include

  #include

  #define MAXNUM 200

  float xx[MAXNUM];

  int N=0;

  double aver=0.0;

  double sumint=0.0;

  double sumdec=0.0;

  int ReadDat( );

  void WriteDat( );

  void CalValue( )

  {

  }

  void main( )

  {

  system("CLS");

  if(ReadDat( ))

  {

  printf("數據文件IN100.DAT不能打開!\007\n");

  return;

  }

  CalValue ( );

  printf("文件IN100.DAT中共有實數%d個\n",N);

  printf("平均值=%.2lf\n",aver);

  printf("整數部分之和=%.2lf\n",sumint);

  printf("小數部分之和=%.2lf\n",sumdec);

  WriteDat( );

  }

  int ReadDat()

  {

  FILE *fp;

  if((fp=fopen( "in100.dat","r"))==NULL)

  return 1;

  while(!feof(fp))

  {

  fscanf(fp,"%f",&xx[N]);

  if (xx[N] >0.001) N++;

  }

  fclose(fp);

  return 0;

  }

  void WriteDat()

  {

  FILE *fp;

  fp=fopen("OUT100.DAT","w");

  fprintf(fp,"%d\n%.2lf\n%.2lf\n%.2lf\n",N,aver,sumint,sumdec);

  fclose(fp);

  }

  【參考答案】

  void CalValue( )

  {

  int i; /*定義循環(huán)控制變量*/

  double sum=0.0; /*定義存儲所有數的和值的變量*/

  for(i=0;i  {

  sumint+=(int)xx[i]; /*求整數部分之和*/

  sumdec+=(xx[i]-(int)xx[i]); /*求小數部分之和*/

  sum=sum+xx[i]; /*求N個數之和*/

  }

  aver=sum/N; /*求N個數的平均數*/

  }

  【解析】要將一個實數的整數部分和小數部分分開,這里使用的方法是強制類型轉換法。強制類型轉換是按照要求將表達式的值轉換成指定的類型。將一個實數強制轉換成整型數之后,其小數部分被去掉(不是四舍五入,而是直接刪除)。用該實數減去轉換后的整數,就得到了小數部分的值。

  在本題中,通過一個for循環(huán)分別計算整數和小數部分的累加和,以及這N個實數的和。最后求出這N個實數的平均值。

【9月計算機三級網絡技術上機模擬題及答案】相關文章:

9月計算機三級網絡技術模擬題及答案11-05

計算機三級網絡技術上機模擬題及答案07-27

2015年9月計算機三級網絡技術上機試題及答案11-18

最新2016計算機三級網絡技術上機模擬題及答案01-20

2016年3月計算機三級網絡技術上機題及答案12-22

2017年9月計算機三級網絡技術模擬題(含答案)11-03

計算機三級網絡技術上機題庫及答案12-16

2015年9月計算機三級《網絡技術》全真模擬題答案及解析09-21

2015年9月計算機三級考試《網絡技術》沖刺模擬題答案03-16