第1题:
编写函数fun(),它的功能是:计算和输出下列级数的和。
S=1/(1×2)+1/(2×3)+…+1/(n×(n+1))
例如,当n=10时,函数值为0.909091。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序;
include<conio.h>
include<stdio.h>
double fun(int n)
{
}
main ( )
{
clrscr();
printf("%f\n",fun(10));
}
第2题:
若给fun函数的形参s传送字符串:"]]6354abcc" (其中]表示空格字符),则函数的返回值是【19】。
#include <ctype.h>
long fun(char s[])
{long n;int sign;
for(;isspace(*s);s++);
sign=(*s==′-′)?-1:1;
if(*s==′+′||*s==′-′)s++;
for(n=0;isdigit(*s);s++)n=10*n+(*s-′0′);
return sign*n;
}
第3题:
以下函数 fun 的功能是返回 str 所指字符串中以形参 c 中字符开头的后续字符串的首地址 , 例如 : st r所指字符串为 : Hello! , c 中的字符为 e ,则函数返回字符串 : ello! 的首地址。若 str 所指字符串为空串或不包含 c 中的字符,则函数返回 NULL 。请填空。
char *fun(char *str,char c)
{ int n=0; char *p=str;
if(p!=NULL)
while(p[n]!=c&&p[n]!='\0') n++;
if(p[n]=='\0') return NULL;
return( 【 1 2 】 );
}
第4题:
请编写函数fun(),该函数的功能是判断字符串是否为回文,若是则函数返回1,主函数中输出YES:否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。
例如:字符串LEVEL是回文,而字符串123312就不是回文。
注意;部分源程序已存在文件test26_.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数fun的花括号中填写若干语句。
文件test26_2.cpp的内容如下:
include<iostream.h>
include<stdio.h>
define N 80
int fun(char*str)
{
}
void main()
{char s[N];
cout<<"Enter a string:"<<endl;
gets{s);
cout<<"\n\n";
puts(s);
if(fun(s))
cout<<"YES\n";
else
cout<<"NO\n";
}
第5题:
请编写一个函数fun(),它的功能是计算并输出给定整数n的所有因子(不包括1与自身)之和(规定n的值不大于1000)。
例如:输入n的值为856,则输出为sum=763。
注意:部分源程序已存在文件test33_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数count的花括号中填写若干语句。
文件test33_2.cpp清单如下:
include<stdio. h>
include<iostream. h>
int fun(int n)
{
}
void main ( )
{
int n, sum;
cout<<"Input n:"<<end1;
cin>>n;
sum=fun (n);
cout<<" sum= \n"<<sum<<end1;
}
第6题:
已知递归函数fun的定义如下: int fun(int n) { if(n<=1)return 1;//递归结束情况 else return n*fun(n-2);//递归 } 则函数调用语句fun(5)的返回值是( )。
A.5
B.12
C.15
D.30
第7题:
下列给定程序中,函数fun()的功能是计算并输出high以内的素数之和。high由主函数传给fun()函数。
例如:若high的值为100,则函数的返回值为1060。
请改正程序中的错误,使它能得到正确结果。
[注意] 不要改动main函数,不得增行或删行,也不得更改程序的结构。
[试题源程序]
include <conio.h>
include <stdio.h>
include<math.h>
int fun(int high)
{
int sum=0, n=0, j, yes;
while(high>=2)
{
yes=1;
for(j=2;j<=high/2; j++)
**********************found**********************/
ifhigh%j==0
{
yes=0;
break;
}
/**********************found**********************/
if(yes==0)
{
sum+=high;
n++;
}
high--;
}
return sum;
}
main()
{
clrscr();
printf("%d\n", fun(100));
}
第8题:
下列给定程序中,函数 fun() 的功能是:计算并输出下列级数的的N项之和SN,直到SN+1大于q为止,q的值通过形参传入。
SN=2/1+3/2+4/3+(N+1)/N
例如,若q的值为50.0,则函数值为49.394948。
请改正程序中的错误,使它能得出正确的结果。
注意;不要改动main 函数,不得增行或删行,也不得更改程序的结构.
试题程序:
include <conio.h>
include <stdio. h>
/**************found***************/
double fun(double q)
{ int n; double s,t;
n=2;
s=2.0;
while (s<=q)
{
t=s
/*************found *************/
s=s+ (n+1)/n;
n++;
}
printf ("n=%d\n ", n);
/************found***************/
return s;
}
main ()
{ clrscr();
printf ("%f\n ",fun (50));
}
第9题:
请编写函数fun(),其功能是;计算井输出下列多项式值。
S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n)
例如,若主函数从键盘给n输入8后,则输出为 S-0.662872。
注意;部分源程序给出如下。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。
试题程序;
include<stdio. h>
double fun(int n)
{
}
main ()
{
int n;
double s;
printf("\nInput n: ");
scanf ("%d", &n);
s=fun (n);
printf ("\ns=%f\n ", s);
}
第10题:
请编写函数fun(),其功能是:计算并输出下列多项式的值。
S=1+4/(1+2)+1/(1+2+3)+…+1/(1+2+3+…+n)
例如,着主函数从键盘给n输入50后,则输出为 S=1.960784。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include <stdio.h>
double fun(int n)
{
}
main ()
{
int n;
double s;
printf ("\nInput n: ");
scanf ("%d", &n);
s=fun (n);
printf ("\n\ns=%f\n\n", s);
}