【参考答案】 void jsValue()
{ int i; /* 定义变量 */ for(i=0;i if(i%2==1) pj+=xx[i]; } pj/=(N/2); /* 求平均值 */ } 第57套 已知在文件IN54.DAT中存有N个(个数<200)实数,函数ReadDat()读取这N个实数并存入数组xx中。请编制函数Calvalue(),其功能要求:(1)求出这N个实数的平均值aver;(2)分别求出这N个实数的整数部分之和sumint以及小数部分之和sumdec,最后调用函数WriteDat()把所求的结果输出到文件OUT54.DAT中。 【参考答案】 void Calvalue(void) { int i; double x,sum=0; for (i=0;i sumint=sumint+(int)xx[i]; x=xx[i]-(int)xx[i]; sumdec=sumdec+x; sum=sum+xx[i]; } aver=sum/N; } 第58套 已知在文件IN56.DAT中存有若干个(个数<200)4位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求是:(1)求出这个文件中共有多少个正整数totNum。(2)求出这些数中的各位数字之和是奇数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz。最后,调用函数WriteDat()把所有结果输出到文件OUT56.DAT中。 【参考答案】 void CalValue(void) { int i,thou,hun,ten,data,ab; for(i=0;i if(!xx[i]) break; 36 / 57 if(xx[i]>0) totNum++; /*求正整数的个数*/ thou=xx[i]/1000; /*求四位数的千位数字*/ hun=xx[i]00/100; /*求四位数的百位数字*/ ten=xx[i]0/10; /*求四位数的十位数字*/ data=xx[i]; /*求四位数的个位数字*/ ab=thou+hun+ten+data; if(ab%2) { totCnt++; totPjz+=xx[i]; } /*统计各位数字之和是奇数的个数并累加求和*/ } totPjz/=totCnt; /*求满足条件的数的平均值*/ } 第59套 已知在文件IN55.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数Calvalue(),其功能要求:(1)求出文件中共有多少个正整数totNum;(2)求出这些数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz,最后调用函数WriteDat()把所求的结果输出到文件OUT55.DAT 【参考答案】 void Calvalue(void) { int i,thou,hun,ten,data; int ab; float sum=0; for(i=0;i if(xx[i]>0) totNum++; /*求正整数的个数*/ else break; thou=xx[i]/1000; /*求四位数的千位数字*/ hun=xx[i]00/100; /*求四位数的百位数字*/ ten=xx[i]0/10; /*求四位数的十位数字*/ data=xx[i]; /*求四位数的个位数字*/ ab=thou+hun+ten+data; if (ab%2==0) { totCnt++; sum=sum+xx[i]; } /*统计各位数字之和是奇数的个数并累加求和*/ } totPjz=sum/totCnt; /*求满足条件的数的平均值*/ } 第60套 请编制函数ReadDat(),实现从文件IN60.DAT中读取1 000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中奇数的个数odd、奇数的平均值ave1、偶数的平均值ave2及所有奇数的方差totfc的值。最后调用函数WriteDat()把结果输出到OUT60.DAT文件中。 计算方差的公式如下: 37 / 57 设N为奇数的个数,xx[i]为奇数,ave1为奇数的平均值。 原始数据的存放格式是:每行存放10个数,并用逗号隔开(每个数均大于0且小于等于2 000)。 【参考答案】 void Compute(void) { int i,yy[MAX]; for(i=0;i<1000;i++) if(xx[i]%2!=0) { odd++; ave1+=xx[i]; yy[odd-1]=xx[i]; } else { even++; ave2+=xx[i]; } ave1/=odd; /*求数组xx中所有奇数的平均值*/ ave2/=even; /*求数组xx中所有偶数的平均值*/ for(i=0;i totfc+=(yy[i]-ave1)*(yy[i]-ave1)/odd; /*计算所有奇数的方差*/ } 第61套 请编制函数ReadDat(),实现从文件IN61.DAT中读取1 000个十进制整数到数组xx中;请编制函数Compute(),分别计算出xx中奇数的个数odd、偶数的个数even、平均值aver及方差totfc的值,最后调用函数WriteDat()把结果输出到OUT61.DAT文件中。 计算方差的公式如下: 原始数据的存放格式是:每行存放10个数,并用逗号隔开(每个数均大于0且小于等于2 000)。 【参考答案】 void Compute(void) { int i,yy[MAX]; for(i=0;i<1000;i++) { if(xx[i]%2!=0) odd++; /*求数组xx中奇数的个数*/ else even++; /*求数组xx中偶数的个数*/ aver+=xx[i]; /*求数组xx中所有元素的总和*/ } aver/=MAX; /*求数组xx中所有元素的平均值*/ for(i=0;i<1000;i++) totfc+=(xx[i]-aver)*(xx[i]-aver)/MAX; /*计算所有元素的方差*/ } 第62套 请编制函数ReadDat(),实现从文件IN59.DAT中读取1 000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中偶数的个数even、奇数的平均值ave1、偶数的平均值ave2以及所有偶数的方差totfc的值,最后调用函数WriteDat()把结果输出到OUT59.DAT文件中。 38 / 57 计算方差的公式如下: 设N为偶数的个数,xx[i]为偶数,ave2为偶数的平均值。 原始数据文件存放的格式是:每行存放10个数,并用逗号隔开(每个数均大于0且小于等于2 000)。 【参考答案】 int i; /* 定义变量 */ for(i=0;i else ave1+=xx[i]; } ave2/=even; /* 求平均值 */ ave1/=(MAX-even); for(i=0;i totfc+=(xx[i]-ave2)*(xx[i]-ave2)/even; 第63套 请编制程序,要求:将文件IN42.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数cnt,并计算数组xx中值能被3整除或能被7整除的数的算术平均值pj,结果max、cnt、pj输出到文件OUT.DAT中。 注意:部分程序、读函数read_dat(int xx[200])及输出格式已给出。 【参考答案】 int i,cnt2; /* 定义变量 */ max=cnt=cnt2=0; /* 变量初始化 */ for(i=0;i { if(xx[i]>max) /* 最大数重置 */ { max=xx[i]; cnt=0; } if(xx[i]==max) /* 最大数计数 */ cnt++; if(xx[i]%3==0||xx[i]%7==0) /* 统计求和 */ { pj+=xx[i]; cnt2++; } } pj/=cnt2; /* 求平均值 */ 第64套 请编写函数void countValue(int*,int*n),它的功能是:求出1到100之内能被7或11整除 39 / 57 但不能同时被7和11整除的所有整数,其结果按从小到大的顺序放在数组a中,并通过形式参数n传递这些数的个数。 【参考答案】 int i; /* 定义变量 */ *n=0; /* 初始化变量 */ for(i=1;i<=1000;i++) /* 统计复制 */ if(i%7==0&&i!=0||i%7!=0&&i==0) a[(*n)++]=i; 第65套 请编写函数void countValue(int*n),它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数和的平均值的平方根s,s作为函数的返回值,最后结果是输入到文件OUT.DAT中。例如若n为1000时,函数的值应为:s=22.449944 【参考答案】 int i,cnt=0; /* 定义变量并初始化 */ double sum=0.0; for(i=1;i sum/=cnt; /* 求平均值 */ sum=sqrt(sum); /* 求平方根 */ return sum; /* 返回结果 */ 第66套 函数ReadDat()的功能是实现从文件ENG63.IN中读取一篇英文文章,存入到字符串数组xx中。请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,结果仍存入数组xx对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS63.DAT中。 替代关系:f(p)=p*11 mod 256(p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)的值小于等于32或在65至90(包括)之间,则该字符不变,否则将f(p)所对应的字符进行替代。 【参考答案】 int i,j,val; /* 定义变量 */ for(i=0;i { val=xx[i][j]*11%6; /* 替代关系 */ if(val<=32||val>=65&&val<=90)/* 判断条件 */ continue; else xx[i][j]=val; } 第67套 函数ReadDat()的功能是实现从文件ENG63.IN中读取一篇英文文章,存入到字符串数组xx中。请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,结果 40 / 57 百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库2024年9月计算机三级网络技术机试100套上机题库(最新)(8)在线全文阅读。
相关推荐: