#include <stdio.h> int main() { void print_star();//聲明print_star函數 print_star();//調用print_star函數 void print_message(); print_message(); int max(int x,int y);//------------有參數的聲明 int c=max(48, 12);//調用帶參數的函數且有返回值 printf("max:%d",c);//max:48 return 0; } int max(int x,int y) { int z; z=x>y?x:y; return z; } void print_star()//函數無返回值 不帶參數 { printf("********************\n");//******************** } void print_message() { printf("How do you do!\n");//How do you do! } ///////////////////---------------------第二種方法--外部函數聲明以及函數的嵌套調用 //#include <stdio.h> #import <stdio.h> /*如下三個函數在全部函數以前,且在函數外部(稱爲外部聲明)所以在程序編譯時候,編譯系統已從外部聲明中知道了函數的有關信息,因此沒必要再主調函數中在重複進行聲明*/ //寫在全部函數以前的外部聲明在整個文件範圍中有效--必須寫全部函數以前 void print_star(); void print_message(); int max(int x,int y); int min(int x,int y); int main() { print_star();//直接進行調用print_star函數 print_message(); int c=max(48, 12);//調用帶參數的函數且有返回值 printf("max:%d",c);//max:48 return 0; } void print_star()//函數無返回值 不帶參數 { printf("********************\n");//******************** } void print_message() { printf("How do you do!\n");//How do you do! } int max(int x,int y) { int c=min(19, 2);//函數的嵌套調用 printf("c:%d\n",c);//c:2 int z; z=x>y?x:y; return z; } int min(int x,int y) { return x<y?x:y; }