C语言实验五函数docWord文档格式.docx
《C语言实验五函数docWord文档格式.docx》由会员分享,可在线阅读,更多相关《C语言实验五函数docWord文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
答案:
#include<
stdio・h〉
#include<
math・h>
doublefang(doublex,intn)
{
inti;
doubleresult=l;
for(i=l;
i<
=n;
i++)
resuresult*x;
:
returnresult;
}
doublefact(intn)
result*=i;
intmain()
intn=l.;
doublex,epszy;
doublesum=l;
scanf("
%1f%1fn,&
x,&
eps);
y=3*eps;
while(fabs(y)>
=eps)
else
sumHsumly、
34.}
35・printf(=%・31f、sum)"
36•return0;
28•yHf^ng(Xun)\f2ct(n)、29・n++;
30・if(n%2专1)
31•sumHsum+y;
0869■计算a+aa+aaa++aaaaaaa(函数)
内存限制:
1449次
1097次
输入整数a(l<
=n<
=9)和n,计算a+aa+aaa++aaaaaaa的值。
编写计算n个a的函数.
输入整数a(l<
=a<
=9)和n
在单独一行中输出表达式的值。
25
24690
ymc
stdio•h>
longasd(inta,intn)
longresult=0;
for(i=l;
result=result*10+a;
inta,nfi;
longsum=0;
scanf(”%d%dn,&
a,&
n);
for(i=l;
i++)
sum+=asd(a,i);
printf(n%ld\nn,sum);
return0;
0870■统计素数个数(函数)
1017次
685次
输入二个整数叫n(l<
m<
n),统计区间内素数的个数要求:
编写判断素数的函数
intPrime(intn)
如果是非索数,返回0,是素数,返回1.
测试数据有多组,
输入二个整数m,n(l<
n)
当m=n=0时,结束。
输出有多组,每组输出占一行,即对应的区间中索数的个数。
1530
2060
答案:
01・#include<
02•intprime(intm)
03.{
04・
intresult,i;
05.
inta=0;
06.
for(i=2;
m;
07.
08.
if(m%i==0)
09.
a+=l;
10.
11.
if(a==0)
12.
resul;
13.
14•
result=0;
15.
16.}
17.intmain()
18.{
19.
intm,n,i;
20.
intsum;
while
(1){
sum=O;
scanf(”%d%d”,&
if(m==0&
&
n==0)
break;
for(i=m;
i++)sum+=prime(i);
printf(n%d\nn,sum);
}return0;
0876■计算整数的最大公约数(函数)
511次
358次
计算n个整数的最大公约数
要求:
1、用函数编写计算n个整数的最大公约数。
步骤:
首先假设第一个数为最大公约数,假如能被所有的数整除,则为最大公约数否则最大公约数继续下一次判断。
2、编写输入n个整数的函数,并在mainO屮调用
intf(inta(]zintn)/*计算n个整数的最大公约数的函数*/
voidinput(intb[],intn)/★输入n个元素至lj一维数组*/
3、用全局变显垂做一次
第一行为整数的个数n(n<
100),第二行是n个用空格分开的整数。
输在单独的一行中输出一个整数,即对应的最大公约数。
(以、'
%d\n”,的格式输出)
4
1536921
3
01•#include<
stdio.h>
02•intn;
03•intf(inta[])
04.{
int
••j;
count;
for
(i=a[0];
i>
0;
i--)
count=l;
for(j=0;
j<
n;
j++)
Ll・
if(a[j]%i!
=0)
count=0
14・
break;
16.
17.
if(count==l)
18.
returni;
inti,x;
inta[100];
scanf(n%dH,&
for(i=0;
scanf(H%dIf,&
Q[i]));
x=f(a);
printf(n%d\nn,x);
0877-计算一维数组的平均值(函数)
692次
528次
计算double类型的一维数组的平均值
第一个数为测试数组的个数t。
然后是t行,每行的输入描述如下:
第一个数为一维数组元素的个数n(n<
100),然后为n个浮点数,所有数Z间用一个空格分开。
每组测试数拯输出一行,该行中为改组数的平均值。
保留小数3位。
2
512345
412234556
3.000
♦include<
doublepj(doublea[],intn){
doubleresult;
intsum=0;
sum+=a[i];
result=sum/n;
intn,i,j9m;
doublex;
doublea[100];
scanf(n%dH,&
m);
for(j=l;
=m;
j++)
scanf(”%d”,&
scanf(n%lf,f,&
24・
X=pj(azn);
25・
printf(n%・31f\n”,x);
26.
27.
0878■计算二维数组的最大值及下标(全局变量)
555次
348次
计算二维数组的最大值及下标:
1、用函数计算二维数组的最大值及下标,因为函数只能返回一个值,用全局变量解题。
第一行为二维数组的行数m和列数n(2<
nm<
ll)
然后是个元素
一行输出,分别为最大值,行下标、列下标,数与数Z间用一个空格分开。
32
15
215
53
ffinclude<
inthmax;
intlmax;
intfun(intzu[10][11]intmrintn)
inti,j,max=0;
for(i=0;
i++)
for(j=0;
if(max<
zu[i][j])
max=zu[i][j];
hmax=i;
lmax=j;
}returnmax;
24
25
26
27
28
29
30
31
32
33
34
35
36
37
inti,j,n,max;
intzu[10][11];
scanf(n%d%dn,&
m,&
for(j=0;
scanf(H%dn,&
zu[i][j]);
max=fun(zu,m,n);
printf(”%d%d%d\nHrmax,hmax,Imax);
38・}
0879■字符串拷贝(函数)
380次
299次
不用库函数,口编•函数,实现字符串拷贝功能。
输入一字符串(长度不超过100)
在单独一行中输出拷贝后的字符窜。
wenzhouuniversity•
chara[100];
100;
scanf(H%c"
&
a[i]);
printf(n%cnza[i]);
if(a[i]==,\n,)
0881■一维数组排序(函数)
时