c语言问题 在线等 急!各位帮帮忙,谢谢

2. 改错题
下列给定程序中,函数fun()的功能是:求S的值。设
S=(22/(1*3))*(42/(3*5))*(62/(5*7))* …*(2k)2/((2k-1)*(2k+1))
例如,当k为10时,函数的值应为1.533852。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
/**********************found***********************/
fun(int k)
{ int n; float s, 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***********************/
return s
}
void main()
{ system("CLS");
printf("%f\n ",fun(10));
}

3. 编程题
请编写函数fun(),该函数的功能是:计算并输出
S=1+(1+20.5)+(1+20.5+30.5)+…+(1+20.5+30.5+…+n0.5)
例如,若主函数从键盘给n输入20后,则输出为s=534.188884。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <math.h>
#include <stdio.h>
double fun(int n)
{

}
void main()
{
int n;
double s;
printf("\n\nInput n: ");
scanf("%d",&n);
s=fun(n);
printf("\n\ns=%f\n\n",s);
}

谢谢!!在线等
1.填空题
请补充函数fun,该函数的功能是比较字符串str1和str2的大小,并返回比较的结果。
例如: 当str1="cdef",str2="cde"时,函数fun()返回">"。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#define N 80
char *fun(char *str1,char *str2)
{
char *p1=str1,*p2=str2;
while(*p1&&*p2)
{
if(【1】)
return "<";
if(【2】)
return ">";
p1++;
p2++;
}
if(*p1==*p2)
return "==";
if(*p1==【3】)
return "<";
else
return ">";
}

void main()
{
char str1[N],str2[N];
system("CLS");
printf("Input str1:\n");
gets(str1);
printf("Input str2:\n");
gets(str2);
printf("\n*****the result*****\n");
printf("\nstr1 %s str2",fun(str1,str2));
}
谢谢!

1.【1】填*p1<*p2
【2】填*p1>*p2
【3】填"\0"
2.改错题
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
fun(int k) /*********改为 float fun(int k) **********/
{ int n; float s, 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++;
}
return s/*******************少了分号,改为 return s; ************/
}
void main()
{ system("CLS");
printf("%f\n ",fun(10));
}

3. 编程题
#include <math.h>
#include <stdio.h>
double fun(int n)
{
int i,j=2;
double s=1,tem=power(j,0.5);
for(i=2;i<=n;i++)
{
s+=s+tem;
j++;
tem=power(j,0.5);
}
return s;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-06-09
晕,没看补充!
相似回答