当前位置:编程学习 > C/C++ >>

有关C语言的一道题目,会的来。

在每条语句后解释一下每条语句的意思,再每语句块解释一下语句块的功能,解释语句块用大括号括起来。最后写上总结1程序目的2算法思想,写好完整的答案,谢谢。

#include stdio.h

long sum(inta,intb);

long factorial (intn);

main()

{int n1,n2;

long a;

scanf(“%d,%d”,&n1,&n2);

 a=sum(n1,n2);

 printf(“a=%1d”,a);

}

long sum(inta, intb)

{

 Long c1,c2;

 C1=factorical(a);

 C2=factorical(b);

 Return(c1+c2);

}

Long factorical(intn)

{long rtn=1;

Int i;

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

 Rtn*=i;

 Return(rtn);

}

 

追问:写上总结1程序目的2算法思想
答案:#include <stdio.h>//包含头文件stdio.h

long sum(inta,intb);//声明一个名叫sum的函数,函数的参数有两个,int型。函数返回类型是long

long factorial (intn);//声明一个名叫factorial 的函数,函数只有一个参数,int型。函数返回类型是long

main()//主函数

{int n1,n2;//声明两个int型变量n1,n2

long a;//声明一个long型变量a

scanf(“%d,%d”,&n1,&n2);//输入n1和n2

 a=sum(n1,n2);//调用sum函数,传递n1和n2,即n1和n2作为实参,返回值赋给a

 printf(“a=%1d”,a);//输出a的值。

}

long sum(inta, intb)//sum函数的定义,这是函数头部

{//函数体

 Long c1,c2;//声明两个long型变量c1,c2

 C1=factorical(a);//调用函数factorical,a作为实参,返回值赋给c1

 C2=factorical(b);//调用函数factorical,b作为实参,返回值赋给c2

 Return(c1+c2);//返回c1+c2的值。

}

Long factorical(intn)//factorical函数的定义,这是函数的头部

{//函数体

long rtn=1;//定义一个long型变量rtn,初始值为1

Int i;//定义一个int型变量i

 For(i=1;i<=n;i++)//i从1循环到n

 Rtn*=i;//rtn=rtn*i

 Return(rtn);//返回rtn的值。

}

 factorical函数的作用是计算阶乘

sum函数的作用是计算两个数的阶乘的和。

main函数输入两个整数,并输出这两个整数的阶乘的和。


#include stdio.h  /*包含标准函数库*/

long sum(inta,intb); /*声明程序中要用到一个自定义函数sum()*/

long factorial (intn); /*声明程序中要用到一个自定义函数factorial ()*/

main() /*主函数*/

{int n1,n2; /*定义两个整型变量n1,n2 */

long a;   /*定义一个长整型变量 a */

scanf(“%d,%d”,&n1,&n2); /*程序执行到这里时要求从键盘录入两个整数,例如输入:2,3 然后回车程序继续向下执行*/

 a=sum(n1,n2); /*长整型变量a 将得到自定义函数sum()的计算结果*/

 printf(“a=%1d”,a);/*向屏幕输出a的结果:屏幕显示是:a = 8 */

}

long sum(inta, intb) /*自定义函数sum()包含两个整型参数:a和b */

{

 Long c1,c2; /*定义两个长整型变量 c1,c2*/

 C1=factorical(a); /*c1将得到函数factorical(2)的结果 2 */

 C2=factorical(b); /*c2将得到函数factorical(3)的结果 6 */

 Return(c1+c2); /*返回给调用他的函数一个结果:2 + 6 的和 也就是 8 */

}

Long factorical(intn)  /*自定义函数factorical()包含一个整型参数:n */

{long rtn=1;/*定一个长整型变量,并初始化为 1 */

Int i; /*定义一个整型变量 i */

 For(i=1;i<=n;i++)  /*for循环 循环从1 到 n 比如:当参数为2时 就是从 1 到 2*/

 Rtn*=i; /*进行累乘当n= 2 时,要循环两次,第一次结果是 1*1 第二次是 1*2 */

 Return(rtn); /*当n= 2时得结果为2 将结果2返回*/

}

我是来打酱油滴- -

上一个:C语言 数码乘以各自的权累加 什么意思
下一个:c语言的堆栈是怎么回事!!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,