1!+2!+3!+……+n!求和用C语言编写,要求使用函数嵌套调用

1!+2!+3!+……+n!求和用C语言编写,要求使用函数嵌套调用,第1张

#include<iostream>

using namespace std;

int main()

{

int n;

long int s=0,t=1;

cout<<"请输入n:"<<endl;

cin>>n;

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

{t=ti;

s=s+t;}

cout<<"1!+2!+3!+4!+……+n!="<<s<<endl;

return 0;

}

扩展资料:

return表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。

return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。

先获取数组长度,然后用for循环,从数组中获取值进行累加求和。

#include

#include

int main()

{

int n;

int val;

int a;

int sun = 0, i;

printf("请输入数组的长度:");

scanf("%d", &n);

printf("\n");

a = (int )malloc(n sizeof(int));//为数组a动态分配内存

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

{

printf("请输入数组的第%d个元素的值:", i+1);

scanf("%d", &val);

printf("\n");

a[i] = val;

}

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

{

sun+=a[i];//sun+=a[i]相当于sun=sun+a[i];

}

printf("sun = %d\n",sun);

free(a);//释放a动态分配的内存

return 0;

}

扩展资料:

个数组中的所有元素具有相同的数据类型(在C、C++、Java、pascal中都这样。但也并非所有涉及数组的地方都这样,比如在Visual Foxpro中的数组就并没这样的要求)。当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据(对象、字符串、数值等等)。可以声明任何基本数据类型的数组,包括用户自定义类型和对象变量。

如果要用户输入的是一个数组,一般是用一个循环,但是在输入前也需要固定数组的大小。

compact跟变长数组没有太大的关系,也应该用不到变长数组。因为一般的传数组到函数中就是传数组的地址和元素的个数的,那只是一个提示,不是要求。

-数组

#include <stdioh>

int sum(int str[10])

{

int i,sum=0;

for(i=0;i<10;i++) sum+=str[i];

return sum;

}

double avg(int sum)

{return(sum/100);}

void main()

{

int i,j,str[10];

double k;

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

scanf("%d",&str[i]);

j=sum(str);k=avg(j);

printf("和:%d\n平均值:%f",j,k);

}

运行结果:

输入给定的数的个数:

4

输入A的不连续的正整数的范围的个数:

5

输入这些数:

1

2

4

5

8

输入B的不连续的正整数的范围的个数:

5

输入这些数:

3

5

6

7

9

输入C的不连续的正整数的范围的个数:

5

输入这些数:

4

7

9

12

14

输入D的不连续的正整数的范围的个数:

5

输入这些数:

14

17

19

20

21

输入A+B的不连续的正整数的范围的个数:

5

输入这些数:

6

8

9

10

12

输入B+C的不连续的正整数的范围的个数:

5

输入这些数:

9

11

15

17

18

输入C+D的不连续的正整数的范围的个数:

5

输入这些数:

19

21

25

27

33

A1

B5

C12

D21

A4

B5

C12

D21

Press

any

key

to

continue

#include

int

const

M

=

26;

//给定的数的个数上限

int

const

N

=

9;

//不连续的正整数的范围的个数上限

void

main()

{

int

A[M][N],

B[M][N],

C,

i,

j,

k,

l,

m,

n;

for(i

=

0;

i

<

26;

i++)

for(j

=

0;

j

<

9;

j++)

A[i][j]

=

B[i][j]

=

0;

cout<<"

输入给定的数的个数:

";

cin>>m;

C

=

new

int[m];

for(i

=

0;

i

<

m;

i++)

{

cout<<"

输入"<

>n;

cout<<"

输入这些数:

";

for(j

=

0;

j

<

n;

j++)

cin>>A[i][j];

}

for(i

=

0;

i

<

m-1;

i++)

{

cout<<"

输入"<

>n;

cout<<"

输入这些数:

";

for(j

=

0;

j

<

n;

j++)

cin>>B[i][j];

}

for(j

=

0;

A[0][j];

j++)

{

C[0]

=

A[0][j];

i

=

0;

for(k

=

0;

A[i+1][k];

k++)

for(l

=

0;

B[i][l];

l++)

if(C[i]

评论

0

0

加载更多

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/11676326.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存