还剩68页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
1.填空给定程序的功能是从键盘输入若干行文本(每行不超过80个字符),写到文件myfile
4.txt中,用-1作为字符串输入结束的标记然后将文件的内容读出显示在屏幕上文件的读写分别有自定义函数ReadText和WriteText实现请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果注意源程序存放在考生文件夹下的BLANK
1.c中不得增行或删行,也不得更改程序的结构!main{FILE*fp;iffp=fopenmyfile
4.txtw==NULL{printfopenfail!!\n;exit0;}WriteTextfp;fclosefp;iffp=fopenmyfile
4.txtr==NULL{printfopenfail!!\n;exit0;}ReadTextfp;fclosefp;}/**********found**********/voidWriteTextFILE___1___{charstr
[81];printf\nEnterstringwith-1toend:\n;getsstr;whilestrcmpstr-1!=0{/**********found**********/fputs___2___fw;fputs\nfw;getsstr;}}voidReadTextFILE*fr{charstr
[81];printf\nReadfileandoutputtoscreen:\n;fgetsstr81fr;while!feoffr{/**********found**********/printf%s___3___;fgetsstr81fr;}}修改给定程序MODI
1.c中函数fun的功能是从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位例如当s中的数为7654321时,t中的数为7531请改正程序中的错误,使他能得出正确的结果注意不要改动main函数,不能增行或删行,也不得更改程序的结构!#includestdio.h/************found************/voidfunlongslongt{longsl=10;*t=s%10;whiles0{s=s/100;*t=s%10*sl+*t;/************found************/sl=sl*100;}}程序函数fun的功能是将两个两位数的正整数a,b合并成一个整数放在c中合并的方式是将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上例如a=45,b=12时,调用该函数后,c=
1524.注意部分源程序存在文件PROG
1.C中数据文件IN.DAT中的数据不得修改请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句
2、B:*fwstrstrM:long*tsl=sl*10;P:*c=b/10*1000+a%10*100+b%10*10+a/10;
2.填空给定程序中,函数fun的功能是将自然数1~10以及它们的平方根写到名为myfile3txt的文本文档中,然后再顺序读出显示在屏幕上请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果注意源程序存放在考生文件夹下的BLANK
1.c中不得增行或删行,也不得更改程序的结构!intfunchar*fname{FILE*fp;intin;floatx;iffp=fopenfnamew==NULLreturn0;fori=1;i=10;i++/**********found**********/fprintf___1___%d%f\nisqrtdoublei;printf\nSucceed!!\n;/**********found**********/___2___;printf\nThedatainfile:\n;/**********found**********/iffp=fopen___3___r==NULLreturn0;fscanffp%d%fnx;while!feoffp{printf%d%f\nnx;fscanffp%d%fnx;}fclosefp;return1;}修改给定程序MODI
1.c中fun函数的功能是将n个无序整数从小到大排序funintnint*a{intijpt;forj=0;jn-1;j++{p=j;/************found************/fori=j+1;in-1;i++ifa[p]a[i]/************found************/t=i;ifp!=j{t=a[j];a[j]=a[p];a[p]=t;}}}程序函数fun的功能是将两个两位数的正整数a,b合并成一个整数放在c中合并的方式是将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上例如a=45,b=12时,调用该函数后,c=2514注意部分源程序存在文件PROG
1.C中数据文件IN.DAT中的数据不得修改请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句
3、B:fpfclosefpfnameM:inp=iP:*c=b%10*1000+a%10*100+b/10*10+a/10;
3.填空给定程序的功能是调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0,在复制的过程中,把复制的内容输出到终端屏幕主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中intfunchar*sourcechar*target{FILE*fs*ft;charch;/**********found**********/iffs=fopensource___1___==NULLreturn0;ifft=fopentargetw==NULLreturn0;printf\nThedatainfile:\n;ch=fgetcfs;/**********found**********/while!feof___2___{putcharch;/**********found**********/fputcch___3___;ch=fgetcfs;}fclosefs;fcloseft;printf\n\n;return1;}修改给定程序MODI
1.C中函数fun的功能是将长整形数中每一位上为偶数的数依次取出,构成一个新数放在t中高位仍在高位,低位仍在低位例如当s中的数为87653142时,t中的数为8642voidfunlongslong*t{intd;longsl=1;*t=0;whiles0{d=s%10;/************found************/ifd%2=0{*t=d*sl+*t;sl*=10;}/************found************/s\=10;}}程序函数fun的功能是将两个两位数的正整数a,b合并成一个整数放在c中合并的方式是将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上例如a=45,b=12时,调用该函数后,c=5142注意部分源程序存在文件PROG
1.C中数据文件IN.DAT中的数据不得修改请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句
4、B:“r”fsftM:d%2==0s/=10;P:*c=a%10*1000+b/10*100+a/10*10+b%10;
4.填空给定程序中已建立一个带有头结点的单向链表,链表中的各节点按结点数据域中的数据递增有序链表函数fun的功能是把形参x的值放入一个新结点并插入到链表中,插入后结点数据域的值仍保持递增有序typedefstructlist{intdata;structlist*next;}SLIST;voidfunSLIST*hintx{SLIST*p*q*s;s=SLIST*mallocsizeofSLIST;/**********found**********/s-data=___1___;q=h;p=h-next;whilep!=NULLxp-data{/**********found**********/q=___2___;p=p-next;}s-next=p;/**********found**********/q-next=___3___;}修改给定程序MODI
1.C中函数fun的功能是计算正整数num的各位上的数字之积例如,若输入252,则输入应该是
20.若输入202,则输出应该是
0.longfunlongnum{/************found************/longk;do{k*=num%10;/************found************/num\=10;}whilenum;returnk;}请编写一个函数fun,它的功能是它的功能是计算n门课程的平均分,计算结果作为函数值返回例如若有5门课程的成绩是
90.5,72,80,
61.5,55则函数的值为
71.
805、B:xpsM:longk=1;num/=10;P:inti;floatave=
0.0;fori=0;in;i++ave=ave+a[i];ave=ave/n;returnave;
5.填空给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用fun函数,没调用一次fun函数,输出链表尾部结点中的数据,并释放该节点,是链表缩短voidfunSLIST*p{SLIST*t*s;t=p-next;s=p;whilet-next!=NULL{s=t;/**********found**********/t=t-___1___;}/**********found**********/printf%d___2___;s-next=NULL;/**********found**********/free___3___;}修改给定程序MODI
1.C中函数fun的功能是将字符串中的字符按逆序输出,单补改变字符串中的内容例如,若字符串味abcd,则应输出dcba/************found************/funchara{if*a{funa+1;/************found************/printf%c*a;}}程序请编写一个函数fun,他的功能是比较两个字符串的长度(不得调用c语言提供的求字符串长度的函数),函数返回较长的字符串若两个字符串长度相同,则返回第一个字符串例如,输入beijingCRshanghaiCRCR为回车键,函数将返回shanghai
6、B:nextt-datatM:funchar*aprintf%c*a;P:inti;char*p=s*q=t;fori=0;*p*q;i++{p++;q++;}if*p==0*q==0returns;if*preturns;elsereturnt;
6.填空给定程序中建立一个带有头结点的单向链表,链表中的各节点按数据域递增有序连接函数fun的功能是删除链表中数据域值相同的结点,使之只保留一个typedefstructlist{intdata;structlist*next;}SLIST;voidfunSLIST*h{SLIST*p*q;p=h-next;ifp!=NULL{q=p-next;whileq!=NULL{ifp-data==q-data{p-next=q-next;/**********found**********/free___1___;/**********found**********/q=p-___2___;}else{p=q;/**********found**********/q=q-___3___;}}}}修改给定程序MODI
1.C中函数fun的功能是用选择法对数组中的n个元素按从小到大的顺序进行排序voidfuninta[]intn{intijtp;forj=0;jn-1;j++{/************found************/p=jfori=j;in;i++ifa[i]a[p]/************found************/p=j;t=a[p];a[p]=a[j];a[j]=t;}}请编写一个函数fun,它的功能是求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数例如,若传3送给m的之位50,则程序输出711142122183335424449答案
7、B:qnextnextM:p=j;p=i;P:inti;*n=0;fori=7;i=m;i++ifi%7==0||i%11==0a[*n++]=i;
7.填空给定程序中,函数fun的gongn是在带有头结点的单向链表中,查找数据域中值为ch的结点找到后通过函数值返回改结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值typedefstructlist{intdata;structlist*next;}SLIST;SLIST*creatlistchar*;voidoutlistSLIST*;intfunSLIST*hcharch{SLIST*p;intn=0;p=h-next;/**********found**********/whilep!=___1___{n++;/**********found**********/ifp-data==chreturn___2___;elsep=p-next;}return0;}修改给定程序MODI
1.C中函数fun的功能是删除p所指字符串中的所有空白字符(包括制表符,回车符及换行符)输入字符串是用“#”结束输入funchar*p{intit;charc
[80];/************found************/Fori=0t=0;p[i];i++if!isspace*p+ic[t++]=p[i];/************found************/c[t]=\0;strcpypc;}程序请编写一个函数fun,它的功能是将ss所指字符串中所有下标为奇数位置上的字母转换成大写(若该位置上不是字母,则不转换)例如若输入“abc4EFg”,则应输出“aBc4Efg”答案
8、B:NULLnheadchM:forc[t]=\0;P:inti;fori=1;istrlen*ss;i+=2{ifss[i]=ass[i]=zss[i]-=32;
8.填空给定程序中,函数fun的功能是统计出带有头结点的单向链表中的个数,存放在形参n所指的存储单元中voidfunSLIST*hint*n{SLIST*p;/**********found**********/___1___=0;p=h-next;whilep{*n++;/**********found**********/p=p-___2___;}}main{SLIST*head;inta[N]={1287453291162048}num;head=creatlista;outlisthead;/**********found**********/fun___3___num;printf\nnumber=%d\nnum;}修改给定程序MODI
1.C中函数fun的功能是求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数返回值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL例如当字符串中的内容为“abcdefabcdx”t中的内容为“ab”时,输出的结果应是abcdx当字符串中的内容为“abcdefabcdx”t中的内容为“abd”时,则程序输出未找到信息notbefoundchar*funchar*schar*t{char*p*r*a;/************found************/a=Null;while*s{p=s;r=t;while*r/************found************/ifr==p{r++;p++;}elsebreak;if*r==\0a=s;s++;}returna;}程序函数fun的功能是将s所指字符串中除了下标问为偶数,同时ASCII值也为偶数的字符外,其余的全部删除串中剩余字符所形成的一个新串放在t所指的数组中例如,若s所指的字符串中的内容为“ABCDEFG123456”,其中字符A的ASCII码味奇数,因此应当删除,其中字符b的ASCII码值为偶数,但是在数组中的下标为基数,因此也当删除;答案
9、B:*nnextheadM:a=NULL;*r==*pP:intij=0;fori=0;istrlens;i+=2ifs[i]%2==0t[j++]=s[i];t[j]=0;
9.填空给定程序中,函数fun的功能是计算出带有头结点的单向链表中各结点数据域中值之和作为函数的返回值intfunSLIST*h{SLIST*p;ints=0;p=h-next;whilep{/**********found**********/s+=p-___1___;/**********found**********/p=p-___2___;}returns;}修改给定程序MODI
1.C中函数fun的功能是将s所指字符串中出现的与t1所指字符串相同的字串全部替换成t2所指字符串,所形成的新串放在w所指的数组中,在此处,要求t1和t2所指字符串的长度相同intfunchar*schar*t1char*t2char*w{inti;char*p*r*a;strcpyws;while*w{p=w;r=t1;/************found************/whilerif*r==*p{r++;p++;}elsebreak;if*r==\0{a=w;r=t2;while*r{/************found************/*a=*r;a++;r++}w+=strlent2;}elsew++;}}程序函数fun的功能是;将s所指字符串下标为偶数的字符删除,串中剩余字符形成的新串放在t所指的数组中例如当s所指字符串中的内容为“ABCDEFGHIJK”在t所指数组中的内容应是“BDFHJ”
10、B:datanextheadM:*rr++;P:intij=0;fori=1;istrlens;i+=2t[j++]=s[i];t[j]=0;
10.填空人员记录有编号和出生年月日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一函数fun的功能是找出数据中的编号为空串/**********found**********/___1___funSTU*stdchar*num{inti;STUa={99999999};fori=0;iN;i++/**********found**********/ifstrcmp___2___num==0/**********found**********/return___3___;returna;}修改给定程序MODI
1.C中函数fun的功能是从s所指字符串中,找出与t所指字符串相同的字串的个数作为函数返回值例如,当s所指字符串中的内容为“abcdabfab”,t所指字符串的内容为“ab”则函数返回整数3intfunchar*schar*t{intn;char*p*r;n=0;while*s{p=s;r=t;while*rif*r==*p{/************found************/r++;p++}elsebreak;/************found************/ifr==\0n++;s++;}returnn;}函数fun的功能是将s所指字符串中ASCII值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中例如,若s所指字符串中的内容为“ABCDEFG12345”,其中字符B的ASCII码值为偶数…..答案
11、B:STUstd[i].numstd[i]M:p++;*r==’\0’;P:intij=0;fori=0;istrlens;i++ifs[i]%2t[j++]=s[i];t[j]=0;12.填空人员的记录由编号和出生年月日组成N名成员的数据已在主函数中存入结构体数组std中,函数fun的功能是找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同事有函数值返回满足指定条件的人数intfunSTU*stdSTU*kintyear{intin=0;fori=0;iN;i++/**********found**********/if___1___==year/**********found**********/k[n++]=___2___;/**********found**********/return___3___;}修改给定程序MODI12C的功能是读入一个整数k(2《k《1000),打印她的所有因子例如2310,则应输出2,3,5,7,11/************found************/IsPrimeintn;{intim;m=1;fori=2;in;i++/************found************/if!n%i{m=0;break;}returnm;}设计已知学生的记录有学号成绩构成,N名学生的数据已经存入结构体数组a中编写函数fun,函数功能是找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)已给出函数的首部,请完成该函数
12、B:std[i].yearstd[i]nM:分号去掉if!n%iP:intimax=a
[0].sj=0;fori=1;iN;i++ifmaxa[i].s{j=i;max=a[i].s;}*s=a[j];13.填空给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号,姓名和3们课程的成绩,函数fun的功能是将该学生的各科成绩都乘以一个系数avoidshowSTUtt{inti;printf%d%s:tt.numtt.name;fori=0;i3;i++printf%
5.1ftt.score[i];printf\n;}/**********found**********/voidmodify___1___*ssfloata{inti;fori=0;i3;i++/**********found**********/ss-___2___*=a;}main{STUstd={1Zhanghua
76.
578.
082.0};floata;printf\nTheoriginalnumberandnameandscores:\n;showstd;printf\nInputanumber:;scanf%fa;/**********found**********/modify___3___a;printf\nAresultofmodifying:\n;showstd;}修改给定程序MODIC中函数fun的功能是求k!k13所求阶乘的值作为函数值返回,例如若k=10,则应输出3628800longfunintk{/************found************/ifk0returnk*funk-1;/************found************/elseifk=0return1L;}设计程序定义了N*N的二维数组并在主函数中自动赋值,请编写函数fun,函数的功能是使数组左下三角元素的值乘以n例如若n的值为3,a数组的值为
13、B:STUscore[i]stdM:k==0P:intij;fori=0;iN;i++forj=0;j=i;j++a[i][j]*=n;
14.填空给定程序中,函数fun的功能是将形参所指结构体数组中的三个元素按num成员进行升序排列/**********found**********/voidfunPERSON___1___{/**********found**********/___2___temp;ifstd
[0].numstd
[1].num{temp=std
[0];std
[0]=std
[1];std
[1]=temp;}ifstd
[0].numstd
[2].num{temp=std
[0];std
[0]=std
[2];std
[2]=temp;}ifstd
[1].numstd
[2].num{temp=std
[1];std
[1]=std
[2];std
[2]=temp;}}main{PERSONstd[]={5Zhanghu2WangLi6LinMin};inti;/**********found**********/fun___3___;printf\nTheresultis:\n;fori=0;i3;i++printf%d%s\nstd[i].numstd[i].name;}修改给定程序MODI
1.c中函数fun的功能是将m个字符串连接起来组成一个新串,放入pt所指存储区中intfuncharstr[]
[10]intmchar*pt{/************found************/Intkqi;fork=0;km;k++{q=strlenstr[k];fori=0;iq;i++/************found************/pt[i]=str[ki];pt+=q;pt
[0]=0;}}设计程序定义了N*N的二维数组,并在主函数中自动赋值,请编写函数fun,函数的功能是使数组左下三角元素中的值全部值
014、B:*stdPERSONstdM:intstr[k][i]P:intij;fori=0;iN;i++forj=0;j=i;j++a[i][j]=0;
15.填空给定程序中,函数fun的功能是将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在主函数中输出STDfunSTDstd[]intn{STDmax;inti;/**********found**********/max=___1___;fori=1;in;i++/**********found**********/ifmax.age___2___max=std[i];returnmax;}main{STDstd
[5]={aaa17bbb16ccc18ddd17eee15};STDmax;max=funstd5;printf\nTheresult:\n;/**********found**********/printf\nName:%sAge:%d\n___3___max.age;}修改给定程序MODI
1.c中函数fun的功能是实现两个整数的交换例如给a和b分别输入60和65,输出为a=65b=60/**********found**********/voidfunintab{intt;/**********found**********/t=b;b=a;a=t;}设计请编制一个函数fun,tt指向一个M行N列的二维数组,求二维数组每列中最小元素,并以此放入pp所指一维数组中二维数组中的数已在主函数中赋予
15、B:*stdstd[i].agemax.nameM:int*bt=*b;*b=*a;*a=t;P:intijmink;fori=0;iN;i++{min=tt
[0][i];k=0;forj=1;jM;j++ifmintt[j][i]{min=tt[j][i];k=j;}pp[i]=tt[k][i];}
16.填空程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的信息,函数fun的功能是输出这位学生的信息/**********found**********/voidshowSTU___1___{inti;printf\n%d%s%c%d-%d-%dtt.numtt.namett.sextt.birthday.yeartt.birthday.monthtt.birthday.day;fori=0;i3;i++/**********found**********/printf%
5.1f___2___;printf\n;}main{STUstd={1ZhanghuaM
196110876.
578.
082.0};printf\nAstudentdata:\n;/**********found**********/show___3___;}修改给定程序MODI
1.c中函数fun的功能是求出数组中最大数和次大数,并把最大数和a【0】中的数对调,次最大数和a【1】中的书对调intfunint*aintn{intimtk;fori=0;i2;i++{/**********found**********/m=0;fork=i+1;kn;k++/**********found**********/ifa[k]a[m]k=m;t=a[i];a[i]=a[m];a[m]=t;}}设计请编写一个函数unsignedfun,w是一个大与10的无符号整数,若w是n为的整数,函数求出w的低n-1位的数作为函数值返回例如w为5923则函数返回923;
16、B:tttt.score[i]stdM:m=im=kP:ifw10000w%=10000;elseifw1000w%=1000;elseifw100w%=100;elseifw10w%=10;returnw;
17.填空给定程序中,函数fun的功能是对形参ss所指字符串数组中的M个字符串按长度由短到长进行排序Ss所指字符串数组中共有M个字符串,且串长《Nvoidfunchar*ss[N]{intijkn[M];chart[N];fori=0;iM;i++n[i]=strlenss[i];fori=0;iM-1;i++{k=i;/**********found**********/forj=___1___;jM;j++/**********found**********/ifn[k]n[j]___2___;ifk!=i{strcpytss[i];strcpyss[i]ss[k];/**********found**********/strcpyss[k]___3___;n[k]=n[i];}}}给定程序MODIC中函数fun的功能是判断ch中字符是否与str所指串中的某个字符相同;若相同,什么也不做,若不同,则将其插在串的最后#includestring.h/**********found**********/voidfuncharstrcharch{while*str*str!=chstr++;/**********found**********/if*str==ch{str
[0]=ch;/**********found**********/str
[1]=0;}}设计请编制一个函数fun,函数功能是吧s所指字符串中的内容逆值
17、B:i+1k=jtM:char*str!=0P:charb[N];inti=0j;forj=strlens-1;j=0;j--b[i++]=s[j];b[i]=0;strcpysb;
18.填空给定程序中,函数fun的功能是求出形参ss所指的字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长,字符串数组中共有M个字符串voidfunchar*ss[N]{intijk=0nmlen;fori=0;iM;i++{len=strlenss[i];ifi==0n=len;iflenn{/**********found**********/n=len;___1___=i;}}fori=0;iM;i++ifi!=k{m=n;len=strlenss[i];/**********found**********/forj=___2___;j=0;j--ss[i][m--]=ss[i][j];forj=0;jn-len;j++/**********found**********/___3___=*;}}修改给定程序MODI
1.c中函数fun的功能是计算整数n的阶乘doublefunintn{doubleresult=
1.0;whilen1n170/*********found*********/result*=--n;/*********found*********/return_____;}设计编写函数fun,函数的功能是从s所指的字符串中删除给定字符同一个字母的大小写按不同字符处理
18、B:klenss[i][j]M:n--resultP:char*p=s;inti=0;while*p{if*p!=cs[i++]=*p;p++;}s[i]=0;
19.填空给定程序中,函数fun的功能是求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长Ss所指的字符串数组中共有M个字符串voidfunchar*ss[N]{intijnlen=0;fori=0;iM;i++{len=strlenss[i];ifi==0n=len;iflennn=len;}fori=0;iM;i++{/**********found**********/n=strlen___1___;forj=0;jlen-n;j++/**********found**********/ss[i][___2___]=*;/**********found**********/ss[i][n+j+___3___]=\0;}}修改给定程序MODI1C中函数fun的功能是将p所指字符串中每个单词的最后一个字母改成大写#includestdio.hvoidfunchar*p{intk=0;for;*p;p++ifk{/**********found***********/ifp=={k=0;/**********found***********/*p-1=toupper*p-1}}elsek=1;}设计请编写函数fun,对长多为7个字符的字符串,除首,尾字符外,将其余5个字符按ASCII降序排列
19、B:ss[i]n+j1M:*p;P:charch;intij;fori=1;i6;i++forj=i+1;j6;j++{if*s+i*s+j{ch=*s+j;*s+j=*s+i;*s+i=ch;}}
20.填空给定程序中,函数fun的功能是求ss所指字符串数组中长度最长的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中Ss所指字符串数组中共有M个字符串#defineN20/**********found**********/intfunchar*ss___1___int*n{intik=0len=0;fori=0;iM;i++{len=strlenss[i];/**********found**********/ifi==0*n=___2___;iflen*n{/**********found**********/___3___;k=i;}}returnk;}修改给定程序MODI
1.c中函数fun的功能是根据形参m,计算如下公式的值doublefunintm{doublet=
1.0;inti;fori=2;i=m;i++/**********found**********/t+=
1.0/k;/**********found**********/________}设计编写一个函数,该函数可以统计一个长度为2的字符串在另个字符串中出现的次数
20、B:[N]len*n=lenM:t+=
1.0/i;returnt;P:intcnt=0;char*p=str*q;while*p{q=strstrpsubstr;ifq==NULLbreak;p=q+strlensubstr;cnt++;}returncnt;strstr在前串中找出后串第一次出现的位置,若找到返回地址否则返回NULL
21.填空给定程序中,函数fun的功能是求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中intfunchar*ss[N]int*n{intik=0len=N;/**********found**********/fori=0;i___1___;i++{len=strlenss[i];ifi==0*n=len;/**********found**********/iflen___2___*n{*n=len;k=i;}}/**********found**********/return___3___;}修改给定程序MODI
1.c中函数fun的功能是将tt所指字符串中的小写字母都改为对应的大写字母,其他字符不变char*funchartt[]{inti;fori=0;tt[i];i++/**********found***********/ifa=tt[i]||tt[i]=z/**********found***********/tt[i]+=32;returntt;}设计请编写函数fun,其功能是将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回
21、B:MkM:tt[i]-=32;P:intij;*k=0;fori=2;im;i++{forj=2;j=i/2;j++ifi%j==0break;ifj=i/2{xx[*k]=i;*k++;}}
22.填空给定程序中,函数fun的功能是将s所指字符串中的所有数字字符转移到所有非数字字符之后,并保持数字字符和非数字字符串原有的前后次序voidfunchar*s{intij=0k=0;chart1
[80]t2
[80];fori=0;s[i]!=\0;i++ifs[i]=0s[i]=9{/**********found**********/t2[j]=s[i];___1___;}elset1[k++]=s[i];t2[j]=0;t1[k]=0;/**********found**********/fori=0;ik;i++___2___;/**********found**********/fori=0;i___3___;i++s[k+i]=t2[i];}修改给定程序MODI
1.c中函数fun的功能是用冒泡法对6个字符串由小到大的顺序进行排序funchar*pstr
[6]{intij;char*p;fori=0;i5;i++{/**************found**************/forj=i+1j6j++{ifstrcmp*pstr+i*pstr+j0{p=*pstr+i;/**************found**************/*pstr+i=pstr+j;*pstr+j=p;}}}}设计请编写函数fun,它的功能是求出ss所指字符串中指定字符的个数,并返回此值
22、B:j++s[i]=t1[i]jM:;;*pstr+jP:intcnt=0;char*p=ss;while*p{if*p==ccnt++;p++;}
23.填空给定程序中,函数fun的功能是在形参所指字符串中的每个数字字符之后插入一个*号voidfunchar*s{intijn;fori=0;s[i]!=\0;i++/**********found**********/ifs[i]=0___1___s[i]=9{n=0;/**********found**********/whiles[i+1+n]!=___2___n++;forj=i+n+1;ji;j--/**********found**********/s[j+1]=___3___;s[j+1]=*;i=i+1;}}修改给定程序MODI
1.c中函数fun的功能是;根据整形形参m,计算如下公式的值设计请编写函数fun,函数功能是实现B=A+A’,即把矩阵A加上A的转职,存放到B中
23、B:0s[j]M:=
1.0P:intc
[3]
[3];intij;fori=0;i3;i++forj=0;j3;j++{c[i][j]=a[j][i];b[i][j]=a[i][j]+c[i][j];}
24.填空给定程序中,函数fun的功能是统计形参s所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出voidfunchar*sint*t{intin;n=0;/**********found**********/fori=0;___1___!=NULL;i++/**********found**********/ifs[i]=0s[i]=___2___n++;/**********found**********/___3___;}修改给定程序MODI
1.c中函数fun的功能是通过某种方式实现俩个变量值的交换,规定不予许增加语句和表达式intfunint*xinty{intt;/**************found**************/t=x;x=y;/**************found**************/returny;}设计请编写函数fun,它的功能是求出1到1000之间能被7或11整除,但不能同时被7和11整除的所有整数并将他们放在a所指的数组中,通过n返回这些数的个数
24、B:s[i]‘9’*t=n;M:t=*x;*x=y;returnt;P:inti;*n=0;fori=7;i1000;i++ifi%7==0||i%11==0i%77!=0a[*n++]=i;
25.填空给定程序中,函数fun的功能是吧形参s所指字符串中下标为奇数的字符右移到下一个奇数的位置,最后边被移除字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动voidfunchar*s{intink;charc;n=0;fori=0;s[i]!=\0;i++n++;/**********found**********/ifn%2==0k=n-___1___;elsek=n-2;/**********found**********/c=___2___;fori=k-2;i=1;i=i-2s[i+2]=s[i];/**********found**********/s
[1]=___3___;}给定程序MODI
1.c中fun函数的功能是求s=aa…aa-….aaa-aa-alongfunintaintn{intj;/**************found**************/longs=0t=1;forj=0;jn;j++t=t*10+a;s=t;forj=1;jn;j++{/**************found**************/t=t%10;s=s-t;}returns;}设计请编写一个函数fun,统计在tt所指字符串中’a’到’z’26个小写字母各自出现的次数,并依次放在pp所指数组中
25、B:n-1s[k]cM:t=0t=t/10P:char*p=tt;inti;fori=0;i26;i++pp[i]=0;while*p{if*p=a*p=zpp[*p-a]+=1;p++;}
26.填空给定程序中,函数fun的功能是对形参s所指字符串中下标为奇数的字符按ascii码大小递增排序,并将排序后下标为基数的字符取出,存入形参p所指字符数组中,形成一个新串voidfunchar*schar*p{intijnxt;n=0;fori=0;s[i]!=\0;i++n++;fori=1;in-2;i=i+2{/**********found**********/___1___;/**********found**********/forj=___2___+2;jn;j=j+2ifs[t]s[j]t=j;ift!=i{x=s[i];s[i]=s[t];s[t]=x;}}fori=1j=0;in;i=i+2j++p[j]=s[i];/**********found**********/p[j]=___3___;}给定程序MODI
1.c中函数fun的功能是用下面公式求π的近似值,直到最后一项的绝对值小于指定的数为止floatfunfloatnum{ints;floatntpi;t=1;pi=0;n=1;s=1;/**************found**************/whilet=num{pi=pi+t;n=n+2;s=-s;/**************found**************/t=s%n;}pi=pi*4;returnpi;}请编写一个函数fun,其功能是删除一个字符串中指定下标的字符,其中,a指向原字符,删除指定字符后的字符串存在b所指的数组中,n中存放指定下标
26、B:t=i;i0M:fabsts/nP:strncpyban;b[n]=0;strcatba+n+1;27填空给定程序中,函数fun的功能是在形参所指字符串中寻找一个字符串与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则函数不做任何处理voidfunchar*scharc{intijn;/**********found**********/fori=0;s[i]!=___1___;i++ifs[i]==c{/**********found**********/n=___2___;whiles[i+1+n]!=\0n++;forj=i+n+1;ji;j--s[j+1]=s[j];/**********found**********/s[j+1]=___3___;i=i+1;}}修改在主函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中,给定程序MODI1C中函数fun的功能是计算数组元素中值为正数的平均值doublefunintx[]{/************found************/intsum=
0.0;intc=0i=0;whilex[i]!=0{ifx[i]0{sum+=x[i];c++;}i++;}/************found************/sum\=c;returnsum;}设计编写函数fun,函数功能是根据以下公式s,计算结果作为函数返回值,n通过形参传入
27、B:00cM:double/=P:intijt;floats=0;fori=1;i=n;i++{t+=j;s=s+
1./t;}returns;
28.给定程序中,函数fun的功能是:有N*N的矩阵,根据给定的m的值,将每行元素中的值均右移m个位置,左边置为0#defineN4voidfunint*t[N]intm{intij;/**********found**********/fori=0;iN;___1___{forj=N-1-m;j=0;j--/**********found**********/t[i][j+___2___]=t[i][j];/**********found**********/forj=0;j___3___;j++t[i][j]=0;}}给定程序MODi
1.c中函数fun的功能是计算并输出high以内最大的10个素数之和High的值由主函数传给fun函数intfuninthigh{intsum=0n=0jyes;/************found************/whilehigh=2n10{yes=1;forj=2;j=high/2;j++ifhigh%j==0{/************found************/yes=0;break}ifyes{sum+=high;n++;}high--;}returnsum;}编写函数fun,她的功能是利用一下所示的简单迭代方法求方程的一个实根
28、B:i++mmM:;P:floatx0x1=
0.0;do{x0=x1;x1=cosx0;}whilefabsx0-x
10.000001;returnx1;
29.填空给定程序中,函数fun的功能是将N*N的矩阵中元素额度值按列右移1个位置,右边被移出矩阵的元素绕回左边voidfunint*t[N]{intijx;/**********found**********/fori=0;i___1___;i++{/**********found**********/x=t[i][___2___];forj=N-1;j=1;j--t[i][j]=t[i][j-1];/**********found**********/t[i][___3___]=x;}}修改给定程序MODI
1.c中函数fun的功能是计算并输出下列级数的前N项之和Sn,知道Sn+1大于q为止,q的值通过形参传入doublefundoubleq{intn;doublest;n=2;s=
2.0;whiles=q{t=s;/************found************/s=s+n+1/n;n++;}printfn=%d\nn;/************found************/returns;}设计编写函数fun,她的功能是求Fibonacci数列中大于t的最小的一个数,结果由函数返回,其中Fibonacci数列F(n)的定义为
29、B:NN-10M:s=s+n+
1./n;returnt;P:intf0=0f1=1f;do{f=f0+f1;f0=f1;f1=f;}whileft;returnf;
30.填空给定程序中,函数fun的功能是有N*N矩阵,将矩阵的外围元素顺时针逆转,操作顺序是首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行临时数组中的元素成为最后一列voidfunint*t[N]{intjr[N];forj=0;jN;j++r[j]=t
[0][j];forj=0;jN;j++/**********found**********/t
[0][N-j-1]=t[j][___1___];forj=0;jN;j++t[j]
[0]=t[N-1][j];/**********found**********/forj=N-1;j=0;___2___t[N-1][N-1-j]=t[j][N-1];forj=N-1;j=0;j--/**********found**********/t[j][N-1]=r[___3___];}修改给定程序MODI
1.c中函数fun的功能是计算s=f-n+f-n+1+…+f0+f1+f2+…+fn的值,当n为5时,函数值应为
10.
407143.fx的函数定义如下/************found************/fdoublex{ifx==
0.0||x==
2.0return
0.0;elseifx
0.0returnx-1/x-2;elsereturnx+1/x-2;}doublefunintn{inti;doubles=
0.0y;fori=-n;i=n;i++{y=f
1.0*i;s+=y;}/************found************/returns}设计编写函数fun,它的功能是计算s作为函数值返回
30、B:0j--jM:double;P:doubles=
0.0;inti;fori=1;i=m;i++s+=log
1.0*i;s=sqrts;returns;
31.填空给定程序中,函数fun的功能是有N*N矩阵,以主对角线为对称线,对称元素相加并将结构存放在左下三角元素中,右上三角元素之位0/**********found**********/voidfunint*t___1___{intij;fori=1;iN;i++{forj=0;ji;j++{/**********found**********/___2___=t[i][j]+t[j][i];/**********found**********/___3___=0;}}}修改给定程序MODI
1.c中函数fun的功能是计算函数Fxyz=x+y/x-y+z+y/z-y的值其中x和y的值不等,z和y的值不等#includestdlib.h/************found************/#defineFUmnm/nfloatfunfloatafloatbfloatc{floatvalue;value=FUa+ba-b+FUc+bc-b;/************found************/ReturnValue;}设计规定输入的字符串中只包含字母和*号请编写函数fun,它的功能是将字符串中的前导*号全部删除,中间和尾部的*号不删除
31、B:[N]t[i][j]t[j][i]M:m/nreturnvalue;P:intj=0;char*p=a;while*p==*p++;while*pa[j++]=*p++;a[j]=0;
32.填空给定程序中,函数fun的功能是将N*N矩阵主对角线元素中的值域反向对角线对应位置上的元素中的值进行交换#defineN4/**********found**********/voidfunint___1___intn{intis;/**********found**********/for___2___;i++{s=t[i][i];t[i][i]=t[i][n-i-1];/**********found**********/t[i][n-1-i]=___3___;}修改由N个有序整数数组组成的数列已放在一维数组中,给定程序MODI
1.c中函数fun的功能是利用折半查找法查找整数m在整数数组的位置若找到,返回其下标;反之,返回-1/************found************/voidfuninta[]intm{intlow=0high=N-1mid;whilelow=high{mid=low+high/2;ifma[mid]high=mid-1;/************found************/elseIfma[mid]low=mid+1;elsereturnmid;}return-1;}设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是除了尾部的*号外,将字符串中的*号全部删除,形参p以指向字符串中最后的一个字母,在编写函数是,不得使用c语言提供的字符串函数
32、B:t[][N]i=0;in;sM:funinta[]intmifP:char*q=a;intj=0;while*qqp{if*q!=*a[j++]=*q;q++;}while*pa[j++]=*p++;a[j]=0;
33.填空给定程序中,函数fun的功能是计算N*N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回,注意要求先累加主对角线元素中的值,然后累加反对角线元素中的值funintt[][N]intn{intisum;/**********found**********/___1___;fori=0;in;i++/**********found**********/sum+=___2___;fori=0;in;i++/**********found**********/sum+=t[i][n-i-___3___];returnsum;}修改给定程序MODI
1.c中函数fun和funx的功能是用二分法求方程的一个根,并要求绝对误差不超过
0.001doublefunxdoublex{return2*x*x*x-4*x*x+3*x-6;}doublefundoublemdoublen{/************found************/intr;r=m+n/2;/************found************/whilefabsn-m
0.001{iffunxr*funxn0m=r;elsen=r;r=m+n/2;}returnr;}设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是除了尾部的*号外,将字符串中的*号全部删除,形参p以指向字符串中最后的一个字母,在编写函数是,不得使用c语言提供的字符串函数
33、B:sum=0;t[i][i]1M:doubler;P:intj=0;char*q=a;while*qqha[j++]=*q++;while*h*php{if*h!=*a[j++]=*h;h++;}while*pa[j++]=*p++;a[j]=0;
34.填空函数的功能是把形参a所指数组中的奇数按原顺序依次存放到a【0】,a【1】….中,吧偶数从数组中删除,奇数个数通过函数值返回intfuninta[]intn{intij;j=0;fori=0;in;i++/**********found**********/ifa[i]%2==___1___{/**********found**********/a[j]=a[i];___2___;}/**********found**********/return___3___;}修改给定程序MODI
1.c中函数fun的功能是求出连个非零正整数的最大公约数,并作为函数值返回intfunintaintb{intrt;ifab{/************found************/t=a;b=a;a=t;}r=a%b;whiler!=0{a=b;b=r;r=a%b;}/************found************/returna;}设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是除了尾部的*号外,将字符串中的*号全部删除,形参p以指向字符串中最后的一个字母,在编写函数是,不得使用c语言提供的字符串函数
34、B:1j++jM:t=b;returnb;P:intj=0;char*p=a;while*p{if*p!=*a[j++]=*p;p++;}a[j]=0;
35.填空函数fun的功能是“把形参所指数组中的偶数按原顺序依次存放到a【0】、a【1】,……中,吧奇数从数组中删去,偶数个数通过函数值返回intfuninta[]intn{intij;j=0;fori=0;in;i++/**********found**********/if___1___==0{/**********found**********/___2___=a[i];j++;}/**********found**********/return___3___;}修改给定程序MODI
1.c中函数fun的功能是按一下递归公式求函数值/************found************/funn{intc;/************found************/ifn=1c=10;elsec=funn-1+2;returnc;}设计假定输入的字符串中只包含字母和*号,请编写函数fun,她的功能是,是字符串尾部的*号不得多于n个;若多于n个,则删除多于的*号,若少于n个,则什么也不做,字符串中间和前面的*号不删除
35、B:a[i]%2a[j]jM:intnn==1P:char*p=a;intj=0;while*pp++;p--;while*p==*p--;p++;whilejn*p{p++;j++;}*p=0;
36.填空函数fun的功能是吧形参a所指数组中的最小值放在元素a【0】中,按着把形参a所指数组中的最大值放在a【1】元素中;在把a所指数组中的次小元素放在a【2】所指的数组中,把a所指的数组元素中的次大放在a【3】;其余以此类推voidfuninta[]intn{intijmaxminpxpnt;fori=0;in-1;i+=2{/**********found**********/max=min=___1___;px=pn=i;forj=i+1;jn;j++{/**********found**********/ifmax___2___{max=a[j];px=j;}/**********found**********/ifmin___3___{min=a[j];pn=j;}}ifpn!=i{t=a[i];a[i]=min;a[pn]=t;ifpx==ipx=pn;}ifpx!=i+1{t=a[i+1];a[i+1]=max;a[px]=t;}}}修改给定程序MODI
1.c中函数fun的功能是用递归算法计算非波拉且数列中第n项的值,从第一项起,非波拉且数列为
1、
1、
2、
3、
5、
8、
13、
21、……longfunintg{/**********found**********/switchg;{case0:return0;/**********found**********/case1;case2:return1;}returnfung-1+fung-2;}设计某学生的记录有学号,8门课程的平均分组成,学号和8门课程已经在主函数中给出,请编写函数fun它的功能是求出改学生的平均分放在记录的ave成员中
36、B:a[i]a[j]a[j]M:分号去掉case1;分号改冒号P:inti;fori=0;iN;i++a-ave+=a-s[i];a-ave/=N;
37.填空函数fun的功能是,把形参a所指数组中的最大值放在a【1】中,按着求出a所指数组中的最小值放在a【1】数组中;再把a所指数组元素的次大值放在a【2】中,把a数组元素中的次小值放在a【3】中;其余以此类推/**********found**********/voidfunint___1___intn{intijmaxminpxpnt;/**********found**********/fori=0;in-1;i+=___2___{max=min=a[i];px=pn=i;/**********found**********/forj=___3___;jn;j++{ifmaxa[j]{max=a[j];px=j;}ifmina[j]{min=a[j];pn=j;}}ifpx!=i{t=a[i];a[i]=max;a[px]=t;ifpn==ipn=px;}ifpn!=i+1{t=a[i+1];a[i+1]=min;a[pn]=t;}}}修改给定程序MODI
1.c中函数fun的功能是按顺序给s所指数组中的元素赋予从2开始的偶数,然后在按顺序对每五个元素求个一平均值,并将这些值依次存放在w所指的数组中,若s所指数组元素的个数不是5的倍数,多于部分忽略不计fundouble*sdouble*w{intki;doublesum;fork=2i=0;iSIZE;i++{s[i]=k;k+=2;}/**********found**********/sun=
0.0;fork=0i=0;iSIZE;i++{sum+=s[i];/**********found**********/ifi+1%5==0{w[k]=sum/5;sum=0;k++;}}returnk;}设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编制函数fun,它的功能是,把低于平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回
37、B:*a2i+1M:sum=
0.0;ifi+1%5==0P:inti;doubleave=
0.0;*n=0;fori=0;iN;i++ave=ave+a[i].s;ave/=N;fori=0;iN;i++ifa[i].save{b[*n]=a[i];*n++;}returnave;
38.填空函数fun的功能是将形参a所指的数组中的前半部分元素中的值和后半部分元素中的值兑换,形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动voidfuninta[]intn{intitp;/**********found**********/p=n%2==0n/2:n/2+___1___;fori=0;in/2;i++{t=a[i];/**********found**********/a[i]=a[p+___2___];/**********found**********/___3___=t;}}修改给定程序MODI
1.c中函数fun的功能是;把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中voidfunfloat*afloat*bfloat*c{/**********found**********/float*k;if*a*b{k=*a;*a=*b;*b=k;}/**********found**********/if*a*c{k=*c;*c=*a;*a=k;}if*b*c{k=*b;*b=*c;*c=k;}}设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是;把分数最高的学生的数据放在b所指的数组中,注意分数最高的学生可能不只一个,函数返回分数最高的学生的人数
38、B:1ia[p+i]M:kP:intimax=a
[0].sn=0;fori=1;iN;i++ifmaxa[i].smax=a[i].s;fori=0;iN;i++ifmax==a[i].sb[n++]=a[i];returnn;
39.填空函数fun的功能是逆置数组元素中的值voidfuninta[]intn{intit;/**********found**********/fori=0;i___1___;i++{t=a[i];/**********found**********/a[i]=a[n-1-___2___];/**********found**********/___3___=t;}}修改给定程序MODI
1.c中函数fun的功能是讲一个由八进制数字字符组成的字符串转换为与其面值相等的十进制整数,规定输入的字符串最多只能包含5为八进制数字字符intfunchar*p{intn;/**********found**********/n=*P-o;p++;while*p!=0{/**********found**********/n=n*8+*P-o;p++;}returnn;}设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是;函数返回指定学生的学生数据,指定的学号在主函数中输入,若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回
39、B:n/2ia[n-1-i]M:*P*p‘o’‘0’P:STRECc;inti;c.num
[0]=\0;c.s=-1;fori=0;iN;i++ifstrcmpa[i].numb==0{strcpyc.numa[i].num;c.s=a[i].s;break;}returnc;
40.填空函数fun的功能是进行数字字符转换,若形参ch中是数字字符0-9,则0转换为9,1转换为8,2转换为7……9转换为0;若是其他字符则保持不变;并将转换后的结果作为函数值返回#includestdio.h/**********found**********/___1___funcharch{/**********found**********/ifch=0___2___/**********found**********/return9-ch-___3___;returnch;}修改给定程序MODI
1.c中函数fun的功能是;将p所指字符串中的所有字符复制到b中,要求每复制三个字符有插入一个空格voidfunchar*pchar*b{intik=0;while*p{i=1;whilei=3*p{/**********found**********/b[k]=p;k++;p++;i++;}if*p{/**********found**********/b[k++]=;}}b[k]=\0;}设计N名学生的成绩已在主函数中放入一个带有头结点的链表结构中,h指向离岸边的头结点请编制函数fun,它的功能是求出平均分,由函数值返回
40、B:charch=9‘0’M:*p‘‘空格字符P:STREC*p=h-next;doubleav=
0.0;intn=0;whilep!=NULL{av+=p-s;p=p-next;n++;}returnav/n;
41.填空函数fun的功能是进行字母转换,若形参ch中试小写英文字母,则转换成对应的大写英文字母;若ch中试大写英文字母,则转换成对应的小写英文字母;若是其他字符则保持不变,并将转换后的结果作为函数值返回charfuncharch{/**********found**********/ifch=a___1___ch=zreturnch-a+A;ifisupperch/**********found**********/returnch+a-___2___;/**********found**********/return___3___;}修改给定程序MODI
1.c中函数fun的功能是给一维数组a输入任意4个整数,并按下列的规律输入/**************found**************/voidfuninta{intijkm;printfEnter4number:;fori=0;iM;i++scanf%da[i];printf\n\nTheresult:\n\n;fori=M;i0;i--{k=a[M-1];forj=M-1;j0;j--/**************found**************/aa[j]=a[j-1];a
[0]=k;form=0;mM;m++printf%da[m];printf\n;}}设计请编写一个函数fun,它的功能是计算并输出给定整数n的所有因子之和,规定n的值不大于
100041、B:AchM:int*aa[j]=a[j-1];P:ints=0i;fori=2;in;i++ifn%i==0s+=i;returns;
42.填空函数fun的功能是计算的前n项doublefundoublexintn{doubleft;inti;/**********found**********/f=___1___;t=-1;fori=1;in;i++{/**********found**********/t*=___2___*x/i;/**********found**********/f+=___3___;}returnf;}修改给定程序MODI
1.c中函数fun的功能是从3个红球,5个白球,6个黑球中任意取出8个作为一组,进行输出在每组中,可以没有黑球,但必须有红球和白球,组合数作为函数值返回,正确的组合数应该是15,程序中i的值代表红球数,j的值代表白球数,k的值代表黑球数intfun{intijksum=0;printf\nTheresult:\n\n;/**************found**************/fori=0;i=3;i++{forj=1;j=5;j++{k=8-i-j;/**************found**************/ifK=0K=6{sum=sum+1;printfred:%4dwhite:%4dblack:%4d\nijk;}}}returnsum;}设计请编写函数fun,其功能是计算并输出下列多项式的值
42、B:1-1tM:fori=1;i=3;i++k=0k=6K变小写P:doubles=1;longt=1;inti;fori=1;i=n;i++{t=t*i;s+=
1./t;}returns;
43.填空函数fun的功能是,计算doublefundoublex{doubleft;intn;f=
1.0+x;/**********found**********/t=___1___;n=1;do{n++;/**********found**********/t*=-
1.0*x/___2___;f+=t;}/**********found**********/while___3___=1e-6;returnf;}修改给定程序MODI1C中函数fun的功能是求整数x的y次方的低3为的值,例如,整数5的6次方为15625,此值的低3位值为625longfunintxintylong*p{inti;longt=1;/**************found**************/fori=1;iy;i++t=t*x;*p=t;/**************found**************/t=t/1000;returnt;}设计请编写函数fun,其功能是计算并输出当x《
0.97时下列多项式的值
43、B:xnfabstM:=%P:intn=1;doublesn=1xn=1;whilefabsxn=
0.000001{xn=xn*x*
0.5-n+1/n;n+=1;sn+=xn;}returnsn;
44.填空函数fun的功能是计算的前n项,若x=
2.5,函数值为
12.182340doublefundoublexintn{doubleft;inti;f=
1.0;/**********found**********/t=___1___;/**********found**********/fori=___2___;in;i++{/**********found**********/t*=x/___3___;f+=t;}returnf;}修改给定程序MODI
1.c中函数fun的功能是找出100至n之间三位数字相等的所有整数,把这些整数放在s所指数组中,个数作为函数值返回intfunint*sintn{intijkabc;j=0;fori=100;in;i++{/**************found**************/k=n;a=k%10;k/=10;b=k%10;k/=10;/**************found**************/c=k%10ifa==ba==cs[j++]=i;}returnj;}设计
44、B:11iM:k=i;c=k%10;P:inti;doubleavg=
0.0sum=
0.0abs=
0.0fc;fori=0;i10;i++sum+=x[i];avg=sum/10;fori=0;i10;i++abs+=x[i]-avg*x[i]-avg;fc=sqrtabs/10;returnfc;
45.填空doublefundoublex{doubleft;intn;/**********found**********/f=
1.0+___1___;t=x;n=1;do{n++;/**********found**********/t*=x/___2___;/**********found**********/f+=___3___;}whilefabst=1e-6;returnf;}修改给定程序MODI
1.c中函数fun的功能是计算n的5次方的值,通过形参指针传回主函数;并计算该值的个位,十位,百位上数字之和作为函数值返回intfunintnint*value{intdsi;/**************found**************/d=0;s=0;fori=1;i=5;i++d=d*n;*value=d;fori=1;i=3;i++{s=s+d%10;/**************found**************/d=d\10;}Return设计请编制函数fun,其功能是;计算并输出给定数组中每相邻两个元素之平均值的平方根之和
45、B:xntM:d=1d=d/10;P:inti;doubleavg=
0.0sum=
0.0;fori=0;i8;i++{avg=x[i]+x[i+1]/2;sum+=sqrtavg;}returnsum;
46.填空函数fun的功能是;统计所有小于等于n的素数的个数,素数的个数作为函数值返回intfunintn{intijcount=0;printf\nTheprimenumberbetween3to%d\nn;fori=3;i=n;i++{/**********found**********/for___1___;ji;j++/**********found**********/if___2___%j==0break;/**********found**********/if___3___=i{count++;printfcount%15%5d:\n%5di;}}returncount;}修改数列中,第一项值为3,后一项都比前一项的值曾5;给定程序MODI
1.c中函数fun的功能是;计算前n项的累加和;没累加一次把被4除后余2的当前累加值放入数组中,符合此条件的累加的个数作为函数值返回主函数intfunintnint*a{intijksum;/**************found**************/sum=j==0;fork=3i=0;in;i++k+=5{sum=sum+k;/**************found**************/ifsum%4=2a[j++]=sum;}returnj;}设计
46、B:j=2ijM:sum=0;j=0;==P:inti;doublesum=
0.0;ifn1n=100{fori=1;i=n;i++sum+=
1.0/2*i-1-
1.0/2*i;}returnsum;
47.填空函数fun的功能是统计长整形数n的各个位上出现数字
1、
2、3的次数,并通过外部变量c
1、c
2、c3返回主函数voidfunlongn{c1=c2=c3=0;whilen{/**********found**********/switch___1___{/**********found**********/case1:c1++;___2___;/**********found**********/case2:c2++;___3___;case3:c3++;}n/=10;}}修改给定程序MODI
1.c中函数fun的功能是统计一个无符号整数中各个数字值为零的个数,通过形参传回主函数,并把该整数中各个最大的数字值作为函数值返回intfununsignednint*zero{intcount=0max=0t;do{t=n%10;/**************found**************/ift=0count++;ifmaxtmax=t;n=n/10;}whilen;/**************found**************/zero=count;returnmax;}设计
47、B:n%10breakbreakM:t==0*zeroP:doubles=0t=1;inti;fori=1;i=n;i++{t*=i;s+=
1./t;}returns;
48.填空用筛选法可得到2-n之间的所有素数,方法是首先从素数2开始,将所有2的倍数的数……intfunintn{inta
[10000]ijcount=0;fori=2;i=n;i++a[i]=i;i=2;whilein{/**********found**********/forj=a[i]*2;j=n;j+=___1___a[j]=0;i++;/**********found**********/while___2___==0i++;}printf\nTheprimenumberbetween2to%d\nn;fori=2;i=n;i++/**********found**********/ifa[i]!=___3___{count++;printfcount%15%5d:\n%5da[i];}returncount;}修改给定程序MODI
1.c中函数fun的功能是为一个偶数寻找两个素数这两个素数之和等于该偶数,并将各两个素数通过形参指针传回主函数voidfunintaint*bint*c{intijdy;fori=3;i=a/2;i=i+2{/**************found**************/Y=1;forj=2;j=sqrtdoublei;j++ifi%j==0y=0;ify==1{/**************found**************/d==a-i;forj=2;j=sqrtdoubled;j++ifd%j==0y=0;ify==1{*b=i;*c=d;}}}}设计请编写函数fun,它的功能是,计算并输出n以内的能被5或9整除的所有自然数的倒数之和
48、B:a[i]a[i]0M:y=1;d=a-i;P:inti;doublesum=
0.0;fori=1;i=n;i++ifi%5==0||i%9==0sum+=
1.0/i;returnsum;
49.填空甲乙丙丁四人同时开始放鞭炮,甲每个t1秒放一次……/**********found**********/#defineOKitn___1___%t==0i/tnintfunintt1intt2intt3intt4intn{intcounttmaxt=t1;ifmaxtt2maxt=t2;ifmaxtt3maxt=t3;ifmaxtt4maxt=t4;count=1;/*给count赋初值*//**********found**********/fort=1;tmaxt*n-1;___2___{ifOKtt1n||OKtt2n||OKtt3n||OKtt4ncount++;}/**********found**********/return___3___;}修改给定程序MODI
1.c中函数fun的功能是根据输入的三个边长,判断能否构成三角形,构成的是等边三角形,还是等腰三角形若能构成等边三角形,函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0/**************found**************/voidfunintaintbintc{ifa+bcb+caa+cb{ifa==bb==creturn3;elseifa==b||b==c||a==creturn2;/**************found**************/elseretrun1}elsereturn0;}设计请编写函数fun,其功能是;计算并输出3到n之间所有素数的平方根之和
49、B:it++countM:intreturn1;P:intij=0;doubles=0;fori=3;i=n;i++{forj=2;ji;j++ifi%j==0break;ifj==is=s+sqrti;}returns;
50.填空函数fun的功能是从三个形参中找出中间的那个数,作为函数值返回intfunintaintbintc{intt;/**********found**********/t=abbcb:acc:___1___:ac___2___:bcc:___3___;returnt;}修改给定程序MODI
1.c中函数fun的功能是首先将大写字母转换为对应的小写字母,若小写字母为a-u字将其转换为其后的第5个字母,若小写字母为v-z,使其值减
21.转换后的小写字母作为函数值返回charfuncharc{ifc=Ac=Z/**************found**************/C=C+32;ifc=ac=u/**************found**************/c=c-5;elseifc=vc=zc=c-21;returnc;}设计
50、B:babM:c=c+32;c=c+5;P:inti;doublefac=
1.0;doublesum=
1.0;fori=2;i=n;i++{fac+=sqrti;sum+=fac;}returnsum;
51.填空给定程序中,函数fun的功能是找出1000至x之间个位上数字之和为15的所有整数,然后输出符合条件的整数个数作为函数值返回intfunintx{intns1s2s3t;/**********found**********/n=__1__;t=100;/**********found**********/whilet=__2__{s1=t%10;s2=t/10%10;s3=t/100;ifs1+s2+s3==15{printf%dt;n++;}/**********found**********/__3__;}returnn;}修改给定程序MODI
1.c中函数fun的功能是先将s所指字符串中的字符按逆序存放到t所指字符串中,然后把s所指字符正序连接到t所指串的后面voidfunchar*schar*t{/************found************/inti;sl=strlens;fori=0;isl;i++/************found************/t[i]=s[sl-i];fori=0;isl;i++t[sl+i]=s[i];t[2*sl]=\0;}设计函数fun的功能是将ab中的两个两位正整数合并形成一个新的正整数放在c中,合并方式是将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位数和各位数一次放在变量c的千位和十位上
51、B:0xt++M:intisl;t[i]=s[sl-i-1];P:*c=b/10*1000+a/10*100+b%10*10+a%10;
52.填空给定程序中,函数fun的功能是找出100-999之间所有整数中各位上数字之和为x的整数,然后输出,符合条件的整数个数作为函数值返回intfunintx{intns1s2s3t;n=0;t=100;/**********found**********/whilet=__1__{/**********found**********/s1=t%10;s2=__2__%10;s3=t/100;/**********found**********/ifs1+s2+s3==__3__{printf%dt;n++;}t++;}returnn;}修改给定程序MODI
1.c中函数的功能是从低位开始取出长整形变量s中的偶数为上的数,依次构成一个新数放在t中,高位仍在高位,低位仍在低位/************found************/voidfunlongslongt{longsl=10;s/=10;*t=s%10;/************found************/whiles0{s=s/100;*t=s%10*sl+*t;sl=sl*10;}}设计学生的记录有学号和成绩组成,N名学生的数据已在主函数中放在结构体数组s中,请编写函数fun,它的功能是按分数的高低排列学生的记录,高分在前
52、B:999t/10xM:long*ts0P:STRECtmp;intij;fori=0;iN;i++forj=i+1;jN;j++ifa[i].sa[j].s{tmp=a[i];a[i]=a[j];a[j]=tmp;}
53.填空给定程序中,函数fun的功能是将形参n中,各位上位偶数的数取出,并按原来从高到低的顺序组成一个新的数,并作为函数值返回unsignedlongfununsignedlongn{unsignedlongx=0si;intt;s=n;/**********found**********/i=__1__;/**********found**********/while__2__{t=s%10;ift%2==0{/**********found**********/x=x+t*i;i=__3__;}s=s/10;}returnx;}修改给定程序MODI
1.c中函数fun的功能是输出M行M列的整数方阵,然后求两条对角线上元素之和,返回此和数#defineM5/************found************/intfunintnintxx[][]{intijsum=0;printf\nThe%dx%dmatrix:\nMM;fori=0;iM;i++{forj=0;jM;j++/************found************/printf%fxx[i][j];printf\n;}fori=0;in;i++sum+=xx[i][i]+xx[i][n-i-1];returnsum;}设计函数fun的功能是将ab中的两个两位正整数合并形成一个新的正整数放在c中,合并方式是将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位数和各位数一次放在变量c的千位和十位上
53、B:1si*10M:xx[][M]%dP:*c=a/10*1000+b%10*100+a%10*10+b/10;
54.填空给定程序中,函数fun的功能是将形参n中,个位上位偶数的书取出,并按原来从高到低相反的顺序组成一个新的数,并作为函数值返回unsignedlongfununsignedlongn{unsignedlongx=0;intt;whilen{t=n%10;/**********found**********/ift%2==__1__/**********found**********/x=__2__+t;/**********found**********/n=__3__;}returnx;}修改给定程序MODI
1.c中函数fun的功能是将长整形数种每一位上为奇数的依次取出,构成一个新数放在t中,高位仍在高位,低位仍在低位voidfunlongslong*t{intd;longsl=1;/************found************/t=0;whiles0{d=s%10;/************found************/ifd%2==0{*t=d*sl+*t;sl*=10;}s/=10;}}设计编写一个函数fun,它的功能是实现两个字符串的连接把p2所指的字符串连接到p1所指的字符串后
54、B:0x*10n/10M:*t!=P:char*p=p1;while*pp++;while*p2*p++=*p2++;*p=0;
55.填空给定程序中,函数fun的功能是将形参n所指变量中,各位上位偶数的数去除,剩余的书按原来从高到底的顺序组成一个新的数,并通过形参指针n传回所指变量voidfununsignedlong*n{unsignedlongx=0i;intt;i=1;while*n/**********found**********/{t=*n%__1__;/**********found**********/ift%2!=__2__{x=x+t*i;i=i*10;}*n=*n/10;}/**********found**********/*n=__3__;}修改给定程序MODI1C中,函数fun的功能是计算n!doublefunintn{doubleresult=
1.0;/************found************/ifn==0return
1.0;whilen1n170/************found************/result*=n--returnresult;}设计请编写一个函数fun,它的功能是将一个数字字符串转换为一个整数
55、B:100xM:n==0少分号P:while*px=x*10-48+*p++;
56.填空doublefunintn{inti;doublest;/**********found**********/s=__1__;/**********found**********/fori=1;i=__2__;i++{t=
2.0*i;/**********found**********/s=s+
2.0*i-1*
2.0*i+1/__3__;}returns;}修改给定程序MODI
1.c中函数fun的功能是统计substr所指子字符串在str所指字符串中出现的次数intfunchar*strchar*substr{intijknum=0;/************found************/fori=0str[i]i++forj=ik=0;substr[k]==str[j];k++j++/************found************/Ifsubstr[k+1]==\0{num++;break;}returnnum;}设计
56、B:0nt*tM:;;ifP:doubles=1t=
1./3;intn=1;whilet=eps{s+=t;n++;t=t*n/
2.0*n+1;}returns*
2.0;
57、B:12*i-1M:;==P:inti;*max=a
[0];*d=0;fori=1;in;i++if*maxa[i]{*max=a[i];*d=i;}58填空doublefundoublee{intik;doublestx;s=0;k=1;i=2;/**********found**********/x=__1__/4;/**********found**********/whilex__2__e{s=s+k*x;k=k*-1;t=2*i;/**********found**********/x=__3__/t*t;i++;}returns;}修改设计请编写一个函数fun,它的功能是求去一个2*M整型二维数组中最大元素的值,并将此值返回调用函数
58、B:
3.02*i+1M:doubledoubleP:intijmax=a
[0]
[0];fori=0;i2;i++forj=0;jM;j++ifmaxa[i][j]max=a[i][j];returnmax;
59.填空doublefundoublee{inti;doublesx;/**********found**********/s=0;i=__1__;x=
1.0;whilexe{/**********found**********/__2__;/**********found**********/x=
2.0*i-1/__3__*
2.0*i;s=s+x;}returns;}修改给定程序MODI
1.c中函数fun的功能是将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中/************found************/voidfuncharschart{intid;d=strlens;fori=0;id;i++t[i]=s[i];fori=0;id;i++t[d+i]=s[d-1-i];/************found************/t[2*d-1]=\0;}设计函数fun的功能是将s所指字符串中除了下标为奇数,同事ASCII值也为奇数的字符之外,其余的所以有字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中
59、B:0i++
2.0*iM:char*schar*tt[2*d]=\0;P:intij=0;fori=1;istrlens;i+=2ifs[i]%2t[j++]=s[i];t[j]=0;60.填空给定程序中,函数fun的功能是将形参s坐直字符串中的所有字母字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回char*funchar*s{intijkn;char*p*t;n=strlens+1;t=char*mallocn*sizeofchar;p=char*mallocn*sizeofchar;j=0;k=0;fori=0;in;i++{ifs[i]=as[i]=z||s[i]=As[i]=Z{/**********found**********/t[j]=__1__;j++;}else{p[k]=s[i];k++;}}/**********found**********/fori=0;i__2__;i++t[j+i]=p[i];/**********found**********/t[j+k]=__3__;returnt;}修改给定程序MODI
1.c中函数fun的功能是将s所指字符串中最后一次出现的与t1所指字符串相同的字串替换成t2所指字符串,所形成的新串放在w所指的数组中,在此处,要求t1和t2所指字符串的长度相同voidfunchar*schar*t1char*t2char*w{char*p*r*a;strcpyws;/************found************/whilew{p=w;r=t1;while*r/************found************/IF*r==*p{r++;p++;}elsebreak;if*r==\0a=w;w++;}r=t2;while*r{*a=*r;a++;r++;}}设计函数fun的功能是将s所指字符串中ASCII值为奇数的字符删除,串中剩余字符形成新串放在t所指的数组中
60、B:s[i]k0M:*wifP:intij=0;fori=0;istrlens;i++ifs[i]%2==0t[j++]=s[i];t[j]=0;
61.填空给定程序中,函数fun的功能是将形参s所指字符串中的所有数字字符顺序前移,其他字符顺序后移,处理有新字符串的首地址作为函数值返回char*funchar*s{intijkn;char*p*t;n=strlens+1;t=char*mallocn*sizeofchar;p=char*mallocn*sizeofchar;j=0;k=0;fori=0;in;i++{ifisdigits[i]{/**********found**********/p[__1__]=s[i];j++;}else{t[k]=s[i];k++;}}/**********found**********/fori=0;i__2__;i++p[j+i]=t[i];p[j+k]=0;/**********found**********/return__3__;}给定程序MODI1C中函数fun的功能是首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符按排列的顺序交叉合并到c所指数组中,voidfunchar*achar*bchar*c{intij;charch;i=0;j=strlenb-1;/************found************/whileij{ch=b[i];b[i]=b[j];b[j]=ch;i++;j--;}while*a||*b{/************found************/If*a{*c=*a;c++;a++;}if*b{*c=*b;c++;b++;}}*c=0;}函数fun的功能是将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符串形成新串放在t所指数组中
61、B:jkpM:ifP:intij=0;fori=0;istrlens;i++if!i%2==0s[i]%2t[j++]=s[i];t[j]=0;
62.填空给定程序中,函数fun的功能是计算形参x所指数组中N个数的平均值,作为函数值返回;并将大于平均值的书放在形参y所指的数组中,在主函数中输出doublefundoublex[]double*y{intij;doubleav;/**********found**********/av=__1__;/**********found**********/fori=0;iN;i++av=av+__2__;fori=j=0;iN;i++/**********found**********/ifx[i]avy[__3__]=x[i];y[j]=-1;returnav;}修改给定程序MODI1C中函数fun的功能是根据整型变量m,计算如下公式/************found************/funintm{doubley=0d;inti;/************found************/fori=100i=mi+=100{d=doublei*doublei;y+=
1.0/d;}returny;}设计已知学生的记录有学号和学习成绩构成N名学生的数据已存入a结构体数组中,请编写函数fun,函数功能是找出成绩最低的学生记录,通过形参返回主函数
62、B:0x[i]/Nj++M:double;;P:intimin=a
[0].sj=0;fori=1;iN;i++ifmina[i].s{j=i;min=a[i].s;}*s=a[j];
63.填空给定程序中,函数fun的功能是计算x所指数组中N个数的平均值,平均值通过形参返回主函数,将小于平均值的最接近平均值的数作为函数值返回,在主函数中输出doublefundoublex[]double*av{intij;doubleds;s=0;fori=0;iN;i++s=s+x[i];/**********found**********/__1__=s/N;d=32767;fori=0;iN;i++ifx[i]*av*av-x[i]=d{/**********found**********/d=*av-x[i];j=__2__;}/**********found**********/return__3__;}修改给定程序MODI
1.c中函数fun的功能是根据整形形参n,计算如下公式#includestdio.h/************found************/intfunintn{floatA=1;inti;/************found************/fori=2;in;i++A=1/1+A;returnA;}设计程序定义了N*N的二维数组,并在主函数中自动赋值,请编写函数fun,函数的功能是是数组右上三角元素中的值乘以m
63、B:*avix[j]M:float=nP:intij;fori=0;iN;i++forj=i;jN;j++a[i][j]*=m;
83.填空在给定程序中,函数fun的功能是将形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息ss所指字符串数组共有N个字符串,且串长小于M程序中库函数strstrs1s2的功能是在s1串中查找s2串,若没有,函数值为0,若有,为非0修改给定程序MODI
1.C中函数fun的功能是求三个数的最小公倍数例如,给主函数中的变量x
1、x
2、x3分别输入15112,则输出结果应当是330设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是只删除字符串中前导和尾部的*号,串中字母之间的*号都不删除形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数在编写函数时,不得使用C语言提供的字符串函数例如,字符串的内容为*******A*BC*DEF*G****,删除后,A*BC*DEF*G
83、B:Nsubstr0M:intyintzreturnj;P:char*p=a;intj=0len=0;while*p{p++;len++;}whilejlen-h-e{a[j]=a[h+j];j++;}a[j]=0;
84.填空在给定程序中,函数fun的功能是将形参ss所指字符串数组中,将所有串长超过k的字符串中右边的字符删除,只保留左边的k个字符ss所指字符串数组中共有N个字符串,且串长小于M修改给定程序MODI
1.C中函数fun的功能是根据以下公式求π值,并作为函数值返回例如,给指定精度的变量eps输入
0.0005是,应当输出Pi=
3.140578设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是使字母串中的前导*号不得多于n个,若多于n个,则删除多余的*号,若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除例如,字符串的内容为*******A*BC*DEF*G****,若n的值为4,删除后,字符串中的内容应当是****A*BC*DEF*G****;若n的值为8,则字符串中的内容仍为*******A*BC*DEF*G****n的值在主函数中输入在编写函数时,不得使用C语言提供的字符串函数
84、B:[M]N0M:t=1;2*sP:for;a[j]!=0;j++a[i++]=a[j];a[i]=0;
85.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩函数fun的功能是将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中学号和姓名,最后输出修改后的数据修改给定程序MODI
1.C中函数fun的功能是从s所指的字符串中删除所有小写字母c请改正程序中的错误,使它能计算出正确的结果设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是使字母串中的前导*号全部移到字符串的尾部例如,字符串的内容为*******A*BC*DEF*G****,移动后,字符串中的内容应当是A*BC*DEF*G***********在编写函数时,不得使用C语言提供的字符串函数
85、B:ab.namescore[i]M:s[j++]=s[i];s[j]=\0;P:while*p*q++=*p++;
86.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩函数fun的功能是对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据修改给定程序MODI
1.C中函数fun的功能是应用递归算法求形参a的平方根求平方根的迭代公式如下例如,a为2时,平方根值为
1.414214设计假定输入的字符串中只包含字母和*号请编写函数fun,它的功能是将字母串中的前导*号全部移到字符串的尾部例如,字符串的内容为*******A*BC*DEF*G****,移动后,字符串中的内容应当是A*BC*DEF*G***********在编写函数时,不得使用C语言提供的字符串函数
86、B:b-snob-nametM:doublex0x1-x0P:doublet=0;inti;*n=0;fori=0;iN;i++t=t+a[i].s;t=t/N;fori=0;iN;i++ifa[i].stb[*n++]=a[i];returnt;
87.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩函数fun的功能是将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出修改假定整数数列中的数不重复,并存放在数组中给定程序MODI
1.C中函数fun的功能是删除数列中值为x的元素n中存放的是数列中元素的个数设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是把分数最低的学生数据放在b所指的数组中,注意分数最低的学生可能不止一个,函数返回分数最低的学生的人数
87、B:structstudenta.namea.score[i]M:P改小写a[i]=a[i+1];P:intin=0min=a
[0].s;fori=1;iN;i++ifmina[i].smin=a[i].s;fori=0;iN;i++ifa[i].s==minb[n++]=a[i];returnn;
88.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩函数fun的功能是将形参a所指结构体变量s中的数据进行修改,并把a中地址作为函数值返回主函数,在主函数中输出修改后的数据修改给定程序MODI
1.C中函数fun的功能是从N个字符串中找出最长的那个串,并将其地址作为函数返回各字符串在主函数中输入,并放入一个字符串数组中设计函数fun的功能是将a、b中的两个两位正整数合并形成一个新的整数放在c中合并的方式是将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位数依次放在变量c的十位和千位上例如,当a=45,b=12调用函数后,c=
241588、B:structstudent*a-score[i]aM:char*spP:*c=b%10*1000+a/10*100+b/10*10+a%10;
89.填空程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和3门课的成绩函数fun的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大)排序修改给定程序MODI
1.C中函数fun的功能是在p所指的字符串找出ASCII码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向后顺序移动例如,调用fun函数之前给字符串输入ABCEeFGH,调用后字符串的内容为eABCDFGH设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回例如输入的分数是6069,则应当把分数在60到69的学生数据进行输出,包含60分和69分的学生数据,主函数中将把60放在low中,把69放在high中
89、B:structstudentt;n-1a[i].namea[j].nameM:;whileP:intij=0;fori=0;iN;i++ifa[i].s=la[i].s=hb[j++]=a[i];returnj;
90.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩所有学生的数据均以二进制方式输出到student.dat文件中函数fun的功能是从指定文件中找出指定学号的学生数据,读入此学生数据,对该生的分数进行修改,使每门课的分数加3分,修改后重写文件中该学生的数据,即用该学生的新数据覆盖原数据,其它学生的数据不变;若找不到,则什么都不做修改给定程序MODI
1.C中函数fun的功能是利用插入排序法对字符串中的字符按从小到大的顺序进行排序插入法的基本算法是先对字符串中的头两个元素进行排序然后把第三个字符插入到前两个字符中,插入后前三个字符依然有序;再把第四个字符插入到前三个字符中,……待排序的字符串已在主函数中赋予设计N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点请编写函数fun,它的功能是找出学生的最高分,由函数值返回
90、B:fp==fpM:n=strlenaa;ch=aa[i];P:doublemax=h-s;STREC*p;p=h-next;whilep{ifp-smaxmax=p-s;p=p-next;}returnmax;
91.填空给定程序中,函数fun的功能是用函数指针指向要调用的函数,并进行调用规定在_2_处使f指向函数f1,在_3_处使f指向函数f2当调用正确时,程序输出x1=
5.000000,x2=
3.000000,x`*x1+x1*x2=
40.000000修改给定程序MODI
1.C是建立一个带头结点的单向链表,并调用随机函数为各结点赋值函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回设计请编写函数fun,函数的功能是判断字符串是否为回文?若是,函数返回1,主函数中输出YES,否则返回0,主函数中输出NO回文是指顺读和倒读都一样的字符串例如,字符串LEVEL是回文,而字符串123312就不是回文
91、B:doublef1f2M:p=h-next;p=p-next;P:inti=0j=strlenstr-1;whilestr[i++]==str[j--];ifi=jreturn1;return0;
92.填空给定程序中,函数fun的功能是将带头结点的单向链表结点数据域中的数据从小到大排序即若原链表结点数据域从头到尾的数据为
10、
4、
2、
8、6,排序后链表结点的数据域从头至尾的数据为
2、
4、
6、
8、10修改给定程序MODI
1.C是建立一个带头结点的单向链表,并用随机函数为各结点数据域值函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回设计请编写函数fun,函数的功能是将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中的数据的个数存放在形参n的所指的存储单元中例如,二维数组中的数据为333333334444444455555555则一维数组中的内容应是
33333333444444445555555592、B:h-nextp-next=M:p=h-next;p=p-nextP:intij;*n=0;fori=0;imm;i++forj=0;jnn;j++b[*n++]=s[i][j];
93.填空给定程序中,函数fun的功能是将不带头结点的单向链表逆置即若原链表结点数据域从头到尾的数据为
2、
4、
6、
8、10,逆置后,从头至尾的数据为
10、
8、
6、
4、2修改给定程序MODI
1.C中的函数fun的功能是将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指的数组中(规定第一个字符放在第0位中)例如,字符串中的数据为AABBCCDDEEFF则输出应当是ABBCDDEFF设计请编写函数fun,函数的功能是将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中例如,二维数组中的数据为333333334444444455555555则一维数组中的内容应是
33445533445533445533445593、B:NODEnextrM:||t[j]=0;P:fori=0;inn;i++forj=0;jmm;j++{b[np]=s[j][i];np=i*mm+j+1;}
94.填空给定程序中,函数fun的功能是将带头结点的单向链表逆置即若原链表结点数据域从头到尾的数据为
2、
4、
6、
8、10,逆置后,从头至尾的数据为
10、
8、
6、
4、2修改给定程序MODI
1.C中的函数fun的功能是把s所指的字符串中含有t的指字符串的数目,并作为函数值返回设计请编写函数fun,函数的功能是将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串例如,字符串数组中的M个字符串为AAAABBBBBBBCC则合并后的字符串的内容是AAAABBBBBBBCC
94、B:next0rM:r=t;*r==0P:fori=0;iM;i++strcatba[i];
95.填空给定程序中,函数fun的功能是将不带头结点的单向链表结点数据域中的数据从小到大排序即若原链表结点数据域从头到尾的数据为
10、
4、
2、
8、6,排序后链表结点的数据域从头至尾的数据为
2、
4、
6、
8、10修改给定程序MODI
1.C中的函数fun的功能是把s所指的字符串中的字母转换为按字母序列的后续字母(但Z转换为A,z转换为a),其它字符不变设计请编写函数fun,函数的功能是移动一维数组中的内容,若数组中有n个整数,要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后例如,一维数组中的原始内容为1,2,3,4,5,6,7,8,9,10;p的值为3移动后,一维数组中的内容应为5,6,7,8,9,10,1,2,3,
495、B:p-nextqp-nextM:while*ss++P:intij=0b[N];fori=p+1;in;i++b[j++]=w[i];fori=0;i=p;i++b[j++]=w[i];fori=0;in;i++w[i]=b[i];
96.填空给定程序中,函数fun的功能是根据形参i的值返回某个函数的值当调用正确时,程序输出x1=
5.000000,x2=
3.000000,x1*x1+x1*x2=
40.000000修改给定程序MODI
1.C中的函数fun的功能是比较两个字符串,将长的那个字符串的首地址作为函数值返回设计请编写函数fun,函数的功能是移动字符串中的内容,移动的规则如下把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部例如,字符串中原有的内容为ABCDEFGHIJK,m的值为3,则移动后,字符串中的内容应该是DEFGHIJKABC
96、B:doublef1f2M:char*funss++;tt++;P:inti;fori=0;im;i++fun1w;
97.填空给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上修改给定程序MODI
1.C中的函数fun的功能是依次取出字符串中所有数字字符,形成新的字符串,并取代原字符串设计请编写函数fun,函数的功能是将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中;例如,二维数组中的数据为WWWWSSSSHHHH则字符串中的内容应是WSHWSHWSHWSH
97、B:h-nextp-next=M:p=h-next;p=p-nextP:intij;*n=0;fori=0;imm;i++forj=0;jnn;j++b[*n++]=s[i][j];
98.填空给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文本文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi和atof将字符串转换成相应的整数、浮点数,然后将其显示在屏幕上修改给定程序MODI
1.C中的函数fun的功能是对N名学生的成绩,按从高到低的顺序找出前mm=10名学生来,并将这些学生数据存入在一个动态分配的连续存储区中,些存储区的首地址作为函数值返回设计请编写函数fun,函数的功能是删去一维数组中所有相同的数,使之只剩一个数组中数已按由小到大的顺序排列,函数返回删除后数组中数据的个数例如一维数组中的数据是2223445666677899101010删除后,数组中的内容应该是
234567891098、B:FILE*fclosefpfpM:;t[k]=b[j];P:intij=1k=a
[0];fori=1;in;i++ifk!=a[i]{a[j++]=a[i];k=a[i];}a[j]=0;returnj;
99.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩所有学生数据均以二进制方式输出到文件中函数fun的功能是从形参filename所指文件中读入学生数据,并按照学号从小到大排序,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容修改给定程序MODI
1.C中函数fun的功能是在字符串的最前端加入n个*号,形成新串,并且覆盖原串设计请编写函数fun,函数的功能是统计各年龄段的人数N个年龄通过调用随机函数获得,并放在主函数的age数组中;要求函数把0至9年龄段的人数放在d
[0]中,把10至19年龄段的人数放在d
[1]中,把20至29年龄段的人数放在d
[2]中,其余依此类推,把100岁(含100)以上年龄的人数都放在d
[10]中
99、B:rbfwriteM:p=s;;P:intij;fori=0;iM;i++b[i]=0;fori=0;iN;i++{j=a[i]/10;ifj10b[M-1]++;elseb[j]++;}100.填空程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩所有学生数据均以二进制方式输出到文件中函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其它学生的数据不变修改给定程序MODI
1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域0到m-1的值请改正函数Creatlink中指定部位的错误,使它能得出正确的结果设计请编写函数fun,函数的功能是统计一行字符串中单词的个数,作为函数值返回一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格
100、B:filenamefpfpM:NODE*returnhP:intk=1;while*s{if*s==returnk;。