/************found************/
if(t[i]==u[k])___1___;
if(k>=ul)
/************found************/
u[ul++]=___2___;
}
}
/************found************/
___3___='\0';
}
main()
{chars[100],t[100],u[100];
printf("\nPleaseenterstrings:
");scanf("%s",s);
printf("\nPleaseenterstringt:
");scanf("%s",t);
fun(s,t,u);
printf("Theresultis:
%s\n",u);
}
//blank8.c参考答案:
/************found************/
if(t[i]==u[k])break;
/************found************/
u[ul++]=t[i];
/************found************/
u[ul]='\0';
10、给定程序的功能是将在字符串s中下标为奇数位置上的字符,紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中字符出现的逆序排列。
(注意0为偶数)
例如:
当s中的字符串为:
"1234567"时,则t中的字符串应为:
"664422"。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank10.c中。
不得增行或删行,也不得更改程序的结构!
/******blank10.c******/
#include
#include
voidfun(char*s,char*t)
{inti,j,sl;
sl=strlen(s);
/************found************/
if(sl%2)sl-=2;___1___sl--;
/************found************/
for(i=sl,j=___2___;i>=0;i-=2)
{t[2*j]=s[i];
/************found************/
t[2*j+1]=___3___;
j++;
}
t[2*j]='\0';
}
main()
{chars[100],t[100];
printf("\nPleaseenterstrings:
");scanf("%s",s);
fun(s,t);
printf("Theresultis:
%s\n",t);
}
//blank10.c参考答案:
/************found************/
if(sl%2)sl-=2;elsesl--;
/************found************/
for(i=sl,j=0;i>=0;i-=2)
/************found************/
t[2*j+1]=s[i];
11、给定程序的功能是将大写字母转换为对应小写字母之后的第五个字母;若小写字母为v~z,使小写字母的值减21。
转换后的小写字母作为函数值返回。
例如,若形参是字母A,则转换为小写字母f;若形参是字母W,则转换为小写字母b。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank11.c中。
不得增行或删行,也不得更改程序的结构!
/******blank11.c******/
#include
#include
charfun(charc)
{if(c>='A'&&c<='Z')
c=c+32;
if(c>='a'&&c<='u')
/**************found**************/
c=c+___1___;
elseif(c>='v'&&c<='z')
c=c-21;
/**************found**************/
return___2___;
}
main()
{charc1,c2;
printf("\nEnteraletter(A-Z):
");c1=getchar();
if(isupper(c1)){
/**************found**************/
c2=fun(___3___);
printf("\n\nTheletter\'%c\'changeto\'%c\'\n",c1,c2);
}
elseprintf("\nEnter(A-Z)!
\n");
}
//blank11.c参考答案:
/**************found**************/
c=c+5;
/**************found**************/
returnc;
/**************found**************/
c2=fun(c1);
12、给定程序功能是计算S=f(-n)+f(-n+1)+…+f(0)+f
(1)+f
(2)+…+f(n)的值。
例如,当n为5时,函数值应为:
10.407143。
┌(x+1)/(x-2)x>0
f(x)=┤0x=0或x=2
└(x-1)/(x-2)x<0
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank12.c中。
不得增行或删行,也不得更改程序的结构!
/******blank12.c******/
#include
#include
floatf(doublex)
{
if(x==0.0||x==2.0)
/************found************/
return___1___;
elseif(x<0.0)
return(x-1)/(x-2);
else
return(x+1)/(x-2);
}
doublefun(intn)
{inti;doubles=0.0,y;
/************found************/
for(i=-n;i<=___2___;i++)
{y=f(1.0*i);s+=y;}
/************found************/
return___3___;
}
main()
{
printf("%f\n",fun(5));
}
//blank12.c参考答案:
/************found************/
return0.0;
/************found************/
for(i=-n;i<=n;i++)
/************found************/
returns;
13、给定程序的功能是求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:
圆面积公式为:
S=πr2,在程序中定义的变量名要与公式的变量相同)。
例如输入圆的半径值:
19.527输出为:
s=598.950017。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank13.c中。
不得增行或删行,也不得更改程序的结构!
/******blank13.c******/
#include
/**********found**********/
floatfun(float___1___)
{
/**********found**********/
return3.14159*___2___/2.0;
}
main()
{floatx;
printf("Enterx:
");
/**********found**********/
scanf("%f",___3___);
printf("s=%f\n",fun(x));
}
//blank13.c参考答案:
/**********found**********/
floatfun(floatr)
/**********found**********/
return3.14159*r*r/2.0;
/**********found**********/
scanf("%f",&x);
16、给定程序的功能是从字符串s尾部开始,按逆序把相邻的两个字符交换位置,并依次把每个字符紧随其后重复出现一次,放在一个新串t中。
例如:
当s中的字符串为:
"12345"时,则t中的字符串应为:
"4455223311"。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank16.c中。
不得增行或删行,也不得更改程序的结构!
/******blank16.c******/
#include
#include
voidfun(char*s,char*t)
{inti,j,sl;
/************found************/
sl=___1___;
for(i=sl-1,j=0;i>=0;i-=2)
{if(i-1>=0)t[j++]=s[i-1];
if(i-1>=0)t[j++]=s[i-1];
t[j++]=s[i];t[j++]=s[i];
}
/************found************/
___2___;
}
main()
{chars[100],t[100];
printf("\nPleaseenterstrings:
");
/************found************/
scanf("%s",___3___);
fun(s,t);
printf("Theresultis:
%s\n",t);
}
//blank16.c参考答案:
/************found************/
sl=strlen(s);
/************found************/
t[j]=0;
/************found************/
scanf("%s",s);
19、给定程序的功能是计算并输出下列级数的前N项之和SN,直到SN+1大于q为止,q的值通过形参传入。
234N+1
SN=─+─+─+…+──
123N
例如,若q的值为50.0,则函数值为50.416687。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank19.c中。
不得增行或删行,也不得更改程序的结构!
/******blank19.c******/
#include
doublefun(doubleq)
{intn;doubles;
n=2;
s=2.0;
/************found************/
while(s___1___q)
{
s=s+(double)(n+1)/n;
/************found************/
___2___;
}
printf("n=%d\n",n);
/************found************/
___3___;
}
main()
{
printf("%f\n",fun(50));
}
//blank19.c参考答案:
/************found************/
while(s<=q)
/************found************/
n++;
/************found************/
returns;
20、给定程序的功能是求k!
(k<13)并通过函数名传回主函数。
例如:
若k=10,则应输出:
3628800。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank20.c中。
不得增行或删行,也不得更改程序的结构!
/******blank20.c******/
#include
longfun(intk)
{
/************found************/
if(k___1___0)
/************found************/
return(k*fun(___2___));
/************found************/
elseif(k___3___0)
return1L;
}
main()
{intk=10;
printf("%d!
=%ld\n",k,fun(k));
}
//blank20.c参考答案:
/************found************/
if(k>0)
/************found************/
return(k*fun(k-1));
/************found************/
elseif(k==0)
21、给定程序的功能是:
读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有为素数的因子)。
例如,若输入整数:
3410,则应输出:
2、5、11、31。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank21.c中。
不得增行或删行,也不得更改程序的结构!
/******blank21.c******/
#include
IsPrime(intn)
{inti,m;
m=1;
for(i=2;i/************found************/
if(!
(n___1___i)){
/************found************/
m=0;___2___;
}
return(m);
}
main()
{intj,k;
printf("\nPleaseenteranintegernumberbetween2and10000:
");
/************found************/
scanf("%d",___3___);
printf("\n\nTheprimefactor(s)of%dis(are):
",k);
for(j=2;j<=k;j++)
if((!
(k%j))&&(IsPrime(j)))printf("\n%4d",j);
printf("\n");
}
//blank21.c参考答案:
/************found************/
if(!
(n%i)){
/************found************/
m=0;break;
/************found************/
scanf("%d",&k);
23、给定程序的功能是分别统计字符串中大写字母和小写字母的个数。
例如,给字符串ss输入:
AaaaBBb123CCccccd,
则输出结果应为:
upper=5,lower=9
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的blank23.c中。
不得增行或删行,也不得更改程序的结构!
/******blank23.c******/
#include
voidfun(char*s,int*a,int*b)
{
while(*s)
{if(*s>='A'&&*s<='Z')
/**********found**********/
___1___;
if(*s>='a'&&*s<='z')
/**********found**********/
___2___;
s++;
}
}
main()
{chars[100];intupper=0,lower=0;
printf("\nPleaseastring:
");gets(