省级2级函数例题.docx

上传人:b****6 文档编号:6939534 上传时间:2023-01-12 格式:DOCX 页数:10 大小:16.33KB
下载 相关 举报
省级2级函数例题.docx_第1页
第1页 / 共10页
省级2级函数例题.docx_第2页
第2页 / 共10页
省级2级函数例题.docx_第3页
第3页 / 共10页
省级2级函数例题.docx_第4页
第4页 / 共10页
省级2级函数例题.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

省级2级函数例题.docx

《省级2级函数例题.docx》由会员分享,可在线阅读,更多相关《省级2级函数例题.docx(10页珍藏版)》请在冰豆网上搜索。

省级2级函数例题.docx

省级2级函数例题

✷下面的程序是求500以内的所有的素数之和。

请修改程序中的错误,使它能得出正确的结果,并给出正确结果(21536)。

#include

#include

#include

intprime(intn)

{intyes,i;

if(n<=1)

{return1;}

yes=1;

for(i=2;i<=sqrt(n);i++)

if(n%i==0)

{yes=0;break;}

return1;

}

main()

{intsum=0,i;

clrscr();

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

if(prime(i))sum+=i;

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

✷下面的程序中,函数fun的功能是:

根据形参m,计算下面公式的值。

T=1+1/(2*3)+1/(3*4)+……+1/(m*(m+1))在请改正程序中的错误,并运行改正后的程序。

当从键盘输入70时,给出程序运行的正确结果(按四舍五入保留6位小数)(1.485915)。

程序:

#include

#include

doublefun(intm)

{doublet=1.0;

inti=2;

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

t+=1.0/i*(i+1);

return;

}

main()

{intm;

clrscr();

printf("\n请输入一个整数:

");

scanf("%d",&m);

printf("\n结果是:

%lf\n",fun(m));

}

下面的程序中,函数fun的功能是:

根据形参m,计算下面公式的值。

T=1/1!

+1/2!

+1/3!

+……+1/m!

请改正程序中的错误,并运行改正后的程序。

当从键盘输入10时,给出程序运行的正确结果(按四舍五入保留10位小数)(1.7182818011)。

#include

#include

doublefun(intm)

{doublefac,t=0.0;

inti=1,j;

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

{fac=1.0;

for(j=1;j<=m;j++)fac=fac*i;

t+=1.0/fac;

}

returnt;

}

main()

{intm;

clrscr();

printf("\n请输入整数:

");

scanf("%d",&m);

printf("\n结果是:

%12.10lf\n",fun(m));}

下面程序中,函数fun的功能是:

计算并输出k以内的最大的10个能被13或17整除的自然数之和。

请改正程序中的错误,并运行正确的程序。

当从键盘输入500时,给出程序运行的正确结果(4622)。

#include

#include

intfun(intk)

{intm=0,mc=0,j;

while((k>=2)||mc<10)

{if((k%13==0)&&(k%17==0))

{m=m+k;mc++;}

k--;

}

returnm;

}

main()

{intk;

clrscr();

printf("\n请输入整数:

");

scanf("%d",&k);

printf("\n结果是:

%d\n",fun(k));

}

下列程序的功能是求出以下分数序列的前25之和,2/1,3/2,5/3,8/5,13/8,21/13,......请改正程序中的错误,并运行修改后的程序,给出程序结果(按四舍五入保留6位小数)。

程序:

#include

#include

fun(n)

{longa,b,c;

intk;doubles;

s=0.0;a=2;b=1;

for(k=1;k<=n;k++)

{s=s+(double)a/b;

c=a;a=a+b;b=c;

}

returns;

}

main()

{intn=25;

clrscr();

printf("\nresult:

%lf\n",fun(n));

}

下面的程序是求1000以内的最大的20个素数之和。

请修改程序中的错误,使它能得出正确的结果,并给出正确结果。

程序

#include

#include

#include

intfun(inthigh)

{intsum=0,n=0,j,yes;

while((high>=2)||(n<10))

{yes=1;

for(j=2;j<=sqrt(high);j++)

if(high%j==0)

yes=0;break;

if(yes){sum+=high;n++;}

high--;

}

returnsum;

}

main()

{clrscr();

printf("%d\n",fun(1000));

}

下面的程序是求如下表达式的值。

S=sqrt(ln

(1)+ln

(2)+ln(3)+……+ln(n))请改正程序中的错误,并运行修改后的程序,当n=60时,给出程序运行结果(按四舍五入保留6位小数)

程序

#include

#include

#include

doublefun(intn)

{doubles=0.0;inti;

for(i=1;i

s+=log(1.0*i);

s=sqrt(s);

returns;

}

main()

{clrscr();

printf("%ld\n",fun(60));

}

下面的程序是求下式的和:

s=1+1/(1+2)+1/(1+2+3)+……+1/(1+2+3+……+n)请改正程序中的错误,并运行修改后的程序,当n=90时,给出程序运行结果(按四舍五入保留6位小数)。

程序:

#include

#include

intfun(intn)

{inti;

floats=0.0,t=1.0;

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

{t=t+i;

s=s+1/t;

}

returns;

}

main()

{printf("\n%f",fun(90))}

下面的程序是求表达式的值:

s=1+1/3+(1*2)/(3*5)+(1*2*3)/(3*5*7)+......+(1*2*3*......*n)/(3*5*7*......(2*n+1))请修改程序中的错误,并运行修改后的程序。

当n=25时,给出程序的运行结果(按四舍五入保留10位小数)。

程序:

#include

#include

#include

doublefun(intn)

{doubles,t;inti;

s=0.0;t=1.0;

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

t=t*i/(2*i+1);

s+=t;

returns;

}

main()

{printf("\n%12.10lf",fun(25))}

下面的程序是计算如下公式的A20值。

A1=1,A2=1/(1+A1),A3=1/(1+A2),A4=1/(1+A3),......请改正程序中的错误,并给出程序运行的正确结果(按四舍五入保留10位小数)。

程序:

#include

#include

intfun(intn)

{doubleA=1.0;inti;

for(i=2;i

A=1.0/(1+A);

returnA;

}

main()

{clrscr();

printf("%12.10lf\n",fun(20));

}

 

编程求出3到100之间的所有非偶数非素数的整数累加和(1441)。

程序:

#include"stdio.h"

intfun(inta,intb)

{

inti,count=0,j;

for(i=a;i<=b;i+=2)

for(j=2;j

if(_____________)

{count+=i;

_____________;

}

returncount;

}

voidmain()

{

printf("%d\n",fun(3,100));

}

编程求出100到200之间的所有非偶数非素数的整数累加和(4333)。

#include"stdio.h"

intfun(inta,intb)

{

inti,count=0,j;

for(i=a;i<=b;i+=2)

for(j=2;j

if(_____________)

{count+=i;

break;

}

_____________;

}

voidmain()

{

printf("%d\n",fun(101,200));

}

编写程序计算在10至99的范围内有多少个整数,其每位数的乘积大于每位数的和(63)。

#include"stdio.h"

intfun(inta,intb)

{

inti,count=0,low,high;

for(i=a;i<=b;i++)

{

low=i%10;

_____________;

if(_____________)

count++;

}

returncount;

}

voidmain()

{

printf("%d\n",fun(10,99));

}

编写程序计算在10至99的范围内有多少个整数,其每位数的乘积小于等于每位数的和(27)。

#include"stdio.h"

intfun(inta,intb)

{

inti,count=0,low,high;

for(i=a;i<=b;i++)

{

_____________;

high=i/10;

if(_____________)

count++;

}

returncount;

}

voidmain()

{

printf("%d\n",fun(10,99));

}

所谓回文数是从左至右与从右至左读起来都是一样的数字,如:

121。

编一个程序,求出在100—900的范围内回文数的个数(80)。

#include"stdio.h"

intfun(inta,intb)

{

inti,count=0,low,high;

for(i=a;i<=b;i++)

{

low=i%10;

high=i/100;

if(_____________)

count++;

}

returncount;

}

voidmain()

{

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

}

用一元纸币兑换一分、两分和五分的硬币,要求兑换硬币的总数为50枚,问共有多少种换法?

(注:

在兑换中一分、两分或五分的硬币数可以为0枚)13

#include"stdio.h"

main()

{intone,two,five,cout=0;

for(five=0;five<=20;five++)

for(_____________)

for(one=0;one<=100;one++)

if(_____________)

cout++;

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

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1