版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序修改提
1、给定程序中,函数ftm的功能是:在任意给定的9个正整数中找出按升序排列时处于中
间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处
理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:1572387582145
按升序排列时的中间数为:8
处理后主函数中输出的数列为:8882387882145
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN9
intfun(intx[])
{inti,j,k,t,mid,b[N];
for(i=0;i<N;I++)B[I]=X[I];
for(i=0;i<=N/2;i++)</N;I++)B[I]=X[I];>
{k=i;
fbr(j=i+l;j<N;J++)IF(B[K]>b[j])k=j;</N;J++)IF(B[K]>
ififk!=i)
(
/**********'fV)und**********/
t=b[i];b[i]=_1_;b[k]=t;
/**********心und**********/
mid=b[_2_];
fbr(i=O;i<N;I++)
/**********%un(j**********/</N,
if(x[i]___3___mid)x[i]=mid;
returnmid;
main()
{inti,x[N]={1,5,7,23,87,5,8,21,45};
for(i=O;i<N;I-H-)PRINTF(H%Dn,X[I]);
printf(n\nThemiddatais:%d\n",fun(x));</N;I++)PRINTF(H%DM,X[I]);>
fbr(i=O;i<N;I++)PRINTF(n%Dn,X[I]);
printf(n\nu);</N;I++)PRINTF(n%DH,X[I]);>
2、给定程序中,函数fun的功能是建立一个NxN的矩阵。矩阵元素的构成规律是:最外
层元素的值全部为1;从外向内第2层元素的值全部为2;第3层元素的值全部为3,…依
次类推。例如,若N=5,生成的矩阵为:
11111
12221
12321
12221
11111
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN7
/**********仿und**********/
voidfun(int(*a)_1_)
{inti,j,k,m;
if(N%2==0)m=N/2;
elsem=N/2+l;
fbr(i=O;i<M;I++){
/**********eund**********/v/M,[++){>
fbr(j=_2_;j<N-I;J++)
a[i]|j]=a[N-i-l][j]=i+l;</N-I;J++)>
fbr(k=i+l;k<N-I;K++)
/**********%und**********/v/N-I,K++)>
a[k][i]=a[k][N-i-l]=_3_;
main()
{intx[N][N]={0},i,j;
fun(x);
printf(n\nTheresultis:\nM);
fbr(i=O;i<N;I++)
{for(j=0;j</N;1++)>
3、给定程序MODI1.C中函数fun的功能是:用冒泡法对6个字符串按由小到大的顺序进
行排序。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
#defineMAXLINE20
fun(char*pstr[6])
{inti,j;
char*p;
for(i=0;i<5;i++){
/***************************/
for(j=i+l,j<6,j++)
(
if(strcmp(*(pstr+i),*(pstr+j))>0)
(
p=*(pstr+i);
*(pstr+i)=pstr+j;
*(pstr+j)=p;
main()
{inti;
char*pstr[6],str[6][MAXLINE];
for(i=0;i<6;i++)pstr[i]=str[i];
printsu\nEnter6string(1stringateachline):\n");
fbr(i=0;i<6;i++)scanff%s”,pstr[i]);
fun(pstr);
printff'Thestringsaftersorting:\nu);
fbr(i=0;i<6;i++)printff%s\n”,pstr[i]);
)
4、给定程序MODI1.C中函数fun的功能是:计算函数F(x,y,z)=(x+y)/(x・y)+(z+y)/(z・y)的值。
其中x和y的值不等,z和y的值不等。
例如,当x的值为9、y的值为11、z的值为15时,函数值为-3.50o
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
#include
#include
/***********,Cund************/
#defineFU(m,n)(m/n)
floatfun(floata,floatb,floatc)
{floatvalue;
value=FU(a+b,a-b)+FU(c+b,c-b);
/************fk)und************/
Retum(Value);
main()
{floatx,y,z,sum;
printff'Inputxyz:”);
scanf(u%f%f%f,,&x,&y,&z);
printf(nx=%f,y=%f;z=%f\nn,x,y,z);
if(x==y||y=z){printf("Dataerror!\nM);exit(0);)
sum=fun(x,y,z);
printf(HTheresultis:%5.2f\nn,sum);
)
5、给定程序MODILC中函数fun的功能是:用下面的公式求兀的近似值,直到最后一项
的绝对值小于指定的数(参数num)为止:
兀111
------=1-++...
4357
例如,程序运行后,输入0.0001,则程序输出3.1414。
请改正程序中的错误,使它能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
floatfun(floatnum)
floatn,t,pi;
t=l;pi=0;n=l;s=l;
/**************必und**************/
while(t>=num)
pi=pi+1;
n=n+2;
/**************必und**************/
t=s%n;
}
pi=pi*4;
returnpi;
main()
{floatn1,n2;
printff'Enterafloatnumber:");
scanfC1%r,&nl);
n2=fiin(nl);
printf(”%6.4f\n”,n2);
।
、给定程序MODH.C中函数fun的功能是:求出数组中最大数和次最大数,并把最大数和
a[0]中的数对调、次最大数和a[l]中的数对调。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#defineN20
voidfun(int*a,intn)
{inti,m,t,k;
for(i=0;i<2;i++){
/**********Cund**********/
m=0;
for(k=i+l;k
/**********仿und**********/
if(a[k]>a[m])k=m;
t=a[i];a[i]=a[m];a[m]=t;
main()
{intb[N]={l1,5,12,0,3,6,9,7,10,8},n=10,i;
for(i=0;i
fun(b,n);
for(i=0;i
7、例如,若给m输入-100,给n输入90,则函数求得的一个根值为2.000。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
#include
doublefunx(doublex)
{retum(2*x*x*x-4*x*x+3*x-6);}
doublefun(doublem,doublen)
/************Cund************/
intr;
r=(m+n)/2;
/************Cund************/
while(fabs(n-m)<0.001)
{if(fiinx(r)*funx(n)<0)m=r;
elsen=r;
r=(m+n)/2;
)
returnr;
}
main()
{doublem,n,root;
printf(nEntermn:\nn);scanf(n%lf%lf',&m,&n);
root=fun(m,n);
printf(Hroot=%6.3f\n",root);
}
8、给定程序MODILC中函数fun的功能是:根据整型形参m,计算如下公式的值。
1111
y=-------+----------+----------+.........+--------
100*100200*200300*300m*m
例如,若m=2000,则应输出:0.000160o
请改正程序中的语法错误,使它能计算出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
fun(intm)
{doubley=0,d;
inti;
/************Cund************/
fbr(i=100,i<=m,i+=100)
{d=(double)i*(double)i;
y+=1.0/d;
}
return(y);
}
main()
{intn=2000;
printf(u\nTheresultis%lf\n",fun(n));
}
9、给定程序MODI1.C中函数fun的功能是:统计字符串中各元音字母(即:A、E、I、0、
U)的个数。注意:字母不分大、小写。
例如:若输入:THIsisaboot,则输出应该是:1、0、2、2、0。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
voidfun(char*s,intnum[5])
{intk,i=5;
for(k=0;k
/**********^^)und**********,
num[i]=0;
for(;*s;s-H-)
{i=-l;
switch(s)
{case*a':caseA:{i=0;break;}
case*e':case'E':{i=l;break;}
caseT:caseT:{i=2;break;}
case'o':case'O':{i=3;break;}
case*u*:caseU:{i=4;break;}
if(i>=0)
num[i]-H-;
}
।
main()
{charsi[81];intnuml[5],i;
printfif"\nPleaseenterastring:");gets(si);
fun(si,numl);
for(i=0;i<5;i++)printf(n%dn,numl[i]);printf(M\n");
10、给定程序MODI1.C的功能是:读入一个英文文本行,将其中每个单词的第一个字母改
成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。
例如,若输入:Iamastudenttotaketheexamination.,
则应输出:IAmAStudentToTakeTheExamination.o
请改正程序中的错误,使程序能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
/************ft)und************/
include
/************d************/
voidupfst(charp)
{intk=0;
fbr(;*p;p++)
if(k)
{if(*p=,!)k=O;}
elseif(*p!=1*)
{k=1;*p=toupper(*p);}
main()
{charchrstr[81];
printsu\nPleaseenteranEnglishtextline:”);gets(chrstr);
printf(u\n\nBefbrechanging:\n%sn,chrstr);
upfst(chrstr);
prints"'-Afterchanging:\n%s\nu,chrstr);
}
11、给定程序M0DI1.C中函数fun的功能是:求出两个非零正整数的最大公约数,并作为
函数值返回。
例如,若给numl和num2分别输入49和21,则输出的最大公约数为7;若给numl
和num2分别输入27和81,则输出的最大公约数为27。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
intfun(inta,intb)
{intr,t;
if(a
/************ft)und************/
t=a;b=a;a=t;
)
r=a%b;
while(r!=0)
{a=b;b=r;r=a%b;}
/************************/
retum(a);
main()
{intnuml,num2,a;
printf(nInputnumlnum2:");scanf("%d%dn,&num1,&num2);
printf("numl=%dnum2=%d\n\nn,numl,num2);
a=fun(num1,num2);
printff'Themaximuncommondivisoris%d\n\nu,a);
}
12、给定程序MODILC中函数fun的功能是:将tt所指字符串中的小写字母都改为对应的
大写字母,其它字符不变。
例如,若输入"Ab,cD",则输出"AB,CD"。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
char*fun(chartt[])
(
inti;
for(i=0;tt[i];i++)
if((<=tt[i])||(tt[i]<=>/))
tt[i]+=32;
retum(tt);
}
main()
{
chartt[81];
printf("\nPleaseenterastring:");
gets(tt);
printf("\nTheresultstringis:\n%s",fun(tt));
)
13、给定程序M0DI1.C的功能是:读入一个整数k(2WkW10000),打印它的所有质因子(即所
有为素数的因子)。
例如,若输入整数:2310,则应输出:2、3、5、7、11。
请改正程序中的语法错误,使程序能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
/************Cund************/
IsPrime(intn);
{inti,m;
m=1
for(i=2;i<n;i++)
if!(n%i)
{m=0;break;}
return(m);
}
main()
{intj,k;
printf(u\nPleaseenteranintegernumberbetween2and10000:");scanf(u%dn,&k);
printf(H\n\nTheprimefactor(s)of%dis(arek);
for(j=2;j<=k;j+4-)
if((!(k%j))&&(IsPrime(j)))printf(u\nM",j);
printf(n\nH);
}
14、给定程序M0DI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,
最小的放在c中,中间的放在b中。
例如,输入的数为:551234,
输出结果应当是:a=55.0,b=34.0,c=12.0»
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include
voidfun(float*a,float*b,float*c)
/**********仿und**********/
float*k;
if(*a<*b)
{k=*a;*a=*b;*b=k;}
/**********^^)und**********,
if(*a>*c)
{k=*c;*c=*a;*a=k;}
if(*b<*c)
{k=*b;*b=*c;*c=k;}
main()
{floata,b,c;
printf(nInputabc:”);scanf(,,%f%f%f,,&a,&b,&c);
printf("a=%4.1f,b=%4.1f,c=%4.1f\n\nu,a,b,c);
fun(&a,&b,&c);
printf(na=%4.1f,b=%4.1f,c=%4.1f\n\nn,a,b,c);
15、给定程序M0DI1.C中函数fUn的功能是:依次取出字符串中所有数字字符,形成新的字
符串,并取代原字符串。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
voidfun(char*s)
{inti,j;
for(i=O,j=O;s[i]!=''0';i++)
if(s[i]>=,0,&&s[i]<=,9,)
/*******************,
s[j]=s[i];
/**********仿und**********/
s0]=n\Ou;
main()
{charitem[80];
printfi(n\nEnterastring:n);gets(item);
printf(n\n\nThestringis:\"%s\n\n",item);
fun(item);
printf(H\n\nThestringofchangingis:V,%s\,'\nn,item);
}
16、给定程序中,函数fun的功能是:找出NxN矩阵中每列元素中的最大值,并按顺序依
次存放于形参b所指的一维数组中。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN4
voidfiin(int(*a)[N],int*b)
{inti,j;
for(i=0;i<N;I++){
b[i]=_l_;
for(j=l;j<N;J++)
y**********fgufid**********/V/N,J-1—1-)>
if(b[i]_2_aU][i])b[i]=a[j][i];
main()
{intx[N][N]={{12,5,8,7},{6,1,9,3},{1,2,3,4},{2,8,4,3}},y[N],ij;
printf(n\nThematrix:\nn);
fbr(i=O;i<N;I++)
{for(j=O;j<N;J++)PRINTF("Mn,X[I][J]);
printf(n\nH);</N;J++)PRINTF(HM';X[I][J]);></N;1++)>
/**********仿und**********/
fun(_3_);
printf(n\nTheresultis:");
for(i=0;i<N;I++)PRINTF(n=",Y[I]);
}</N;I++)PRINTF(n=n,Y[I]);>
17、给定程序中,函数fun的功能是:统计形参s所指字符串中数字字符出现的次数,并存
放在形参t所指的变量中,最后在主函数中输出。例如,形参s所指的字符串为:
abcdef35adgh3kjsdf7o输出结果为:4。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
voidfun(char*s,int*t)
{inti,n;
n=0;
/**********^Qund**********/
fbr(i=O;_1_!=0;i++)
/**********命und**********/
if(s[i]>=,0,&&s[i]<=___2___)n++;
/**********^ound**********/
_3_;
)
main()
{chars[80]=nabcdef35adgh3kjsdnn;
intt;
printf(n\nTheoriginalstringis:%s\n*',s);
fun(s,&t);
printf("\nTheresultis:%d\n",t);
}
18、函数fbn的功能是:把形参a所指数组中的最小值放在元素a[0]中,接着把形参a所指
数组中的最大值放在a[l]元素中;再把a所指数组元素中的次小值放在a[2]中,把a所指数
组元素中的次大值放在a[3];其余以此类推。例如:若a所指数组中的数据最初排列为:9、
1、4、2、3、6、5、8、7;则按规则移动后,数据排列为:1、9、2、8、3、7、4、6、5。
形参n中存放a所指数组中数据的个数。
注意:规定fun函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN9
voidfun(inta[],intn)
{inti,j,max,min,px,pn,t;
for(i=0;i<N-l;I+=2)
{</N-l;I+=2)>
/**********'fV)und**********/
max=min=___1___;
px=pn=i;
for(j=i+l;j<N;J++){
/**********命und**********/v/N‘J++){>
if(max<__2___)
{max=a[j];px=j;}
/**********心und**********/
if(min>_3_)
{min=a[j];pn=j;}
if(pn!=i)
{t=a[i];a[i]=min;a[pn]=t;
if(px=i)px=pn;
if(px!=i+1)
{t=a[i+l];a[i+l]=max;a[px]=t;}
main()
{intb[N]={9,l,4,2,3,6,5,8,7},i;
printf(H\nTheoriginaldata:\nH);
for(i=0;i<N;I++)PRINTF(”M”,B[I]);
printf(n\nn);</N;I++)PRINTF("M",B[I]);>
fiin(b,N);
printff'\nThedataaftermoving:\nM);
for(i=0;i<N;I++)PRINTF(nM”,B[I]);
printf(n\nn);</N;I++)PRINTF("M",B[I]);>
19、给定程序中,函数fun的功能是:将形参s所指字符串中的所有数字字符顺序前移,其
他字符顺序后移,处理后新字符串的首地址作为函数值返回。
例如,s所指字符串为:asdl23fgh5##43df,
处理后新字符串为:123543asdfgh##df。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#include
#include
char*fun(char*s)
{inti,j,k,n;char*p,*t;
n=strlen(s)+l;
t=(char*)malloc(n*sizeof(char));
p=(char*)malloc(n*sizeof(char));
j=0;k=0;
for(i=O;i<N;I++)
{if(isdigit(s[i])){</N;1++)>
P[_l_]=s[i];j++;)
else
{t[k]=s[i];k++;}
/*******************,
for(i=O;i<2_;i++)p[j+i]=t[i];
p[j+k]=O;
/**********found**********/
return3
main()
{chars[80];
printf(nPleaseinput:”);scanf("%sn,s);
printf(n\nTheresultis:%s\n",fun(s));
20、给定程序中,函数fun的功能是:有NxN矩阵,根据给定的m(m<=N)值,将每行元
素中的值均右移m个位置,左边置为0。例如,N=3,m=2,有下列矩阵
123
456
789程序执行结果为
001
004
007
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN4
voidfun(int(*t)[N],intm)
{inti,j;
/**********found**********/
for(i=0;i<N;—1—)
{fbr(j=N-l-m;j>=0;j—)</N;___1___)>
/**********心und**********/
t[i]U+_2_]=t[i]U];
/**********found**********/
for(j=O;j<_3_;j++)
t[i]Li]=o;
main()
{intt[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10),i,j,m;
printf(n\nTheoriginalarrayAn");
for(i=0;i<N;I++)
{for(j=O;j<N;J++)
printf(n-n,t[i][j]);</N;J-H-)x/N;1++)>
printf(n\nH);
}
printf(nInputm(m<=%d):”,N);scanf(”%d”,&m);
fun(t,m);
printf(n\nTheresultis:\nn);
fbr(i=O;i<N;I++)
{for(j=O;j<N;J++)
printf(!,-",t[i][j]);</N;J-H-)X/N;
printf(H\nM);
}
)
21、函数fun的功能是:把形参a所指数组中的偶数按原顺序依次存放到a[0],a[l].a[2].........
中,把奇数从数组中删除,偶数个数通过函数值返回。例如:若a所指数组中的数据最初排
列为:9、1、4、2、3、6、5、8、7,删除奇数后a所指数组中的数据为:4、2、6、8,返
回值为4。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN9
intfiin(inta[],intn)
{intij;
j=0;
for(i=0;i<N;I++)
/**********qund**********/v/N'
if(_1_==0){
/**********found**********/
一2_=a[i];j++;
/**********found**********/
return3
main()
{intb[N]={9,l,4,2,3,6,5,8,7},i,n;
printf(H\nTheoriginaldata:\nH);
for(i=0;i<N;I++)PRINTF(”M”,B[I]);
printf(n\nn);</N;I++)PRINTF("M",B[I]);>
n=fun(b,N);
printf(n\nThenumberofeven:%d\nu,n);
printf(n\nTheeven:\n");
for(i=0;i<N;I++)PRINTF(nM”,B[I]);
printf(n\nn);</N;I++)PRINTF("M",B[I]);>
22、给定程序中,函数ftm的功能是:判定形参a所指的NxN(规定N为奇数)的矩阵是
否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵
每行、每列、主对角线及反对角线上元素之和都相等。
例如,以下3x3的矩阵就是一个“幻方”:
492
357
816
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN3
intfun(int(*a)[N])
{inti,j,m1,m2,row,colum;
ml=m2=0;
for(i=0;i<N;I++)
{j=N-i-l;ml+=a[i][i];m2+=a[i][j];}</N;
ifi(ml!=m2)return0;
for(i=0;i<N;I++){
/**********%un(j**********/v/N,J-H-){>
row=colum=_1_;
for(j=O;j<N;J++)
{row+=a[i][j];colum+=a[j][i];}</N;J-H-)>
/**********仿und**********/
if((row!=colum)_2_(row!=ml))return0;
/**********仿und**********/
return3
main()
{intx[N][N],i,j;
printff^Enternumberforarray:\nH);
for(i=0;i<N;I++)
for(j=0;j<N;J++)SCANF("%D",&X[I][J]);
printf(',Array:\nH);</N;J++)SCANF("%D",&X[I][J]);></N;I++)>
for(i=0;i<N;I++)
{for(j=O;j<N;J++)PRINTF("=”,X[I][J]);
}</N;J++)PRINTF(H=n,X[I][J]);></N;I++)>
ifi(fun(x))printffTheArrayisamagicsquareAn");
elseprintfC'TheArrayisn'tamagicsquareAn");
23、给定程序中,函数fun的功能是将a和b所指的两个字符串分别转换成面值相同的整数,
并进行相加作为函数值返回,规定字符串中只含9个以下数字字符。
例如,主函数中输入字符串:32486和12345,在主函数中输出的函数值为:44831。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#include
#defineN9
longctod(char*s)
{longd=0;
while(*s)
if(isdigit(*s)){
/*******************,
d=d*10+*s-1
/**********仿und**********/
2
returnd;
longftm(char*a,char*b)
/**********仿und**********/
return_3_;
main()
{charsl[N],s2[N];
do
{printf("Inputstringsi:");gets(sl);}
while(strlen(sl)>N);
do
{printf(uInputstrings2:");gets(s2);}
while(strlen(s2)>N);
printf(HTheresultis:%ld\n",fun(s1,s2));
)
24、给定程序中,函数fun的功能是:把形参s所指字符串中下标为奇数的字符右移到下一
个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动
(注:字符串的长度大于等于2)。例如,形参s所指的字符串为:abcdefgh,执行结果为:
ahcbedgfo
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
voidfun(char*s)
{inti,n,k;charc;
n=0;
fbr(i=O;s[i]!='\0';i++)n++;
/**********found**********/
if(n%2==0)k=n-_1_;
elsek=n-2;
/**********^^)und**********,
c=2
for(i=k-2;i>=l;i=i-2)s[i+2]=s[i];
/**********^^)und**********,
s[l]=_3_;
main()
{chars[80]=uabcdefghH;
printff'WTheoriginalstringis:%s\nu,s);
fun(s);
printf(n\nTheresultis:%s\nn,s);
25、给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,将
其余字符串右边用字符*补齐,使其与最长的字符串等长。ss所指字符串数组中共有M个字
符串,且串长
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#defineM5
#defineN20
voidfun(char(*ss)[N])
{inti,j,n,len=0;
fbr(i=O;i<M;I++)
{len=strlen(ss[i]);</M;I++)>
ifi(i==0)n=len;
if(len>n)n=len;
fbr(i=O;i〈M;I++){
/**********%und**********/v/M,[++)|>
n=strlen(___1___):
for(j=O;j<LEN-N;J++)
/**********f^)und**********/v/LEN・N•J-H-^>
ss[i][_2_]='*';
/**********found**********/
ss[i][n+j+-3_]='\0';
main()
{charss[M][N]={nshanghai",ngiiangzhou",,,beijing","tianjing,,,ncchongqingn);
inti;
printff'Theoriginalstringsare:\nn);
for(i=0;i<M;I++)PRINTF(H%S\Nn,SS[I]);
printf(n\nn);</M;I++)PRINTF(n%S\NH,SS[I]);>
fun(ss);
printf(HTheresultis:\n");
for(i=O;i<M;I++)PRINTF(H%S\Nn,SS[I]);
}</M;I++)PRINTFC%S\N';SS[I]);>
26、给定程序中,函数ftin的功能是:将NxN矩阵中元素的值按列右移1个位置,右边被
移出矩阵的元素绕回左边。例如,N=3,有下列矩阵
123
456
789计算结果为
312
645
978
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defineN4
voidfun(int(*t)[N])
{inti,j,x;
/**********仿und**********/
fbr(i=O;i<___1___;i++)
/**********^^)und**********,
x=t[i][_2_];
for0=N-l;j>=l;j-)
t[i]U]=t[i]U-l];
/**********found**********/
t[i][_3_]=x;
main()
{intt[][N]={21,12,13,24,25,16,47,38,29,l1,32,54,42,21,33,10},i,j;
printff'Theoriginalarray:\n");
for(i=0;i<N;I++)
{for(j=O;j<N;J++)PRINTF(M-",T[I][J]);
printf(n\nH);</N;J++)PRINTF("-n,T[I][J]);x/N;1++)>
fun(t);
printf(n\nTheresultis:\nn);
for(i=0;i<N;I++)
{for(j=O;j<N;J++)PRINTF(n-M,T[I][J]);
printf(n\nH);</N;J++)PRINTF(n-n,T[I][J]);></N;I-H-)>
27、给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。当调用正确时,程
序输出:
xl=5.000000,x2=3.000000,xl*xl+xl*x2=40.000000
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKLC中。
不得增行或删行,也不得更改程序的结构!
#include
doublefl(doublex)
{returnx*x;}
doublef2(doublex,doubley)
{returnx*y;}
/*******************,
_1_fun(inti,doublex,doubley)
{if(i==D
/*******************,
return_2_(x);
else
/*******************,
return_3_(x,y);
main()
{doublexl=5,x2=3,r;
r=fiin(l,xl,x2);
r+=fun(2,xl,x2);
printf(n\nxl=%f,x2=%f,xl*xl+xl*x2=%f\n\nu,xl,x2,r);
}
28、给定程序的主函数中,己给出由结构体构成的链表结点a、b、c,各结点的数据域中均
存入字符,函数fun()的作用是:将a、b、c三个结点链接成一个单向链表,并输出链表结
点中的数据。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
typedefstructlist
{chardata;
structlist*next;
(Q;
voidfun(Q*pa,Q*pb,Q*pc)
{Q*P;
/**********found**********/
pa->next=1___;
pb->next=pc;
P=pa;
while(p)
/**********^^)und**********,
printf(H%cu,2);
/**********仿und**********/
P=3.
printf(n\nH);
main()
{Qa,b,c;
a.data=,E,;b.data=,F,;c.data=,G,;c.next=NULL;
fiin(&a,&b,&c);
)
29、给定程序中,函数fun的功能是:对形参ss所指字符串数组中的M个字符串按长度由
短到长进行排序。ss所指字符串数组中共有M个字符串,且串长
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#defineM5
#defineN20
voidfun(char(*ss)[N])
{inti,j,k,n[M];chart[N];
fbr(i=O;i<M;I++)N[I]=STRLEN(SS[I]);
for(i=0;I-H-)
{k=i;v/M-1;I++)>v/M;I++)N[I]=STRLEN(SS[I]);>
/**********found**********/
for(j=_1_;j<M;J++)
/**********%und**********/v/M*
if(n[k]>nU])_2_:
if(k!=i)
{strcpy(t,ss[i]);
strcpy(ss[i],ss[k]);
/**********仿und**********/
strcpy(ss[k],_3_);
n[k]=n[i];
main()
{charss[M][N]={nshanghai";,guangzhou',,nbeijing',,ntianjing,,,ncchongqingM};
inti;
printff'WTheoriginalstringsare:\nn);
for(i=O;i<M;I++)PRINTF(H%S\Nn,SS[I]);
printf(n\nn);</M;I-H-)PRINTF(n%S\NH,SS[I]);>
fun(ss);
printf(n\nTheresult:\nH);
fbr(i=O;i<M;I++)PRINTF(u%S\Nn,SS[I]);
}</M;I++)PRINTF(n%S\Nn,SS[I]);>
30、给定程序中,函数ftm的作用是:统计整型变量m中各数字出现的次数,并存放到数
组a中,其中:a[0]存放0出现的次数,a[l]存放1出现的次数,……a[9]存放9出现的次数。
例如,若m为14579233,则输出结果应为:0,1,1,2,1,1,0,1,0,1,
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
voidfun(intm,inta[10])
{inti;
for(i=0;i<10;i++)
/**********found**********/
l_=0;
while(m>0)
/**********仿und**********/
i=2
a[i]++;
/**********f^)und**********j
m=___3___;
}
)
main()
{intm,a[10],i;
printf(”请输入一个整数:");scanff%d”,&m);
fun(m,a);
for(i=O;i<10;i++)printf("%d,H,a[i]);printf("\n");
)
31、给定程序中,函数fun的功能是:在形参s所指字符串中的每个数字字符之后插入一个
*号。例如,形参s所指的字符串为:def35adh3kjsdf7»执行结果为:def3*5*adh3*kjsdf7*。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
voidfun(char*s)
{inti,j,n;
for(i=0;s[i]!=,\0,;i++)
/**********Cund**********/
if(s[i]>=U—1_s[i]<=,9,)
{n=0;
/**********^^)und**********,
while(s[i+l+n]!=___2___)n++;
for(j=i+n+l;j>i;j-)
/**********^^)und**********,
s[j+l]=_3_:
sLi+i]='*';
i=i+l;
main()
{chars[80]=nba3a54cd23an;
printff'WTheoriginalstringis:%s\nu,s);
fiin(s);
printf(n\nTheresultis:%s\nn,s);
32、函数fun的功能是:输出a所指数组中的前n个数据,要求每行输出5个数。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
voidfun(int*a,intn)
{inti;
fbr(i=O;i<N;I++)
{</N;1++)>
/*******************,
iff_1_=0)
/**********仿und**********/
printfC1_2_”);
/**********found**********/
printf(n%dn,_3_);
main()
{inta[100]={0},i,n;
n=22;
for(i=O;i<N;I++)A[I]=RAND()!;
fun(a,n);</N;I-H-)A[I]=RAND()!;>
printf(n\nH);
}
33、给定程序中,函
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川省自贡市2022-2023学年七年级下学期期末考试数学试卷(无答案)
- 消防站副食品配送服务项目投标技术方案(技术标)
- 4S店维护清洗项目投标技术方案(技术标)
- 2.2 基本不等式(第2课时)(教学设计)-高一数学同步备课系列(人教A版2019必修第一册)
- 广东省汕头市下蓬中学2024届高一数学第二学期期末联考试题含解析
- 退换货管理办法及流程
- 2024届上海市宝山区通河中学数学高一下期末学业水平测试模拟试题含解析
- 基坑工程与边坡支护智慧树知到期末考试答案章节答案2024年青岛理工大学
- 计算机程序设计(C语言)智慧树知到期末考试答案章节答案2024年北华大学
- 计算机应用基础智慧树知到期末考试答案章节答案2024年益阳市第一职业中专学校
- 2023-2024学年新疆维吾尔自治区乌鲁木齐市初中语文七年级下册期末模考考试题
- 语文教师“读书种子计划”推荐书目(100种)
- 保研夏令营自我介绍范文
- 2023年全国甲卷语文高考真题(含答案)
- 小儿脑瘫的作业疗法演示
- 接触网工程施工工艺手册(简版)
- GB/T 20028-2005硫化橡胶或热塑性橡胶应用阿累尼乌斯图推算寿命和最高使用温度
- 青岛版科学(2017)六三制六年级下册第4单元《能量的转换》全单元课件
- GB 41700-2022电子烟
- GA/T 1449-2017法庭科学印章印文检验技术规程
- 2023年高考英语试题及答案(北京卷)
评论
0/150
提交评论