已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题目81(整数各位数运算题)已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加百位数等于十位数上的数加个位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果输出到out.dat文件。例如:7153,7+1=5+3,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。8129,8+12+9,则该数不满足条件计算平均值pjz2。部分源程序存在文件prog1.c中。程序中已定义数组:a300,已定义变量:cnt,pjz1,pjz2。请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。#include int a300,cnt=0;double pjz1=0.0,pjz2=0.0;jsValue()int i,thou,hun,ten,data,n=0;for(i=0;i300;i+)thou=ai/1000; hun=ai%1000/100; ten=ai%100/10; data=ai%10; if(thou+hun=ten+data) cnt+;pjz1+=ai; else n+;pjz2+=ai;if(cnt=0) pjz1=0;else pjz1/=cnt;if(n=0) pjz2=0;else pjz2/=n;main()int i;readDat();jsValue();writeDat();printf(cnt=%dn满足条件的平均值pzj1=%7.2fn不满足条件的平均值pzj2=%7.2fn,cnt,pjz1,pjz2);readDat()FILE *fp;int i;fp=fopen(in.dat,r);for(i=0;i300;i+)fscanf(fp,%d,&ai);fclose(fp);writeDat()FILE *fp;int i;fp=fopen(out.dat,w);fprintf(fp,%dn%7.2fn%7.2fn,cnt,pjz1,pjz2);fclose(fp);*题目82(素数题)已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果cnt,pjz1,pjz2输出到out.dat文件。 例如:5591是素数,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件计算平均值pjz2。部分源程序存在文件prog1.c中。程序中已定义数组:a300,已定义变量:cnt,pjz1,pjz2请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。#include int a300,cnt=0;double pjz1=0.0,pjz2=0.0;int isP(int m)int i;for(i=2;im;i+) if(m%i=0)return 0;return 1;jsValue()int i;for(i=0;i300;i+) if(isP(ai) pjz1+=ai;cnt+; else pjz2+=ai;if(cnt=0) pjz1=0;else pjz1/=cnt;if(300-cnt=0) pjz2=0;else pjz2/=(300-cnt);main()int i;readDat();jsValue();writeDat();printf(cnt=%dn满足条件的平均值pzj1=%7.2fn不满足条件的平均值pzj2=%7.2fn,cnt,pjz1,pjz2);readDat()FILE *fp;int i;fp=fopen(in.dat,r);for(i=0;i300;i+)fscanf(fp,%d,&ai);fclose(fp);writeDat()FILE *fp;int i;fp=fopen(out.dat,w);fprintf(fp,%dn%7.2fn%7.2fn,cnt,pjz1,pjz2);fclose(fp);*题目83(方差运算题)请编制函数ReadDat()实现从文件IN.DAT中读取1000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中奇数的个数odd,奇数的平均值ave1,偶数的平均值ave2以及所有奇数的方差totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。计算方差的公式如下: N 2 totfc=1/N (xxi-ave1) i=1设N为奇数的个数,xxi为奇数,ave1为奇数的平均值。原始数据文件存放的格式是:每行存放10个数,并用逗号隔开。(每个数均大于0且小于等于2000)部分源程序存在文件prog1.c中。请勿改动主函数main()和输出数据函数writeDat()的内容。#include #include #include #define MAX 1000int xxMAX,odd=0,even=0;double ave1=0.0,ave2=0.0,totfc=0.0;void WriteDat(void);int ReadDat(void)int i;FILE *fp;if(fp=fopen(IN.DAT,r)=NULL) return 1;/*编制函数ReadDat()的部分*/for(i=0;iMAX;i+)fscanf(fp,%d,&xxi);if(i+1)%10=0) fscanf(fp,n);/*/fclose(fp);return 0;void Compute(void) int i,yyMAX;for(i=0;iMAX;i+) yyi=0;for(i=0;iMAX;i+) if(xxi%2) yyodd+=xxi; ave1+=xxi; else even+; ave2+=xxi;if(odd=0) ave1=0;else ave1/=odd;if(even=0) ave2=0;else ave2/=even;for(i=0;iodd;i+) totfc+=(yyi-ave1)*(yyi-ave1)/odd;void main()int i;for(i=0;iMAX;i+)xxi=0;if(ReadDat() printf(数据文件IN.DAT不能打开!007n); return;Compute();printf(ODD=%dnAVE1=%fnAVE2=%fnTOTFC=%fn,odd,ave1,ave2,totfc);WriteDat();void WriteDat(void)FILE *fp;int i;fp=fopen(OUT.DAT,w);fprintf(fp,%dn%fn%fn%fn,odd,ave1,ave2,totfc);fclose(fp);*题目84(选票问题)现有一个10个人100行的选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推 :内容均为字符0和1,1表示此人被选中,0表示此人未被选中,若一张选票人数大于5个人时被认为无效的选票。给定函数ReadDat()的功能是把选票数据读入到字符串数组xx中。请编制函数CountRs()来统计每个人的选票数并把得票数依次存入yy0到yy9中。把结果yy输出到文件OUT.DAT中。部分源程序存在文件prog1.c中。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。#include char xx10011;int yy10;int ReadDat(void);void WriteDat(void);void CountRs(void) int i,j,count;for(i=0;i100;i+) count=0; for(j=0;j5) continue; for(j=0;j10;j+) if(xxij=1) yyj+; void main()int i;for(i=0;i10;i+)yyi=0;if(ReadDat()printf(选票数据文件IN.DAT不能打开!n007);return;CountRs();WriteDat();int ReadDat(void)FILE *fp;int i;if(fp=fopen(IN.DAT,r) = NULL) return 1;for(i=0;i100;i+) if(fgets(xxi,12,fp)=NULL)return 1; xxi10=0; fclose(fp);return 0;void WriteDat(void)FILE *fp;int i;fp=fopen(OUT.DAT,w);for(i=0;i10;i+) fprintf(fp,%dn,yyi); printf(第%d个人的选票数=%dn,i+1,yyi);fclose(fp);*题目85(整数各位数运算题)已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的个位数字上的值减去千位数字上的值再减去百位数字上的值最后减去十位数字上的值,如果得出的值大于等于零且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件prog1.c中。程序中已定义数组:a200,b200,已定义变量:cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。#include #define MAX 200int aMAX, bMAX, cnt = 0 ;void jsVal()int i,j,thou,hun,ten,data;for(i=0;i=0&ai%2=0) bcnt+=ai;for(i=0;icnt-1;i+) for(j=i+1;jbj) thou=bi;bi=bj;bj=thou;void readDat()int i ;FILE *fp ;fp = fopen(in.dat, r) ;for(i = 0 ; i MAX ; i+) fscanf(fp, %d, &ai) ;fclose(fp) ;void main()int i ;readDat() ;jsVal() ;printf(满足条件的数=%dn, cnt) ;for(i = 0 ; i cnt ; i+) printf(%d , bi) ;printf(n) ;writeDat() ;writeDat()FILE *fp ;int i ;fp = fopen(out.dat, w) ;fprintf(fp, %dn, cnt) ;for(i = 0 ; i cd,ab必须是偶数且能被5整除,cd必须是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件prog1.c中。程序中已定义数组:a200,b200,已定义变量:cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。#include #define MAX 200int aMAX, bMAX, cnt = 0 ;void jsVal()int i,j,thou,hun,ten,data,ab,cd;for(i=0;i0&(ab%2!=1&ab%5=0)&cd%2=1&ab=10&cd=10) bcnt=ai;cnt+; for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(bibj) data=bi;bi=bj;bj=data;void readDat()int i ;FILE *fp ;fp = fopen(in.dat, r) ;for(i = 0 ; i MAX ; i+) fscanf(fp, %d, &ai) ;fclose(fp) ;void main()int i ;readDat() ;jsVal() ;printf(满足条件的数=%dn, cnt) ;for(i = 0 ; i cnt ; i+) printf(%d , bi) ;printf(n) ;writeDat() ;writeDat()FILE *fp ;int i ;fp = fopen(out.dat, w) ;fprintf(fp, %dn, cnt) ;for(i = 0 ; i cnt ; i+) fprintf(fp, %dn, bi) ;fclose(fp) ;*题目87(整数各位运算统计题)已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加个位数等于百位数上的数加十位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数把结果输出到out.dat文件。 例如:6712,6+2=7+1,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。8129,8+91+2,则该数不满足条件计算平均值pjz2。部分源程序存在文件prog1.c中。程序中已定义数组:a300,已定义变量:cnt,pjz1,pjz2。请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。#include int a300,cnt=0;double pjz1=0.0,pjz2=0.0;jsValue() int i,gw,sw,bw,qw,cnt2=0;for(i=0;i300;i+)gw=ai%10; sw=ai/10%10; bw=ai/100%10; qw=ai/1000; if(qw+gw)=(sw+bw) cnt+;pjz1+=ai; else cnt2+;pjz2+=ai; if(cnt=0) pjz1=0;else pjz1/=cnt;if(cnt2=0) pjz2=0;else pjz2/=cnt2;main()int i;readDat();jsValue();writeDat();printf(cnt=%dn满足条件的平均值pzjl=%7.2fn不满足条件的平均值pzj2=%7.2fn,cnt,pjz1,pjz2);readDat()FILE *fp;int i;fp=fopen(in.dat,r);for(i=0;i300;i+)fscanf(fp,%d,&ai);fclose(fp);writeDat()FILE *fp;int i;fp=fopen(out.dat,w);fprintf(fp,%dn%7.2fn%7.2fn,cnt,pjz1,pjz2);fclose(fp);*题目88(字符串排序题)函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数SortCharA(),其函数的功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT1.DAT中。例:原文:dAe,BfC. CCbbAA结果:,.ABCdef AACCbb原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。部分源程序存在文件prog1.c中。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数writeDat()的内容。#include #include #include char xx5080;int maxline=0;/*文章的总行数*/int ReadDat(void);void WriteDat(void);void SortCharA(void)int i,j,k,strl;char ch;for(i=0;imaxline;i+)strl=strlen(xxi); for(j=0;jstrl-1;j+) for(k=j+1;kxxik) ch=xxij; xxij=xxik; xxik=ch;void main()clrscr();if(ReadDat()printf(数据文件IN.DAT不能打开!n007);return;SortCharA();WriteDat();int ReadDat(void)FILE *fp;int i=0;char *p;if(fp=fopen(IN.DAT,r)=NULL) return 1;while(fgets(xxi,80,fp)!=NULL) p=strchr(xxi,n); if(p)*p=0; i+;maxline=i;fclose(fp);return 0;void WriteDat(void)FILE *fp;int i;clrscr();fp=fopen(OUT1.DAT,w);for(i=0;imaxline;i+) printf(%sn,xxi); fprintf(fp,%sn,xxi);fclose(fp);题目89(整数统计排序题)已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的千位数字上的值加上个位数字上的值恰好等于百位数字上的值加上十位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。注意:部分源程序存在文件prog1.c中。程序中已定义数组:a200,b200,已定义变量:cnt请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。#include #define MAX 200int aMAX, bMAX, cnt = 0 ;void jsVal()int i,j,gw,sw,bw,qw;for(i=0;iMAX;i+)gw=ai%10; sw=ai/10%10; bw=ai/100%10; qw=ai/1000; if(qw+gw)=(sw+bw)&ai%2) bcnt+=ai;for(i=0;icnt-1;i+) for(j=i+1;jbj) qw=bi; bi=bj; bj=qw;void readDat()int i ;FILE *fp ;fp = fopen(in.dat, r) ;for(i = 0 ; i MAX ; i+) fscanf(fp, %d, &ai) ;fclose(fp) ;void main()int i ;readDat() ;jsVal() ;printf(满足条件的数=%dn, cnt) ;for(i = 0 ; i cnt ; i+) printf(%d , bi) ;printf(n) ;writeDat() ;writeDat()FILE *fp ;int i ;fp = fopen(out.dat, w) ;fprintf(fp, %dn, cnt) ;for(i = 0 ; i cnt ; i+) fpr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024中国电信山东济南分公司校园招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2024中国林业集团限公司招聘5人易考易错模拟试题(共500题)试卷后附参考答案
- 2024中国大唐集团江西分公司所属企业招聘12人易考易错模拟试题(共500题)试卷后附参考答案
- 2024中国人民财产保险股份限公司甘肃分公司春季招聘52人易考易错模拟试题(共500题)试卷后附参考答案
- 2024中储粮油脂限公司招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2024上海移动春季校园招聘205人易考易错模拟试题(共500题)试卷后附参考答案
- 2024年度融资借款合同标的和借款条件
- 2024年度店铺客户服务与售后服务合同
- 《产业结构升级》课件
- 2024年度技术开发与转让合同书
- 2024新外研版七年级上册课本重点知识点及范文归纳
- 2023年江苏常州中考满分作文《方寸之间天地大》4
- 部编二年级上册道德与法治全册教案(共16课)
- 2024年长江产业投资集团限公司招聘【150人】公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
- 初中数学说题比赛1
- 中级会计课程设计
- 小学语文部编版六年级上册词语表《看拼音写词语》专项练习(附参考答案)
- 2024届高考语文复习修改病句专项训练(含答案)
- 地下车库顶板行车专项及方案
- 光的折射说课
- (完整版)储罐区防静电对策措施
评论
0/150
提交评论