问答题函数fun的功能是:把形参a所指数组中的偶数按原顺序依次存放到a[0],a[1]、a[2]、……中,把奇数从数组中删除,偶数个数通过函数值返回。例如:
若a所指数组中的数据最初排列为:9、1、4、2、3、6、
5、8、7,删除奇数后a所指数组中的数据为:4、2、6、8,返回值为4。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#define N 9
int fun (int a[], int n)
{ int i,j;
j = 0;
for(i=0;i
问答题给定程序MODI1.C中函数fun的功能是:根据整型形参m,计算如下公式的值。
1 1 1 1
y = ------- + --------- + --------- + …… + -------
100*100 200*200 300*300 m*m
例如,若m = 2000,则应输出: 0.000160。
请改正程序中的语法错误,使它能计算出正确的结果。
注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
/************found************/
fun ( int m )
{ double y = 0, d ;
int i ;
/************found************/
for( i = 100, i <= m, i += 100 )
{ d = (double)i * (double)i ;
y += 1.0 / d ;
}
return( y ) ;
}
main( )
{ int n = 2000 ;
printf( "/nThe result is %lf/n", fun ( n ) ) ;
}
问答题编写函数fun(),其功能是:求ss所指字符串中指定字符的个数,并返回此值。
例如,若输入字符串“123412132”,输入字符为“1”,则输出3。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。
试题程序:
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#define M 81
int fun(char*ss, char c)
{
}
void main()
{
char a[M], ch;
system("CLS");
printf("/n Please enter a string:");
gets(a);
printf("/nPlease enter a char:");
ch=getchar();
printf("/nThe number of the char is:%d/n", fun(a, ch));
}
问答题请编写函数fun,其功能是:计算并输出给定数组(长度为9)中每相邻两个元素的平均值的平方根之和。
例如,若给定数组中的9个元素依次为1210、3410、410、230、340、450、180、310、110,则输出应为S=35.951014。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<math.h>
double fun(double x[9])
{
}
main()
{
double s,a[9]={12.0,34.0,4.0,23.0,34.0,45.0,18.0,3.0,11.0};
int i;
printf("/nThe original data is:/n");
for(i=0;i<9;i++)
printf("%6.1f",a[i]);
printf("/n/n");
s=fun(a);
printf("S=%f/n/n",s);
}
问答题请编写函数fun,其功能是:判断t所指字符串中的字母是否由连续递增字母序列组成(字符串长度大于等于2)。例如字符串:uvwxyz满足要求;而字符串:uvxwyz不满足要求。注意:部分源程序存放在PROGl.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun指定的部位填入所编写的若干语句。试题程序:#include<stdio.h>#include<string.h>void NONO();int fun(char*t){}main(){char s[26];printf("请输入一个字母组成的字符串:");gets(s);if(fun(s))printf("%s是由连续字母组成的字符串.\n",s);else pfinff("%s不是由连续字母组成的字符串!\n",s);NONO();}void NONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*fp,*wf;int i;char s[26],*p;fp=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fgets(s,26,fp);p=strchr(s,'\n');if(p)*p=0;if(fun(s))fprintf(wf,"%s\n",s+2);else finff(wf,"%s\n",strrev(s));}fclose(fp);fclose(wf);}
问答题请编写函数fun,其功能是将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。
例如,当a=16,b=35,调用该函数后,c=5361。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
void fun(int a,int b/long*c)
{
}
main()
{
int a,b;
long c;
clrscr();
printf("Input a,b;");
scanf("%d%d",&a,&b);
fun(a,b,&c);
printf("The result is:%ld/n",c);
}
问答题下列给定程序中,函数fun的功能是:求s的值。例如,当k为10时,函数的值应为1.533852。请改正程序中的错误,使它能得出正确的结果。注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#include<math.h>/*********found*********/fun(intk){intn;floats,w,p,q;n=1;s=1.0;while(n<=k){w=2.0*n;P=w一1.0;q=w+1.0;S=s*w*w/p/q;n++;}/*********found*********/returns}voidmain(){system("CLS"),printf("%f\n",fun(10));}
问答题给定程序MODI1.C中,函数fun的功能是:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。若是,则输出所有可能的序列,否则输出“不能分解”。例如:当输入100时,输出:100 =9+10+11+12+13+14+15+16100 =18+19+20+21+22请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include < stdio.h >void fun ( int n ){ int j, b, c, m, f1ag=0;for(b=1;b < =n/2;b++){/*********found*********/n=m;c=b;while(m!=0&&m >=c){/*********found*********/m=m—c;c++}/*********found*********/if(m!=0){printf("%d=",n);for(j=b;j < c一1;j++)printf("%d+",j);printf("%d/n",j);f1ag=1;}}if(f1ag=0)printf("不能分解/n");}main(){ int n;printi("请输入一个整数:");scanf("%d",&n);fun(n);}
问答题编写函数,调用随机函数产生0到19之间的随机数,在数组中存入15个互不重复的整数。要求在主函数中进行输出结果。若已定义x为int类型,调用随机函数步骤如下:
#include<stdlib.h>
x=rand()%20; /*产生0到19的随机数*/
问答题下列程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为: 0 1 2 7 9 1 9 7 4 5 2 3 8 3 1 4 5 6 8 2 5 9 1 4 1 则返回主程序后s的值应为3. 375。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数rruun和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序:#include < stdio.h >#include < conio .h >#include < stdlib .h >#define N 5double fun (int w[] [N]){}void main (){ FILE *wf; int a[N][N] = {0,1,2 f 7,9,1,9, 7 , 4 , 5,2 , 3 , 8 , 3 , 1 , 4 , 5 , 6 , 8 , 2 , 5,9, 1,4,1}; int i, j; double s; system ( "CLS") ; printf (" *** The array *** /n ") ; printf "'/n ") ; s = fun (a) ; printf (" *** THE RESULT *** /n ") ; printf("The sum is : oo lf/n ",s);/******************/ wf = fopen ("out.dat", "w") ; fprintf (wf, "% lf",s) ; fclose (wf) ;/******************/}
问答题假定输入的字符串中只包含字母和*号。请编写函数proc(),它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。
例如,若字符串中的内容为****a*bc*def*g****,删除后,字符串中的内容则应当是****a*bc*def*g。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
void proc(char *str)
{
}
void main()
{
char s[81];
printf("Enter a string:/n");
gets(s);
proc(s);
printf("The string after deleted:/n");
puts(s);
}
问答题下列给定程序中,函数tim的功能是:先将字符串s中的字符按正序存放到字符串t中,然后把s中的字符按逆序连接到字符串t的后面。例如,当s中的字符串为“ABCDE”时,则t中的字符串应为“ABCDEEDCBA”。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#include<string.h>void fun(char*s,char*t){ int i,s1; s1=strlen(s);/*********found*********/ for(i=0;i<=s1;i++) t[i]=S[i]; for(i=0;i<s1;i++) t[s1+i]=S[i];/*********found*********/ t[s1]='\0'; } void main() { char s[100],t[100]; system("CLS“); printf(”\nPlease enter string s:"); scanf("%S",S); fun(S,t); printf {"The result is:%s\n",t);}
问答题给定程序MODI1.C中函数fun的功能是:判断一个整数是否是素数,若是返回1,否则返回0。 在main()函数中,若fun返回1输出YES,若fun返回0输出NO!。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数。不得增行或删行,也不得更改程序的结构! #include<stdio.h> int fun(int m) { int k=2; while(k<=m&&(m%k)) /************found************/ k++ /************found************/ if(m=k)return 1; else return 0; } main() { int n; printf("\nPlease enter n:");scanf("%d“,&n); if(fun(n))printf("YES\n"); else printf("NO!\n");}
问答题给定程序中,函数fim的功能是:计算出形参s所指字符串中包含的单词个数,作为函数值返回。为便于统计,规定各单词之间用空格隔开。
例如,形参s所指的字符串为:This is a C language program.,函数的返回值为6。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
int fun(char *s)
{ int n=0, flag=0;
while(*s!='/0')
{ if(*s!=' ' flag=l;}
/********** found**********/
if (*s==' ') flag= 【2】 ;
/********** found**********/
【3】 ;
}
return n;
}
main ()
{ char str[81]; int n;
printf("/nEnter a line text:/n");
gets (str);
n=fun(str);
printf("/nThere are %d words in
this text./n/n",n);
}
问答题
函数fun的功能是:将a、b中的两个两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的个位和百位上。
例如,当a=45,b=12。调用该函数后,c=4251。
注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include<stdio.h>
void fun(int a, int b, long*c)
{
}
main()
{ int a, b; long c;
printf("Input a b:");
scanf("%d%d",
fun(a, b,
printf("The result is:%ld/n", c);
}
问答题下列给定程序中,函数fun的功能是:将s所指字符串中的字母转换为按字母序列的后续字母(如“Z”转化为“A”,“z”转化为“a”),其他字符不变。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdlib.h>#include<stdio.h>#include<ctype.h>#include<conio.h>void fun(char*s){/*********found*********/ while(*S!='@') { if(*S>='A'&&*s<='Z'‖*s>='a'&&*s<='z') { if(*s=='Z')*S='A'; else if(*s=='z')*S='a'; else *s+=1; } /*********found*********/ (*s)++; }}void main(){ char s[80]; system("CLS"); printf("\n Enter a st ring with length<80:\n\n"); gets(s); printf("\n The string:\n\n"); puts(s); fun(s); printf("\n\n The Cords:\n\n"); puts(S);}
问答题编写函数fun,其功能是:求出1~1000之间能被7或11整除,但不能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。注意:部分源程序给出如下:,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>void fun(int=}=a,int*n){)void main(){ int aa[1000],n,k; system("CLS"); fun(aa,&n); for(k=0;k<n;k++) if((k+1)%10==0) { printf("%5 d",aa[k]); printf("\n");)/*一行写9个数*/ else printf("%5d",aa[k]);}
问答题给定程序MODI1.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;
若未找到,则函数值为NULL。
例如,当字符串中的内容为“abcdabfabcdx”,t中的内容为“ab”时,输出结果应是:abcdx。
当字符串中的内容为“abcdabfabcdx”,t中的内容为“abd”时,则程序输出未找到信息:notbe found!。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
#include<stdio.h>
#include<string.h>
char*fun(char*s,char*t)
{
char*p,*r,*a;
/**********found**********/
a=Null;
while(*s)
{P=s;r=t;
while(*r)
/**********found**********/
if(r==P)
{r++;p++;)
else break;
if(*r=="/0")a=s;
s++:
}
return a;
}
main()
{
char s[100],t[100],*p;
printf("/nPlease enter string S:");scanf("%s",s);
printf("/nPlease enter substring t:");scanf("%s",t);
P=fun(s,t);
if(p)printf("/nThe result is:%s/n",p);
else printf("/nNot found!/n");
}
问答题已知一个数列从第0项开始的前三项分别为0,0,1,以后的各项都是其相邻的前三项之和。给定程序MODI1. C中函数fun的功能是:计算并输出该数列前n项的平方根之和。n的值通过形参传入。
例如,当n=10时,程序的输出结果应为:23.197745。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include <stdio. h>
#include <math. h>
/************found************/
fun(int n)
{ double sum, s0, s1, s2, s; int k;
sum=1.0;
if(n<=2) sum=0.0;
s0=0.0; s1=0.0; s2=1.0;
for (k=4; k<=n; k++)
{ s=s0+s1+s2;
sum+=sqrt(s);
s0=s1; s1=s2; s2=s;
}
/************found************/
return sum
}
main( )
{int n;
printf("Input N=");
scanf("%d",
printf("%f/n", fun(n));
}
问答题请编写函数fun,函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。 例如,字符串数组中的M个字符串为 AAAA BBBBBBB CC 则合并后的字符串的内容应是:AAAABBBBBBBCC。 提示:strcat(a,b)的功能是将字符串b复制到字符串a的串尾上,成为一个新串。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。1 #include<stdio.h>2 #include<string.h>3 #define M 34 #define N 205 void fun(char a[M][N],char *b)6 {78 }9 main()10 { char w[M][N]={''AAAA'',''BBBBBBB'',''CC''},a[100];11 int i;void NONO();12 printf(''The string:\n'');13 for(i=0 ; i<M;i++)puts(w[i]);14 printf(''\n'');15 fun(w,a);16 printf(''The A string:\n'');17 printf(''%s'',a);printf(''\n\n'');18 NONO();19 }20 void NONO()21 {/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/22 FILE *rf,*wf ;23 char w[M][N],a[100];int i;24 rf=fopen(''in.dat'',''r'');25 wf=fopen(''out.dat'',''w'');26 for(i=0;i<10;i++) {27 fscanf(rf,''%s%s%s'',w [0],w[1], w [2]);28 fun(w,a);29 fprintf(wf,''%s\n'',a);30 }31 fclose(rf);fclose(wf);32 }
