全国计算机等级四级机试试题及答案一(7-9)

文章作者 100test 发表时间 2007:03:10 18:30:58
来源 100Test.Com百考试题网


8./*PROG8 已知在文件IN.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组XX中。请编制函数CalValue(),其功能要求:
  1、求出这文件中共有多少个正整数totNum;
  2、求出这些数中的十位数位置上的数字是2、4和8的数的个数totCnt,以及满足此条件的这些数的算术平均值totpjZ,最后调用函数WriteDat()把所求的结果输出到文件OUT6.DAT中。
  注意:部分部分源程序存放在PROG8.C中。
  请勿改动主函数main(),读数据函数ReacdDat()和输出数据函数WriteDat()的内容。*/
#include
#include
#define MAXNUM 200
int xx[MAXNUM] .
int totNum = 0 . /* 文件IN.DAT中共有多少个正整数 */
int totCnt = 0 . /* 符合条件的正整数的个数 */
double totPjz = 0.0 . /* 平均值 */
int ReadDat(void) .
void WriteDat(void) .
void CalValue(void)
{ int i,qw,bw,sw.
double sum=0.
for (i=0.iif (xx[i]>0)
{
totNum .
qw=xx[i]/1000.
bw=xx[i]/100-qw*10.
sw=xx[i]/10-qw*100-bw*10.
if ((sw==2)||(sw==4)||(sw==8))
{
totCnt .
sum=sum xx[i].
}
}
totPjz = sum / totCnt.
}
void main()
{
clrscr() .
if(ReadDat()) {
printf("数据文件IN.DAT不能打开!\007\n") .
return .
}
CalValue() .
printf("文件IN.DAT中共有正整数=%d个\n", totNum) .
printf("符合条件的正整数的个数=%d个\n", totCnt) .
printf("平均值=%.2lf\n", totPjz) .
WriteDat() .
}
int ReadDat(void)
{
FILE *fp .
int i = 0 .
if((fp = fopen("in.dat", "r")) == NULL) return 1 .
while(!feof(fp)) {
fscanf(fp, "%d,", &.xx[i ]) .
}
fclose(fp) .
return 0 .
}
void WriteDat(void)
{
FILE *fp .
fp = fopen("OUT6.DAT", "w") .
fprintf(fp, "%d\n%d\n%.2lf\n", totNum, totCnt, totPjz) .
fclose(fp) .
}

相关文章


三级数据库技术辅导第四讲:SQL语言应用
全国计算机等级四级机试试题及答案一(4-6)
三级数据库技术辅导第四讲:SQL语言特点
全国计算机等级四级机试试题及答案一(7-9)
全国计算机等级四级机试试题及答案一(10-12)
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛