请编写函数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);
}
第1题
i所指的变量中,最大公约数放在指针变量yue所指的变量中。
注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
vOid fun(int m,int n,int*bei,int*yue)
{int s=l,i;
if(m>n){s=m;m=n;n=S;}
for(i=2,s=1;i<m i++)
if((m%i=0)&&(n%i=0))
{
}
*yue=s;
*bei=S*m*n;
}
main( )
{int a,b,beishu,yueshu;
chscr( );
printf("please input a,b:");scanf("%d,%d,"&a,&b);
fun(a,b,&beishu,&yueshu);
printf("a,b beishu:%d\n",beishu);
printf("a,b yueshu:%d\n",Yueshu);
}
第2题
请编写一个函数void fun(int m, int k, int xx[]),该函数的功能是将大于整数m且紧靠m的k个非素数存入所指的数组中。
例如,若输入15,5,则应输出16,18,20,21,22。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include<conio.h>
include<stdio.h>
void fun(int m,int k,int xx[])
{
}
main()
{
int m,n,zz[1000];
clrscr();
printf("\nPlease enter two integers:");
scanf("%d%d",&m,&n);
fun(m,n,zz);
for(m=0;m<n;m++)
printf("%d",zz[m]);
printf("\n");
}
第3题
下列程序的输出结果是【 】。
main()
{
int a=1,b=2;
a=a+b;b=a-b;a=a-b;
prrintf("%d,%d\n",a,b) ;
}
第4题
请编写函数fun(),它的功能是计算下列级数和,和值由函数值返回。
S=1+x+x2/2!3/3!+…/xn/n!
例如,当n=10,x=0.3时,函数值为1349859。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。
试题程序:
include<conio.h>
include<stdio.h>
include<math.h>
double fun(double x, int n)
{
}
main ()
{
clrscr ();
printf ("%f ",fun(0,3,10));
}
第5题
请补充main 函数,该函数的功能是:计算两个自然数n和m(m<10000)之间所有数的和(n和m从键盘输入)。
例如:当n=1,m=100时,sum=5050:当n=100,m=1000时,sum=495550。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在 main 函数的横线上填入所编写的若干表达式或语句。
试题程序:
include<stdio.h>
include<conio.h>
main ()
{
int n, m;
long sum;
【 】
clrscr ();
printf ("\nInput n,m\n");
scanf ("%d, %d", &n, &m);
while (n<=m)
{
【 】
n++;
}
printf ("sum=%【 】\n", sum);
}
第6题
序连接到t串的后面。例如:当s中的字符串为ABCDE时,则t中的字符串应为EDCBAABCDE。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <conio.h>
include <stdio.h>
include <string.h>
void fun (char *s, char *t )
{
int i,sl;
sl=strlen(s);
for (i=0;i<sl;i++)
t[i]=s[sl-1];
for (i=0; i<sl; i++)
/*************found**************
t [sl+i]=s [i];
t [2*sl]-'\0';
}
main ( )
{ char s[100], t[100];
clrscr();
printf("\nPlease enter string s: ");
scanf ("%s", s);
fun (s,t);
printf ("The result is: %s\n",t);
}
第7题
请补充main函数,改函数的功能是,把一个二维字符数组每行字符串最大的字符拷贝到字符数组s中。
例如,如果str[3]={"efjh","cfimls","owys"},则s;"hsy"。
注意:部分源程序给出如下.
请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。
试题程序:
inc lude<stdio, h>
main()
{
int i=0;
char *str [3] ={ "efjh", "efknls",
"owys" };
char **p;
char s [8];
clrscr 0;
【 】;
for (i=O; i<3; i++)
{
s [i] =*p [i];
while (*p [i] )
{
if (S [i] <*p [i] )
s [i] =*p[i];
【 】;
}
}
【 】;
printf(" new string \n");
puts (s);
}
第9题
->num=23;x->s=88.5; } void main() { REC a={16,90.0}; fun1(&A); printf("%d\n",a.num); } 程序运行后的输出结果是( )。
第10题
下列程序的输出结果是【 】。
include <stdio.h>
void swap(int *a, int *B)
{
int *t;
t=a;a=b;b=t;
}
main()
{
int i=3,j=5,*p=&i,*q=&j;
swap(p,q);printf("%d %d\n",*p,*q);
}
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!