重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 大学本科
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

编写 fun 函数,其功能为根据形参 m 计算: y=1/2 + 1/4 + ... + 1/2m 。 例如:若 m=9 ,则应输出: 1.414484 def fun()

答案
s=0 for i in range(1,m+1): s+=1/(2*i) return s
更多“编写 fun 函数,其功能为根据形参 m 计算: y=1/2 + 1/4 + ... + 1/2m 。 例如:若 m=9 ,则应输出: 1.414484 def fun()”相关的问题

第1题

下列给定程序中,函数fun()的功能是根据整型形参m,计算如下公式的值。

y=1-1/(2×2)+1/(3×3)-1/(4×4)+…+(-1)(m+1)/(m×m)

例如:m中的值为5,则应输出0.838611。

请改正程序中的错误,使它能得到正确结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include <conio.h>

include <stdio.h>

double fun(int m)

{double y=1.0;

/**********found*************/

int j=1;

int i;

for(i=2;i<=m;i++)

{

j=-1*j;

/****************found*******+******/

y+=1/(i*i);

}

return(y);

}

main()

{

int n=5;

clrscr();

printf("\n The result is %lf\n",fun(n));

}

点击查看答案

第2题

下列程序中,函数fun的功能是:根据整型形参m的值,计算如下公式的值:t=1-1/(2×2)-1/(3×3)-…-1/(m×m)请填空。

#include<conio.h>

#include<stdio.h>

double fun(int m)

{double y=1.0;int i;

for(______)

y-=1.0/(i*i);

return(y);

}

main()

{int n=5;

printf("\nThe result is%1f\n",fun(n));}

点击查看答案

第3题

下列给定程序中,函数fun()的功能是:根据整型形参m的值,计算如下公式的值。

t=1-1/(2×2)-1/(3×3)-…-l/(m×m)

请改正函数fun()中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include <conio.h>

include <stdio.h>

double fun(int m)

{ double y=1.O;

int i;

/*************found**************/

for(i=2;i<m;i++)

/************found**************/

y-=1/ (i*i);

return(y);

}

main()

{ int n=5;

clrscr();

printf("\nThe result is %1f\n", fun(n));

}

点击查看答案

第4题

函数

  1.实验目的

  ①掌握定义函数的方法。

  ②掌握函数实参与形参的对应关系以及“值传递”的方式。

  ③掌握甬数的嵌套调用和递归调用的方法。

  ④掌握全局变量和局部变量、动态变量和静态变量的概念和使用方法。

  ⑤学习对多文件程序的编译和运行。

  2.实验内容

  编程序并上机调试运行。

  ①已有变量定义和函数调用语句int a=1,b=-5,c; c=fun(a,b);fun函数的作用是计算两个数之差的绝对值,并将差值返回调用函数,请编写fun函数。

  Fun(int x,int y)

  {      }

  ②有函数调用语句c=add(a,b);请编写add函数,计算两个实数a和b的和,并返回和值。

  double add(double x,double y)

  {        }

  ③利用递归方法求5!。

  ④利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

  ⑤有5个人坐在一起,问第五个人的岁数,他说比第四个人大2岁。问第四个人岁数,他说比第三个人大2岁。问第三个人,叉说比第二个人大两岁。问第二个人,又说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

  程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人的岁数,就需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。

  ⑥以下程序运行后输入:3,abcde<回车>,则输出结果是______。

  #include

  move(char*str,int n)

  {char temp;int i;

  temp=sTR[n-1];

  fOr(i=n-1;i>0;i--)str[i]=str[i-1];

  str[0]=temp;

  }

  main()

  {chaR s[50];int n,i,z;

  scanf("%d,%s",&n,&s);

  z=strlen(s);

  for(i=1;i<=n;j++)

  move(s,z);

  printf("%s\n",s);

  }

  ⑦编写函数求:1-1/2+1/3-1/4+1/5-1/6+1/7-…1/n

  ⑧编程输出如下图形,

    即一个由*组成的正六边形,注意是空心的。

  3.理解变量的作用范围

  ①学习static定义静态变量的用法。

  #include"stdio.h"

  varfunc()

  {

  int var=0;

  static int static_var=0;

  printf("\40:var equal%d\n",var);

  printf("\40:static var equal%d\n",static_var);

  printf("\n");

  var++;

  static_var++;

  }

  voidmain()

  {inti;

   for(j=0;i<3;i++)

    varfunc();

  }

  ②学习使用auto定义变量的用法。

  #include"stdio.h"

  main()

  {inti,num;

  num=2;

   for(i=0;i<3;i++)

  { printf("\40:The num equal%d\n",num);

   num++;

    {

    auto int num=1;

    printf("\40:The internal block num equal%d\n",num);

    num++;

    }

   }

  }

  ③学习使用static的另一用法。

  #include"stdio.h"

  main()

  {

  inti,num;

  num=2

  for(i=0;i<3;i++)

  {

  printf("\40:The hum equal%d\n",num);

  num++;

  {

  static int num=1;

  printf("\40:The internal block hum equal%d\n",hum);

  num++;

  }

  }

  }

  ④学习使用external的用法。

  #include"stdio.h"

  int a,b,c;

  void add()

  {int a;

  a=3;

  c=a+b

  }

  voidmain()

  { a=b=4;

  add();

  printf("The value of c is equal to%d\n",c);

  }

  ⑤学习使用register定义变量的方法。

  voidmain()

  {

  register int i;

  int tmp=0:

  for(i=1;i<=100;i++)

  tmp+=i;

  printf("The sum is%dha",tmp);

  }

  (6)宏#define命令练习(1)

  #include"stdio.h"

  #defineTRUE 1

  #define FALSE 0

  #define SQ(x)(x)*(x)

  voidmain()

  {

  int num;

  int again=1;

  printf("\40:Program will stop if input value less than 50.\n");

  while(again)

  {

  printf("\40:Please input number==>");

  scanf("%d",&num);

  printf("\40:The square for this number is%d\n",SQ(num));

  if(num>=50)

   again=TRUE;

  else

   again=FALSE;

  }

  }

点击查看答案

第5题

请教:2013年9月全国计算机等级《二级C++》命题预测试卷一第1大题第24小题如何解答?
【题目描述】

有以下程序:

classDate

{

public:

Date(inty,intm,intd);

{

year=Y:

month=m;

day=d;

}

Date(inty=2000)

{

year=y;

month=10;

day=1;

}

Date(Date&d)

{

year=d.year;

month=d.month;

day=d.day;

}

voidprint(  )

{

cout<<year<<"."<(month<<"."<<day<<endl;

}

private:

intyear,month,day;

};

Datefun(Dated)

{

Datetemp;

temp=d;

returntemp;

}

intmain(  )

{

Datedatel(2000,1,1),date2(0,0,0);

Datedate3(datel);

date2=fun(date3);

return0;

}

程序执行时,Date类的拷贝构造函数被调用的次数是(  )。

A.2

B.3

C.4

D.5

【我提交的答案】: C
【参考答案与解析】:

正确答案:B

答案分析:

B。【解析】本题考核拷贝构造函数。上述程序中,拷贝构造函数一共被调用了3次:第1次是在执行语句Datedate3(date1)时,用已经建立的对象date1对正在建立的对象date3进行初始化;第2次是在调用fun函数时,由于是传值调用,因此实参对象date3要对形参对象d进行初始化;第3次是在执行fun函数中的返回语句returntemp;时,系统初始化一个匿名对象时使用了拷贝构造函数。

点击查看答案

第6题

请教:2013年9月全国计算机等级《二级C语言程序设计》考前冲刺试卷五第1大题第25小题如何解答?
【题目描述】

下列程序的输出结果是( )。

void fun(int*X,int y)

{ printf("%d%d",*x,*y);*x=3;*y=1;}

main

{ int x=1,y=2;

fun(&y,&x);

printf("%d%d",x,y);

}

A.2 1 4 3

B.1 2 1 2

C.1 2 3 4

D.2 1 1 2

【我提交的答案】: B
【参考答案与解析】:

正确答案:C

答案分析:

当执行fun函数时,因为参数传递时是地址传递,因此形参值的改变会影响实参中的数,在执行fun 函数时先输出1 2,接着把*X赋3,*y赋4,此时带回主函数中,输出的值为3 4。

下列程序的输出结果是( )。void fun(int*X,int y){ printf("%d%d",*x,*y);*x=3;*y=1;}main{ int x=1,y=2;fun(&y,&x);printf("%d%d",x,y);}A.2 1 4 3B.1 2 1 2C.1 2 3 4D.2 1 1 2
点击查看答案

第7题

请教:2014年全国计算机等级《二级C语言程序设计》上机模考试卷(1)第1大题第2小题如何解答?
【题目描述】

有以下程序:

fun(int x,int y){return(x+y);)

main

{ int a=1,b=2,c=2,sum;

sum=fun((a++,b++,a+b),c++);

printf("%d\n",sum);

}

执行后的结果是(   )。A.6

B.7

C.8

D.9

【我提交的答案】: B
【参考答案与解析】:

正确答案:C

答案分析:

表达式a++,b++,a+b是一个逗号表达式,在逗号表达式中,从左向右进行各个表达式的运算,最后一个表达式的值就是逗号表达式的结果,所以表达式a++,b++,a+b的值为5,所以fun函数中的形参x 的值为5;表达式c++先把变量C的值传给形参y,然后c 的值加1,所以y的值为3,因此函数fun((a++,b++,a+ b),c++)的返回值为8。

答案应该是7啊。你算算

点击查看答案

第8题

下列给定的程序中,函数hn()的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数。

请改正函数fun()中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include <stdio.h>

include <math.h>

void fun(int a, int *b, int *c)

{ int i,j,d,y;

for (i=3;i<=a/2;i=i+2)

/*************found**************/

{y=0;

for (j=2;j<=sqrt((double)i);j++)

if (i%j==0) y=0;

if (y==1)

/*************found**************/

{ d=i-a;

for (j-2;j<=sqrt((double)d);

j++)

if (d%j==0) y=0;

if (y=-1)

{*b=i; *c=d;}

}

}

}

main ()

{ int a,b,c;

do

{ printf("\nInput a: ");

scanf ("%d", &a); }

while (a%2);

fun (a, &b, &c);

printf ("\n\n%d=%d+%d\n", a,b,c);

}

点击查看答案

第9题

请教:2013年9月全国计算机等级《二级C语言程序设计》命题预测试卷一第1大题第2小题如何解答?
【题目描述】

有以下程序:

fun(int x,int y){return(x+y);}

main

{ int a=1,b=2,c=2,sum;

sum=fun((a++,b++,a+b),c++);

printf("%d\n",sum);

}

执行后的结果是(   )。

A.6

B.7

C.8

D.9

【我提交的答案】: B
【参考答案与解析】:

正确答案:C

答案分析:

表达式a++,b++,a+b是一个逗号表达式,在逗号表达式中,从左向右进行各个表达式的运算,最后一个表达式的值就是逗号表达式的结果,所以表达式a++,b++,a+b的值为5,所以fun函数中的形参x 的值为5;表达式c++先把变量C的值传给形参y,然后c 的值加1,所以y的值为3,因此函数fun((a++,b++,a+b),c++)的返回值为8。

此题答案应为B项,其中C++因为是后加,所以传参给y时应该用加之前的数值,所以y=2,5+2=7

点击查看答案

第10题

请教:2013年9月全国计算机等级《二级C语言程序设计》命题预测试卷一第1大题第2小题如何解答?
【题目描述】

有以下程序:

fun(int x,int y){return(x+y);}

main

{ int a=1,b=2,c=2,sum;

sum=fun((a++,b++,a+b),c++);

printf("%d\n",sum);

}

执行后的结果是(   )。

A.6

B.7

C.8

D.9

【我提交的答案】: B
【参考答案与解析】:

正确答案:C

答案分析:

表达式a++,b++,a+b是一个逗号表达式,在逗号表达式中,从左向右进行各个表达式的运算,最后一个表达式的值就是逗号表达式的结果,所以表达式a++,b++,a+b的值为5,所以fun函数中的形参x 的值为5;表达式c++先把变量C的值传给形参y,然后c 的值加1,所以y的值为3,因此函数fun((a++,b++,a+b),c++)的返回值为8。

此题答案应为B项,其中C++因为是后加,所以传参给y时应该用加之前的数值,所以y=2,5+2=7

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案