首页
试卷库
试题库
当前位置:
X题卡
>
所有题目
>
题目详情
中断的中断源分为5种,下述______不属于这5种中断源。
查看本题答案
包含此试题的试卷
计算机等级考试《简单单选》真题及答案
点击查看
你可能感兴趣的试题
引起中断的中断源统称分为五种它们是I/O中断时钟中断故障中断程序中断和
存取中断
溢出中断
校验中断
数据信道中断
引起中断的中断源分为五种下述______不属于这五种中断源
I/O中断
溢出中断
时钟中断
程序中断
引起中断的中断源有5种分别为I/O中断数据通道中断时钟中断程序中断和
存取越界中断
故障中断
奇偶校验错中断
数据溢出中断
引起中断的中断源统称分为5种它们是I/O中断时钟中断故障中断程序中断和
存取中断
溢出中断
校验中断
数据信道中断
在PC中引起中断的中断源通常分为5种类型分别是I/O中断时钟中断故障中断和程序中断
硬中断
软中断
奇偶检验错中断
数据通道中断
引起中断的中断源分为五种下述哪种不属于这五种中断源
数据通道中断
溢出中断
时钟中断
软件中断
热门试题
更多
下列程序的功能是利用以下所示的简单迭代方法求方程cosX-X=0的一个实根Xn+1=cosXn迭代步骤如下1取X1初值为0.02X0=X1把X1的值赋给X03X1=cosX0求出一个新的X14若X0-X1的绝对值小于0.000001执行步骤5否则执行步骤25所求X1就是方程cosX-X=0的一个实根作为函数值返回请编写函数countValue实现程序的要求最后调用函数writeDat把结果输出到OUT.DAT文件中注意部分源程序已给出请勿改动主函数main和输出数据函数writeDat的内容#include<conio.h>#include<math.h>#include<stdio.h>floatcountValuevoidwriteDatFILE*wf;wf=fopenOUT.DATw;fprintfwf%f/ncountValue;fclosewf;mainprintf实根=%f/ncountValue;printf%f/ncoscountValue-countValue;writeDat;
下列程序的功能是寻找并输出11~999之间的数m它满足mm2和m3均为回文数所谓回文数是指各位数字左右对称的整数如12167694249等满足上述条件的数如m=11m2=121m3=1331皆为回文数请编写函数intjsValuelongm实现此功能如果是回文数则函数返回1反之则返回0最后把结果输出到out.dat文件中注意部分源程序已给出请勿改动主函数main的内容#include<stdio.h>#include<stdlib.h>#include<string.h>intjsValuelongnmainlongm;FILE*out;out=fopenout.datw;form=11;m<1000;m++ifjsValuem&&jsValuem*m&&jsValuem*m*mprintfm=%4ldm*m=%6ldm*m*m=%8ld/nmm*mm*m*m;fprintfoutm=%4ldm*m=%6ldm*m*m=%8ld/nmm*mm*m*m;fcloseout;
已知在IN.DAT文件中存有100个产品销售记录每个产品销售记录由产品代码dm字符型4位产品名称mc字符型10位单价dj整型数量sl整型金额je长整型五部分组成其中金额=单价×数量函数ReadDat是读取这100个销售记录并存入结构数组sell中请编写函数SortDat其功能是按金额从大到小进行排列若金额相同则按产品代码从大到小进行排列最终排列结果仍存入结构数组sell中最后调用函数WriteDat把结果输出到OUT.DAT文件中注意部分程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineMAX100typedefstructchardm[5];/*产品代码*/charmc[11];/*产品名称*/intdj;/*单价*/intsl;/*数量*/longje;/*金额*/PRO;PROSell[MAX];voidReadDat;voidWriteDat;voidSortDatvoidmainmemsetsell0sizeofsell*ReadDat*SortDat;WriteDat*voidReadDatFILE*fp*charstr[80]ch[11];inti;fp=fopenIN.DATr*fori=0;i<MAX;i++fgetsstr80fp*memcpysell[i].dmstr4;memcpysell[i].mcstr+410;memcpychstr+144*ch[4]=0;sell[i].dj=atoich;memcpychstr+185*ch[5]=0;sell[i].sl=atoich;sell[i].je=longsell[i].dj*sell[i].sl;fclosefp;voidWriteDatvoidFILE*fp;inti;fp=fopenOUT.DATw;fori=0;i<MAX;i++printf%s%S%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fprintffp%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djseii[i].slsell[i].je;fclosefp;
已知数据文件IN.DAT中存有200个四位数并已调用读函数readDat把这些数存入数组a中请编写函数jsVal其功能是若一个四位数的干位上的数字值小于等于百位上的数字值百位上的数字值小于等于十位上的数字值以及十位上的数字值小于等于个位上的数字值并且原四位数是偶数则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中注意部分程序已经给出程序中已定义数组a[200]b[200]已定义变量cnt请勿改动数据文件IN.DAT中的任何数据及主函数main读函数readDat和写函数writeDat的内容#include<Stdio.h>#defineMAX200inta[MAX]b[MAX]cnt=0;voidjsValvoidreadDatinti;FILE*fp;fp=fopenIN.DATr;fori=0;i<MAX;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenOUT.DATw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;voidmaininti;readDat;jsVal;printf满足条件的数=%d/ncnt;fori=0;i<cnt;i++printf%db[i];printf/n;writeDat;
已知数据文件IN.DAT中存有200个四位数并已调用读函数readDat把这些数存入数组a中请编写函数jsVal其功能是把千位数字和十位数字重新组成一个新的两位数新两位数的十位数字是原四位数的千位数字新两位数的个位数字是原四位数的十位数字以及把个位数字和百位数字组成另一个新的两位数新两位数的十位数字是原四位数的个位数字新两位数的个位数字是原四位数的百位数字如果新组成的两个两位数均是素数且新数的十位数字均不为零则将满足此条件的四位数按从大到小的顺序存入数组b中并计算满足上述条件的四位数的个数cnt最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中注意部分源程序已经给出程序中已定义数组a[200]b[200]已定义变量cnt请勿改动数据文件IN.DAT中的任何数据及主函数main读函数readDat和写函数writeDat的内容#include<stdio.h>#defineMAX200inta[MAX]b[MAX]cnt=0;intisprimeintminti;fori=2;i<=m/2;i++ifm%i==0return0;return1;voidjsValvoidreadDatinti;FILE*fp;fp=fopenIN.DATr;fori=0;i<MAX;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenOUT.DATw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%dknb[i];fclosefp;voidmaininti;readDat;jsVal;printf满足条件的数=%d/ncnt;fori=0;i<cnt;i++printf%db[i];printf/n;writeDat;
已知在IN.DAT文件中存有100个产品销售记录每个产品销售记录由产品代码dm字符型4位产品名称mc字符型10位单价dj整型数量sl整型金额je长整型五部分组成其中金额=单价×数量函数ReadDat是读取这100个销售记录并存入结构数组sell中请编写函数SortDat其功能是按金额从小到大进行排列若金额相同则按产品代码从大到小进行排列最终排列结果仍存入结构数组sell中最后调用函数WriteDat把结果输出到OUT.DAT文件中注意部分源程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineMAX100typedefstructchardm[5];/*产品代码*/charmc[11];/*产品名称*/intdj;/*单价*/intsl;/*数量*/longje;/*金额*/PRO;PROsell[MAX];voidReadDat;voidWriteDat;voidSertDatvoidmainmemsetsell0sizeofsell;ReadDat;SortDat;WriteDat;voidReadDatFILE*fp;charstr[80]ch[11];inti;fp=fopenIN.DATr;fori=0;i<100;i++fgetsstr80fp;memcpysell[i].dmStr4;memcpysell[i].mcstr+410;memcpychstr+144;ch[4]=0;sell[i].dj=atoich;memcpychstr+185;ch[5]=0;sell[i].sl=atoich;sell[i].je=longsell[i].dj*sell[i].sl;fclosefp;voidWriteDatvoidFILE*fp;inti;fp=fopenOUT.DATw;fori=0;i<100;i++printf%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fprintffp%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fclosefp;
已知数据文件IN.DAT中存有200个四位数并已调用读函数readDat把这些数存入数组a中请编写函数jsVal其功能是把千位数字和十位数字重新组成一个新的十位数ab新十位数的十位数字是原四位数的千位数字新十位数的个位数字是原四位数的十位数字以及把个位数字和百位数字组成另一个新的十位数cd新十位数的十位数字是原四位数的个位数字新十位数的个位数字是原四位数的百位数字如果ab<cdab必须是奇数且不能被5整除cd必须是偶数同时两个新数的十位数字均不为零则将满足此条件的四位数按从大到小的顺序存入数组b中并计算满足上述条件的四位数的个数cnt最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中注意部分源程序已经给出程序中已定义数组a[200]b[200]已定义变量cnt请勿改动数据文件IN.DAT中的任何数据及主函数main读函数readDat和写函数writeDat的内容#include<stdio.h>#defineMAX200inta[MAX]b[MAX]cnt=0;voidjsValvoidreadDatinti;FILE*fp;fp=fopenIN.DATr;fori=0;i<MAX;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenOUT.DATw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;voidmaininti;readDat;jsVal;printf满足条件的数=%d/ncnt;fori=0;i<cnt;i++printf%db[i];printf/n;writeDat;
函数ReadDat的功能是实现从IN.DAT文件中读取一篇英文文章并存入字符串数组xx中请编写函数ChA其功能是以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值得到第一个新字符第二个字符的ASCII值加第三个字符的ASCII值得到第二个新字符依此类推一直处理到倒数第二个字符最后一个字符的ASCII值加原第一个字符的ASCII值得到最后一个新的字符得到的新字符分别存放在原字符串对应的位置上最后把已处理的字符串逆转后按行重新存入字符串数组xx中最后调用函数WriteDat把结果xx输出到OUT.DAT文件中原始数据文件存放的格式是每行的宽度均小于80个字符含标点符号和空格注意部分源程序已给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>charxx[50][80];intmaxline=0;/*文章的总行数*/intReadDatvoid;voidWriteDatvoid;voidChAvoidvoidmainifReadDatprintf数据文件IN.DAT不能打开!/n/007;return;ChA;WriteDat;intReadDatvoidFILE*fp;inti=0;char*p;iffp=fopenIN.DATr==NULLreturn1;whilefgetsxx[i]80fp!=NULLP=strchrxx[i]’/n’;ifp*p=0i++;maxline=i;fclosefp;return0;voidWriteDatvoidFILE*fp;inti;fp=fopenOUT.DATw;fori=0;i<maxline;i++printf%s/nxx[i];fprintffp%s/nxx[i];fclosefp;
已知在IN.DAT文件中存有100个产品销售记录每个产品销售记录由产品代码dm字符型4位产品名称mc字符型10位单价dj整型数量sl整型金额je长整型五部分组成其中金额=单价×数量计算得出函数ReadDat读取这100个销售记录并存入结构数组sell中请编写函数SortDat其功能要求按产品代码从小到大进行排列若产品代码相等则按金额从大到小进行排列最终排列结果仍存入结构数组sell中最后调用函数WriteDat把结果输出到OUT.DAT文件中注意部分程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineMAX100typedefstructchardm[5];/*产品代码*/charmc[11];/*产品名称*/intdj;/*单价*/intsl;/*数量*/longje;/*金额*/PRO;PROsell[MAX];voidReadDat;voidWriteDat;voidSortDatvoidmainmemsetsell0sizeofsell;ReadDat;SortDat;WriteDat;voidReadDatFILE*fp;charStr[80]ch[11];inti;fp=fopenIN.DATr;fori=0;i<100;i++fgetsstr80fp;memcpysell[i].dmstr4;memcpysell[i].mcstr+410;memcpychstr+144;ch[4]=0;sell[i].dj=atoich;memcpychstr+185;ch[5]=0;sell[i].sl=atoich;sell[i].je=longsell[i].dj*sell[i].sl;fclosefp;voidWriteDatFIL*fp;inti;fp=fopenOUT.DATW;fori=0;i<100;i++printf%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fprintffp%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fclosefp;
已知数据文件in.dat中存有300个四位数并已调用读函数ReadDat把这些数存入数组a中请编写函数jsValue其功能是求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数cnt再把所有满足此条件的四位数依次存入数组b中然后对数组b的四位数按从小到大的顺序进行排序最后调用写函数writeDat把结果输出到out.dat文件中例如91239-1-2-3>0则该数满足条件存入数组b中且个数cnt=cnt+198129-8-1-2<0则该数不满足条件忽略注意部分程序已经给出程序中已定义数组a[300]b[300]已定义变量cnt请勿改动主函数main读函数ReadDat和写函数witeDat的内容#include<stdio.h>inta[300]b[300]cnt=0;voidjsValuevoidReadDatFILE*fp;inti;fp=fopenin.datr;fori=0;i<300;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenout.datw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;maininti;ReadDat;jsValue;writeDat;printfcnt=%d/ncnt;fori=0;i<cnt;i++printfb[%d]=%d/nib[i];
已知数据文件IN.DAT中存有200个四位数并已调用读函数readDat把这些数存入数组a中请编写函数jsVal其功能是把一个四位数的千位数字上的值减去百位数字上的值再减去十位数字上的值最后减去个位数字上的值如果得出的值大于等于零且原四位数是奇数则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中注意部分源程序已经给出程序中已定义数组a[200]b[200]已定义变量cnt请勿改动数据文件IN.DAT中的任何数据及主函数main读函数readDat和写函数writeDat的内容#include<stdio.h>#defineMAX200inta[MAX]b[MAX]cnt=0;voidjsValvoidreadDatinti;FILE*fp;fp=fopenIN.DATr;fori=0;i<MAX;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenOUT.DATw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;voidmaininti;readDat;jsVal;printf满足条件的数=%d/ncnt;fori=0;i<cnt;i++printf%db[i];printf/n;writeDat;
已知数据文件in.dat中存有300个四位数并已调用读函数ReadDat把这些数存入数组a中请编写函数jsValue其功能是求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数cnt再求出所有满足此条件的四位数平均值pjz1以及不满足此条件的四位数平均值pjz2最后调用写函数writeDat把结果输出到out.dat文件中例如91239-1-2-3>0则该数满足条件计算平均值pjz1且个数cnt=cnt+198129-8-1-2<0则该数不满足条件计算平均值pjz2注意部分源程序已经给出程序中已定义数组a[300]已定义变量cntpjz1pjz2请勿改动主函数main读函数ReadDat和写函数writeDat的内容#include<stdio.h>inta[300]cnt=0;doublepjz1=0.0pjz2=0.0;voidjsValuevoidReadDatFILE*fp;inti;fp=fopenin.datr;fori=0;i<300;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;fp=fopenout.datw;fprintffp%d/n%7.2f/n%7.2f/ncntpjz1pjz2;fclosefp;mainReadDat;jsValue;writeDat;printfcnt=%d/n满足条件的平均值pzj1=%7.2f/n不满足条件的平均值pzj2=%7.2f/ncntpjz1pjz2;
下列程序的功能是选出5000以下符合条件的自然数条件是千位数字与百位数字之和等于十位数字与个位数字之和且于位数字与百位数字之和等于个位数字与千位数字之差的10倍计算并输出这些四位自然数的个数cnt以及这些数的和sum请编写函数countValue实现程序的要求最后调用函数writeDat把结果cnt和sum输出到OUT.DAT文件中注意部分源程序已经给出请勿改动主函数main和输出数据函数writeDat的内容#include<stdio.h>intcntsum;voidcountValuevoidwriteDatFILE*fp;fp=fopenOUT.DATw;fprintffp%d/n%d/ncntsum;fclosefp;voidmaincnt=sum=0;countValue;printf满足条件的自然数的个数=%d/ncnt;printf满足条件的自然数的个数之和=%d/nsum;writeDat;
已知在IN.DAT文件中存有N个N<200实数函数ReadDat读取这N个实数并存入数组xx中请编写函数CalValue其功能是1求出这N个实数的平均值aver2分别求出这N个实数的整数部分之和sumint以及小数部分之和sumdec最后调用函数WriteDat把所求的结果输出到OUT.DAT文件中注意部分源程序已给出请勿改动主函数main读数据函数ReadDat和输出数据函数WnteDat的内容#include<stdio.h>#include<conio.h>#defineMAXNUM200floatxx[MAXNUM];doubleaver=0.0;longsumint=0;doublesumdec=0.0;intReadDatvoid;voidWriteDatvoid;voidCalValuevoidvoidmaininti;fori=0;i<MAXNUM;i++xx[i]=0;ifReadDatprintf数据文件IN.DAT不能打开!/007/n;return;CalValue;printf平均值=%.21f/naver;printf整数部分之和=%ld/nsumint;printf小数部分之和=%.2lf/nsumdec;WriteDat;intReadDatvoidFILE*fp;inti=0;iffp=fopenIN.DATr==NULLreturn1;while!feoffpfseanffp%f&xx[i++];fclosefp;return0;voidWriteDatvoidFILE*fp;fp=fopenOUT.DATw;fprintffp%.21f/n%ld/n%.21f/naversumintsumdec;fclosefp;
已知数据文件in.dat中存有300个四位数并已调用读函数ReadDat把这些数存入数组a中请编写函数jsValue其功能是求出所有这些四位数是素数的个数cnt再把所有满足此条件的四位数依次存入数组b中然后对数组b的四位数按从小到大的顺序进行排序最后调用写函数writeDat把结果输出到out.dat文件中例如5591是素数则该数满足条件存入数组b中且个数cnt=cnt+19812是非素数则该数不满足条件忽略注意部分源程序已经给出程序中已定义数组a[300]b[300]已定义变量cnt请勿改动主函数main读函数ReadDat和写函数writeDat的内容#include<stdio.h>inta[300]b[300]cnt=0;intisPintminti;fori=2;i<m;i++ifm%i==0return0;return1;voidjsValuevoidReadDatFILE*fp;inti;fp=fopenin.datr;fori=0;i<300;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenout.datw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;maininti;ReadDat;jsValue;writeDat;printfcnt=%d/ncnt;fori=0;i<cnt;i++printfb[%d]=%dknib[i];
已知数据文件in.dat中存有200个四位数并已调用读函数readDat把这些数存入数组a中请编写函数jsVal其功能是依次从数组a中取出一个四位数如果该四位数连续大于该四位数以前的五个数且该数是偶数该四位数以前不满五个数则不统计则统计出满足此条件的个数cnt并把这些四位数按从大到小的顺序存入数组b中最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到out.dat文件中注意部分源程序已经给出程序中已定义数组a[200]b[200]已定义变量cnt请勿改动数据文件in.dat中的任何数据及主函数main读函数readDat和写函数writeDat的内容#include<stdio.h>#defineMAX200inta[MAx]b[MAX]cnt=0;voidjsValvoidreadDatinti;FILE*fp;fp=fopenin.datr;fori=0;i<MAX;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenout.datw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;voidmaininti;readDat;jsVal;printf满足条件的数=%d/ncnt;fori=0;i<cnt;i++printf%db[i];printf/n;writeDat;
函数ReadDat实现从in.dat文件中读取20行数据并存放到字符串数组xx中每行字符串长度均小于80请编写函数jsSort其函数的功能是以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序排序后的结果仍按行重新存入字符串数组xx中最后调用函数WriteDat把结果xx输出到out.dat文件中例如位置01234567源字符串hgfedcba则处理后字符串hafcdebg注意部分源程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>charxx[20][80];voidjsSortvoidReadDatFILE*in;inti=0;char*p;in=fopenin.datr;whilei<20&&fgetsxx[i]80in!=NULLp=strchrxx[i]’/n’;ifp*p=0;i++;fclosein;voidWriteDatFILE*out;inti;out=fopenout.datw;fori=0;i<20;i++printf%s/nxx[i];fprintfout%s/nxx[i];fcloseout;voidmainReadDat;jsSort;WriteDat;
已知在IN.DAT文件中存有100个产品销售记录每个产品销售记录由产品代码dm字符型4位产品名称mc字符型10位单价dj整型数量sl整型金额je长整型五部分组成其中金额=单价×数量函数ReadDat是读取这100个销售记录并存入结构数组sell中请编写函数SortDat其功能是按金额从大到小进行排列若金额相等则按产品代码从小到大进行排列最终排列结果仍存入结构数组sell中最后调用函数WriteDat把结果输出到OUT.DAT文件中注意部分源程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>#include<stdlib.h>#defineMAX100typedefstructchardm[5];/*产品代码*/charmc[11];/*产品名称*/intdj;/*单价*/intsl;/*数量*/longje;/*金额*/PRO;PROsell[MAX];voidReadDat;voidWriteDat;voidSortDatvoidmainmemsetSell0sizeofsell;ReadDat;SortDat;WriteDat;voidReadDatFILE*fp;charstr[80]ch[11];inti;fp=fopenIN.DATr;fori=0;i<100;i++fgetsstr80fp;memcpysell[i].dmstr4;memcpysell[i].mcstr+410;memcpychstr+144;ch[4]=0;sell[i].dj=atoich;memcpychstr+185;ch[5]=0;sell[i].sl=atoich;sell[i].je=longsell[i].dj*sell[i].sl;fclosefp;voidWriteDatFILE*fp;inti;fp=fopenOUT.DATw;fori=0;i<100;i++printf%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fprintffp%s%s%4d%5d%5d/nsell[i].dmsell[i].mcsell[i].djsell[i].slsell[i].je;fclosefp;
编写函数findStr该函数统计一个长度为2的子字符串在另一个字符串中出现的次数例如假定输入的字符串为asdasasdfgasdaszx67asdmklo子字符串为as函数返回值为6函数ReadWrite实现从in.dat文件中读取两个字符串并调用函数findStr最后把结果输出到out.dat文件中注意部分程序已经给出请勿改动主函数main和其他函数中的任何内容仅在函数findStr的花括号中填入你编写的若干语句#include<Stdio.h>#include<string.h>#include<conio.h>intfindStrchar*Strchar*substrvoidReadWritecharstr[81]substr[10]ch;intnleni=0;FILE*rf*wf;rf=fopenin.datr;wf=fopenout.datw;whilei<25fgetsStr81rf;fgetssubstr10rf;len=Strlensubstr-1;ch=substr[len];ifch==’/n’||ch==0xlasubstr[len]=0;n=findStrStrsubstr;fprintfwf%d/nn;i++;fcloserf;fclosewf;maincharStr[81]substr[10];intn;printf输入原字符串;getsstr;printf输入子字符串;getssubstr;putsstr;putssubstr;n=findStrStrsubstr;printfn=%d/nn;ReadWrite;
已知数据文件in.dat中存有300个四位数并已调用读函数ReadDat把这些数存入数组a中请编写函数jsValue其功能是求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数cnt再把所有满足此条件的四位数依次存入数组b中然后对数组b的四位数按从小到大的顺序进行排序最后调用写函数wnteDat把结果输出到out.dat文件例如91239-1-2-3>0则该数满足条件存入数组b中且个数cnt=cnt+198129-8-1-2<0则该数不满足条件忽略注意部分源程序已经给出程序中已定义数组a[3001b[300]已定义变量cnt请勿改动主函数main读函数ReadDat和写函数wnteDat的内容#include<stdio.h>inta[300]b[300]cnt=0;voidjsValuevoidReadDatFILE*fp;inti;fp=fopenin.datr;fori=0;i<300;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenout.datw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;meininti;ReadDat;jsValue;writeDat;printfcnt=%d/ncnt;fori=0;i<cnt;i++printfb[%d]=%d/nib[i];
函数ReadDat实现从IN.DAT文件中读取一篇英文文章并存入字符串数组xx中请编写函数encryptChar按给定的替代关系对数组xx中的所有字符进行替代后仍存入数组xx的对应的位置上最后调用函数WriteDat把结果xx输出到OUT.DAT文件中替代关系fp=p*11mod256p是数组中某一个字符的ASCII值fp是计算后新字符的ASCII值如果原字符是大写字母或计算后fp值小于等于32则该字符不变否则将fp所对应的字符进行替代原始数据文件存放的格式是每行的宽度均小于80个字符注意部分程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>#include<ctype.h>unsignedcharxx[50][80];intmaxline=0;/*文章的总行数*/intReadDatvoid;voidWriteDatvoid;voidencryptCharvoidmainifReadDatprintf数据文件IN.DAT不能打开!/n/007;return;encryptChar;WriteDat;intReadDatvoidFILE*fp;inti=0;unsignedchar*p;iffp=fopenIN.DATr==NULLreturn1;whilefgetsxx[i]80fp!=NULLp=strchrxx[i]’/n’;ifp*p=0;i++;maxline=1;fclosefp;return0;voidWriteDatvoidFILE*fp;inti;fp=fopenOUT.DATw;fori=0;i<maxline;i++printf%s/nxx[i];fprintffp%s/nxx[i];fclosefp;
现有一个10个人100行的选票数据文件IN.DAT其数据存放的格式是每条记录的长度均为10位第一位表示第一个人的选中情况第二位表示第二个人的选中情况依此类推内容均为字符0和11表示此人被选中0表示此人未被选中全选或全不选均为无效的选票给定函数ReadDat的功能是把选票数据读入字符串数组xx中请编写函数CouIltRs来统计每个人的选票数并把得票数依次存入yy[0]倒yy[9]中把结果yy输出到OUT.DAT文件中注意部分程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>charxx[100][11];intyy[10];intReadDatvoid;voidWriteDatvoid;voidCountRsvoidvoidmaininti;fori=0;i<10;i++yy[i]=0;ifReadDatprintf选票数据文件IN.DAT不能打开!/n/007;return;CountRs;WriteDat;intReadDatvoidFILE*fp;inti;iffp=fopenIN.DATr==NULLreturn1;fori=0;i<100;i++iffgetsxx[i]12fp==NULLreturn1;xx[i][10]=’/0’;fclosefp;return0;voidWriteDatvoidFILE*fp;inti;fp=fopenOUT.DATw;fori=0;i<10;i++fprintffp%d/nyy[i];printf第%d个人的选票数=%d/ni+1yy[i];fclosefp;
已知在IN.DAT文件中存有若干个<200四位数字的正整数函数ReadDat读取这若干个正整数并存入数组xx中请编写函数CalValue其功能是1求出文件中的正整数个数totNum2求这些数中的各位数字之和是奇数的个数totCnt以及满足此条件的这些数的算术平均值totPjz最后调用函数writeDat把所求的数的结果输出到OUTDAT文件中注意部分源程序已经给出请勿改动主函数main读函数ReadDat和写函数writeDat的内容#include<stdio.h>#include<conio.h>#defineMAXNUM200intxx[MAXNUM];inttotNum=0;/*IN.DAT文件中的正整数个数*/inttotCnt=0;/*符合条件的正整数个数*/doubletotPjz=0.0;/*平均值*/intReadDatvoid;voidwriteDatvoid;voidCalValuevoidvoidmaininti;fori=0;i<MAXNUM;i++xx[i]=0;ifReadDatprintf数据文件IN.DAT不能打开!/007/n;return;CalValue;printfIN.DAT文件中的正整数个数=%d个/ntotNum;printf符合条件的正整数个数=%d个/ntotCnt;printf平均值=%.2f/ntotPjz;writeDat;intReadDatvoidFILE*fp;inti=0;iffp=fopenIN.DATr==NULLreturn1;while!feoffpfscanffp%d&xx[i++];fclosefp;return0;voidwriteDatvoidFILE*fp;fp=fopenOUT.DATw;fprintffp%d/n%d/n%6.2f/ntotNumtotCnttotPjz;fclosefp;
某级数的前两项A1=1A2=1以后各项具有如下关系
下列程序的功能是把s字符串中的所有字符左移一个位置字符串中的第一个字符移到最后请编写函数chgchar*s实现程序要求最后调用函数readwriteDAT从in.dat文件中读取50组数据分别得出结果且把结果输出到out.out文件中例如s字符串中原有内容为Mn.123xyZ调用该函数后结果为n.123xyZM注意部分源程序已经给出请勿改动主函数main和输出数据函数readwriteDAT的内容#include<string.h>#include<stdio.h>#defineN81voidreadwriteDAT;voidchgchar*smainchara[N];printfEnterastring;getsa;printfTheoriginalstringis;putsa;chga;printfThestringaftermodified;putsa;readwriteDAT;voidreadwriteDATinti;chara[N];FILE*rf*wf;rf=fopenin.datr;wf=fopenout.datw;fori=0;i<50;i++fscanfrf%sa;chga;fprintfwf%s/na;fcloserf;fclosewf;
设有n个人围坐一圈并按顺时针方向从1到n编号从第s个人开始进行1到m的报数报数到第m个人此人出圈再从他的下一个人重新开始1到m的报数如此进行下去直到所有的人都出圈为止现要求按出圈次序每10人一组给出这n个人的顺序表请编写函数Josegh实现此功能并调用函数WriteDat把结果p输出到OUT.DAT文件中设n=100s=1m=101将1到n个人的序号存入一维数组p中2若第i个人报数后出圈则将p[i]置于数组的倒数第i个位置上而原来第i+1个至倒数第i个元素依次向前移动一个位置3重复第2步直至圈中只剩下p[1]为止注意部分源程序已经给出请勿改动主函数main和输出数据函数WriteDat的内容#include<stdio.h>#defineN100#defineS1#defineM10intp[100]nsm;voidWriteDatvoid;voidJoseghvoidvoidmainm=M;n=N;s=S;Josegh;WriteDat;voidWriteDatvoidinti;FILE*fp;fp=fopenOUT.DATw;fori=N-1;i>=0;i--printf%4dp[i];fprintffp%4dp[i];ifi%10==0printf/n;fprintffp/n;fclosefp;
函数ReadDat实现从in.dat文件中读取20行数据并存放到字符串数组xx中每行字符串长度均小于80请编写函数jsSort其函数的功能是以行为单位对字符串按给定的条件进行排序排序后的结果仍按行重新存入字符串数组xx中最后调用函数WriteDat把结果xx输出到out.dat文件中条件从字符串中间一分为二左边部分按字符的ASCII值降序排序右边部分按字符的ASCII值升序排序如果原字符串长度为奇数则最中间的字符不参加排序字符仍放在原位置上例如位置012345678源字符串abCdhgfe123498765则处理后字符串dCbaefgh432195678注意部分源程序已经给出请勿改动主函数main读数据函数ReadDat和输出数据函数WriteDat的内容#include<stdio.h>#include<string.h>#include<conio.h>charxx[20][80];voidjsSortvoidReadDatFILE*in;inti=0;char*p;in=fopenin.datr;whilei<20&&fgetsxx[i]80in!=NULLp=strchrxx[i]’/n’;ifp*p=0;i++;fclosein;voidWriteDatFILE*out;inti;out=fopenout.datw;fori=0;i<20;i++printf%s/nxx[i];fprintfout%s/nxx[i];fcloseout;voidmainReadDat;jsSort;WriteDat;
已知数据文件in.dat中存有200个四位数并已调用读函数readDat把这些数存入数组a中请编写函数jsVal其功能是把干位数字和十位数字重新组成一个新的十位数ab新十位数的十位数字是原四位数的千位数字新十位数的个位数字是原四位数的十位数字以及把个位数字和百位数字组成另一个新的十位数cd新十位数的十位数字是原四位数的个位数字新十位数的个位数字是原四位数的百位数字如果新组成的两个十位数ab-cd≥10且ab-cd≤20且两个数均是偶数同时两个新数的十位数字均不为零则将满足此条件的四位数按从大到小的顺序存入数组b中并计算满足上述条件的四位数的个数cnt最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到out.dat文件中注意部分程序已经给出程序中已定义数组a[200]b[200]已定义变量cnt请勿改动数据文件in.dat中的任何数据及主函数main读函数readDat和写函数writeDat的内容#include<stdio.h>#defineMAX200inta[MAX]b[MAX]cnt=0;voidjsValvoidreadDatinti;FILE*fp;fp=fopenin.datr;fori=0;i<MAX;i++fscanffp%d&a[i];fclosefp;voidwriteDatFILE*fp;inti;fp=fopenout.datw;fprintffp%d/ncnt;fori=0;i<cnt;i++fprintffp%d/nb[i];fclosefp;voidmaininti;readDat;jsVal;printf满足条件的数=%d/ncnt;fori=0;i<cnt;i++printf%db[i];printf/n;writeDat;
请补充完整ReadDat函数实现从IN.DAT文件中读取1000个十进制整数到数组xx中请编写函数Compute分别计算出xx中数奇的个数odd偶数的个数even奇数的平均值ave1偶数的平均值ave2以及所有偶数的方差totfc的值最后调用函数WriteDat把结果输出到OUT.DAT文件中 计算方差的公式如下 其中N为偶数的个数xx[i]为偶数ave2为偶数的平均值 原始数据文件存放的格式是每行存放10个数每个数均大于0且小于等于2000并用逗号隔开 注意部分程序已经给出 请勿改动主函数main和输出数据函数WriteDat的内容 #include<stdio.h> #include<stdlib.h> #include<string.h> #defineMAX1000 intxx[MAX]odd=0even=0; doubleavel=0.0ave2=0.0totfc=0.0; voidWriteDatvoid; FILE*fp; iffp=fopen"IN.DAT""r"==NULL return1; /********************************/ /********************************/ fclosefp; return0; voidComputevoid voidmain inti; fori=0;i<MAX;i++ xx[i]=0; ifReadDat printf"数据文件IN.DAT不能打开!/007/n"; return; Compute; printf"ODD=%d/nEVEN=%d/nAVE1=%f/nAVE2=%f/nTOTFc=%f/n" oddevenave1ave2totfc; WriteDat; voidWriteDatvoid FILE*fp; fp=fopen"OUT.DAT""w"; fprintffp"%d/n%d/n%f/n%f/n%f/n"oddevenave1ave2totfc; fclosefp;
下列程序的功能是计算出自然数SIX和NINE它们满足的条件是SIX+SIX+SIX=NINE+NINE的个数cnt以及满足此条件所有的SIX与NINE的和sum请编写函数countValue实现程序的要求最后调用函数writeDat把结果cnt和sum输出到OUT.DAT文件中其中SIXNE各代表一个十进制数注意部分源程序已经给出请勿改动主函数main和输出数据函数writeDat的内容#include<stdio.h>intcntsum;voidcountValuevoidwriteDatFILE*fp;fp=fopenOUT.DATw;fprintffp%d/n%d/ncntsum;fclosefp;voidmaincnt=sum=0;countValue;printf满足条件的个数=%d/ncnt;printf满足条件所有的SIX与NINE的和=%d/nsum;writeDat;
热门题库
更多
软件测试工程师
计算机等级考试
法宣在线考试
司法卷一
司法卷二
司法卷三
司法卷四
企业法律顾问资格考试
“十三五”规划继续教育
潜力激活与创造力开发继续教育
创新创业能力继续教育
科研方法与论文写作继续教育
全面深化改革实现文明发展
提高自身绩效路径与方法
互联网监管与网络道德建设
“互联网+”和电子商务继续教育