二级C语言等级考试50道编程题.docx
《二级C语言等级考试50道编程题.docx》由会员分享,可在线阅读,更多相关《二级C语言等级考试50道编程题.docx(25页珍藏版)》请在冰豆网上搜索。
二级C语言等级考试50道编程题
1、voidfun(char*w,intm)
{
chara[N];
inti;
for(i=0;ia[i]=w[i];
while(w[i])
{
w[i-m]=w[i];
i++;
}
i--;
m--;
for(;m>=0;m--,i--)
w[i]=a[m];
}
2、intfun(STREC*a,STREC*b,intl,inth)
{
inti,j=0;
for(i=0;i{
if(a[i].s>=l&&a[i].s<=h)
{
b[j]=a[i];
j++;
}
}
returnj;
}
3、fun(STUa[],STU*s)
{
inti;
*s=a[0];
for(i=1;i{
if(a[i].ss)
{
*s=a[i];
}
}
}
4、voidfun(char*ss)
{
inti=1;
while(ss[i-1]&&ss[i])
{
if(ss[i]>='a'&&ss[i]<='z')
ss[i]+='A'-'a';
i+=2;
}
}
5、floatfun(floath)
{
longi=h*1000;
if(i%10<5)
return(i/10)/100.0;
elsereturn(i/10+1)/100.0;
}
6、doublefun(doubleeps)
{
doublei=1,a=1,b=1,c=1,s=0;
while(c>=eps)
{
s+=c;
a*=i;
b*=2*i+1;
c=a/b;
i++;
}
returns*2;
}
7、intfun(intscore[],intm,intbelow[])
{
inti,j=0,s=0;
for(i=0;is+=score[i];
s/=m;
for(i=0;i{
if(score[i]
{
below[j]=score[i];
j++;
}
}
returnj;
}
8、voidfun(char*a)
{inti=0,j=0;
while(a[i])
{if(j==0&&a[i]!
='*')
{j=i+1;
}
elseif(a[i]!
='*')
{a[j]=a[i];
j++;
}
i++;
}
a[j]=0;
}
9、voidfun(char*a)
{inti=0,j=0;
while(a[i])
{
if(a[i]!
='*')
{j=i;
break;
}
i++;
}
while(a[i])
{a[i-j]=a[i];
i++;
}
i-=j;
for(;j>0;j--)
{a[i]='*';
i++;
}
}
10、voidfun(char*a,intn)
{inti=0,j=0;
while(a[i])
{
if(a[i]!
='*')
{
j=i;
break;
}
i++;
}
if(j>n)
{while(a[i])
{
a[i-j+n]=a[i];
i++;
}
a[i-j+n]=0;
}
}
11、voidfun(intx,intpp[],int*n)
{
inti;
*n=0;
for(i=1;i<=x;i+=2)
{
if(x%i==0)
{
pp[*n]=i;
(*n)++;
}
}
}
12、voidfun(char*s,chart[])
{
inti=0,j=0;
while(s[i])
{
if(i%2!
=0||s[i]%2==0)
{
t[j]=s[i];
j++;
}
i++;
}
t[j]=0;
}
13、voidfun(inta,intb,long*c)
{
*c=a/10*100+a%10+b/10*10+b%10*1000;
}
14、doublefun(intn)
{
inti;
doubles=0;
for(i=1;i{
if(i%3==0&&i%7==0)
s+=i;
}
returnsqrt(s);
}
15、voidfun(int(*s)[10],int*b,int*n,intmm,intnn)
{
inti,j;
*n=0;
for(i=0;ifor(j=0;j{
b[*n]=s[i][j];
(*n)++;
}
}
16、intfun(STRECa[])
{
inti,j;
STRECb;
for(i=0;ifor(j=i+1;jif(a[i].s{
b=a[i];
a[i]=a[j];
a[j]=b;
}
}
17、doublefun(intw[][N])
{
doubles=0;
inti;
for(i=0;is+=w[0][i]+w[N-1][i]+w[i][0]+w[i][N-1];
s-=w[0][0]+w[0][N-1]+w[N-1][0]+w[N-1][N-1];
returns/(N*4-4);
}
18、intfun(int*s,intt,int*k)
{
inti;
*k=0;
for(i=0;iif(s[i]>s[*k])*k=i;
}
19、voidfun(char*a)
{
inti=0,j=0;
while(a[i])
{
if(a[i]!
='*')
j=0;
elsej++;
i++;
}
a[i-j]=0;
}
20、intfun(intlim,intaa[MAX])
{
inti,j,k=0;
for(i=2;i<=lim;i++)
{
for(j=2;j
if(i%j==0)
break;
if(j==i)
{
aa[k]=i;
k++;
}
}
returnk;
}
21、voidfun(intm,intk,intxx[])
{
inti,j=m+1,n=0;
while(n{
for(i=2;iif(j%i==0)
break;
if(j==i)
{
xx[n]=i;
n++;
}
j++;
}
}
22、doublefun(STREC*h)
{
doublea=0;
STREC*p=h->next;
while(p)
{
if(as)
a=p->s;
p=p->next;
}
returna;
}
23、doublefun(STREC*a,STREC*b,int*n)
{
inti;
doubles=0;
for(i=0;is+=a[i].s;
s/=N;
*n=0;
for(i=0;iif(a[i].s>s)
{
b[*n]=a[i];
(*n)++;
}
returns;
}
24、intfun(inta[M][N])
{
inti,s=0;
for(i=0;is+=a[0][i]+a[M-1][i];
for(i=1;is+=a[i][0]+a[i][N-1];
returns;
}
25、voidfun(char*s,chart[])
{
inti=0,j=0;
while(s[i])
{
if(i%2==1&&s[i]%2==1)
{
t[j]=s[i];
j++;
}
}
t[j]=0;
}
26、fun(char(*a)[81],intnum,char**max)
{
inti,j,k=strlen(a[0]);
*max=a[0];
for(i=1;i{
j=strlen(a[i]);
if(k{
k=j;
*max=a[i];
}
}
}
27、intfun(char*str)
{
inti,j=0;
while(str[j])
j++;
for(i=0;i<=j/2;i++)
if(str[i]!
=str[j-i-1])
break;
if(i>=j/2)
return1;
elsereturn0;
}
28、intfun(inta[],intn)
{inti,j=0;
for(i=1;i{
if(a[i]!
=a[j])
{j++;
a[j]=a[i];
}
}
returnj+1;
}
29、voidfun(inta[],intn,int*max,int*d)
{inti;
*d=0;
for(i=1;iif(a[i]>a[*d])*d=i;
*max=a[*d];
}
30、intfun(char*s)
{inti=0,j=0,f=1;
while(s[i])
{
if(s[i]<'a'||s[i]>'z')
{if(f)
j++;
f=0;
}
else
f=1;
i++;
}
returnj+1;
}
31、intfun(inta[][N],intm)
{inti,j;
for(i=0;ifor(j=i;ja[i][j]*=m;
}
32、voidfun(char(*s)[N],char*b)
{inti,j,k=0;
for(i=0;ifor(j=0;j{
b[k]=s[j][i];
k++;