c語言主函數調用
㈠ 用c語言計算式子1!+2!+3!+……+n!,並輸出結果,用主函數調用子函數的方法實現
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
int fun(int n);
void main()
{
int i , n = 0, sum = 0;
printf("請輸入n的值:");
scanf("%d", &n);
for(i = 1; i <= n; i++)
{
sum = sum + fun(i);
}
printf("sum = %d\n", sum);
system("pause");
}
int fun(int n)
{
if(1 == n)
{
return 1;
}
return n*fun(n-1);
}
就是遞歸思想的運用。。
㈡ c語言中main函數中的函數怎麼調用函數
假如有一函數f, 沒有參數, 則要這樣調用:
f();
其中, f是函數f的函數名, 但對於編譯器來講, f是一個地址, 它指向了f函數代碼段的開頭部分.而()是一個運算符, 它非常類似於*, 但是*是取值的, 而()是讓程序跳轉到f處執行程序. 最後的那個分號就是標識著一個語句的結束
如果f有一個整型的參數, 那麼需要這樣調用:
f(1);
只是多了一個1, 這個1就是()運算符要復制到f函數的棧中了, 准確地說是復制到它的形參中.
如果f有多個參數, 則只需要在每個形參之間打上逗號:
f(1, 2, 3);
逗號只是用來起分隔作用.
㈢ C語言中的main函數能不能調用其它函數
可以調用。
C語言最基本的模塊為函數,任意函數都可以調用其它任意一個函數,包括函數本身。
1、自定義函數調用其它自定義函數的例子:
#include<stdio.h>
voidfun1(inta)//自定義函數fun1。
{
printf("%d ",a);
}
voidfun2(intm,intn)//自定義函數fun2。
{
fun1(m);
fun1(n);//調用兩次另一個自定義函數。
}
intmain()
{
fun2(2,3);//調用fun2.
}
在這個例子中,就是主函數調用自定義函數fun2,然後fun2調用另一個自定義函數fun1.
2、不僅可以調用其它自定義函數,還可以調用自己本身。 這種稱為遞歸。
以下是通過遞歸,計算1+2+3+...+n值的代碼:
#include<stdio.h>
intfun(intn)
{
if(n==1)return1;
returnn+fun(n-1);//遞歸調用,返回和值。
}
intmain()
{
printf("%d ",fun(100));//計算1到100的和值。
return0;
}
㈣ C語言中函數的調用有哪些步驟
long p=1;初始化。
p *= m;初始化。
long s = 0;累加。
s += power(i,k);累乘計算。這類題弄清楚每個函數做什麼,涉及哪些量,和函數之間的調用關系。
初始化、循環計算、返回結果是最常見的3個步驟,其中第2步可以是基本運算,也可以是調用其它函數完成某個功能。
(4)c語言主函數調用擴展閱讀:
在C語言中,子程序的作用是由一個主函數和若干個函數構成。由主函數調用其他函數,其他函數也可以互相調用。同一個函數可以被一個或多個函數調用任意多次。
在程序設計中,常將一些常用的功能模塊編寫成函數,放在函數庫中供公共選用。要善於利用函數,以減少重復編寫程序段的工作量。
函數分為全局函數、全局靜態函數;在類中還可以定義構造函數、析構函數、拷貝構造函數、成員函數、友元函數、運算符重載函數、內聯函數等。