有关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.hlong 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语言的堆栈是怎么回事!!