C语言中的自定义函数
- 格式:pdf
- 大小:63.47 KB
- 文档页数:3
C语⾔中的⾃定义函数
C语⾔中可以使⽤系统函数也可以使⽤⾃⼰的函数,就是⾃定义函数
⾃定义函数分为四种
第⼀种:⽆参⽆返回值的
函数的声明
void sayH();
函数的实现
void sayH(){
printf("你好");
}
第⼆种:有参数⽆返回值
函数的声明:
void pxsbx(int c,int k);
函数的实现:
void pxsbxx(int c,int k){
int i,j;
for (i=0; i for (j=0; j<=i; j++) { printf(" "); } for (j=0; j if (j==0||j==k-1||i==0||i==c-1) { printf("*"); }else{ printf(" "); } } printf("\n"); } } 函数的调⽤ int c,k; printf("请输⼊长:"); scanf("%d",&c); printf("请输⼊宽:"); scanf("%d",&k); pxsbxx(c, k);运⾏结果 3,有参数有返回值 声明: int add1(int num1,int num2,int num3); 实现 int add1(int num1,int num2,int num3){ int sum=num1+num2+num3; return sum;} 调⽤ int num1,num2,num3,sum; scanf("%d%d%d",&num1,&num2,&num3); sum=add1(num1, num2,num3); printf("%d",sum);效果 第四种:有参数⽆返回值 声明 void add(int num1,int num2); 实现 void add(int num1,int num2) { int sum=num1+num2; printf("%d\n",sum); } ⼆,递归函数(两个简易的递归调⽤) 1,阶乘 函数的声明 int MyFun(int num); 函数的实现 int MyFun(int num){ // 普通函数 // int sum1=1; // for (int i=1; i<=num; i++) { // sum1*=i; // } // return sum1; // 递归调⽤ if (num==1||num==0) { return 1; }else { return num*MyFun(num-1); } } 调⽤ printf("sum=%d\n",MyFun(6));运⾏效果 2,菲波那切数列数列 函数的声明 int fbsnq(int num); 函数的实现 int fbsnq(int num){ // 递归 if(num==1||num==2){ return 1; } return fbsnq(num-1)+fbsnq(num-2); //普通 // int n1=1,n2=1,temp=0; // if (num==1||num==2) { // return 1; // } // int i=2; // for(;i // temp=n1+n2; // n1=n2; // n2=temp; // } // return temp; } 函数的调⽤ for (int i=1; i<=30; i++) { if ((i-1)%5==0) { printf("\n"); } printf("%10d", fbsnq(i)); } printf("\n\n"); 运⾏结果