C语言学习Day23 递归函数、局部变量、全局变量

23-1

/*

1.函数定义

		返回类型  函数名(参数列表){

			函数体; 

		} 



		形参:作用用来接收外部传来的数据

		注意:自定义函数和main函数是平行关系,不嵌套定义 

		1.返回类型 int double char 

			无返回值void

		2.参数列表 都需要给出数据类型x , y int x , int y

		  函数定义这里的参数--形参

		3.{}函数体



	2.函数声明

		作用:通知编译系统,在调用函数 函数返回类型 函数名字 函数的参数列表

		格式:函数首部;   函数原型

		位置:#include 下面 



		省略: 被调用函数出现在主调用函数前面,可以不用声明 



	3.调用函数

		实参的数量、类型与 形参的数量、类型操持一致 

		

		递归函数

		

	1.局部变量

		也称内部,指在函数内定义的变量,在哪个函数定义就在哪个函数使用 

	2.全局变量	 

		也称为外部变量,在函数之内定义的变量,从哪里定义从哪里使用一直到程序的结束 

*/

#include <stdio.> 

int main()

{

	

}

23-2

#include <stdio.h> 

/*

n! = 1*2*3* n! 

	n之内所有数的和

	5 = 1 + 2+ +5

	100 = 1 + 2 + 3 + + 100

	?n 

*/

//函数声明

int fun01(int n);

void fun02(int n);

int main()

{

	int n;

	puts("请输入一个整数:")	;

	scanf("%d" , &n);

	//调用fun01

	int s;

	s =	fun01(n) ;

	printf("s = %d \n" , s);

	

	puts("==========");

	fun02(n);

}



//函数定义

int fun01(int n){//形参 

	//for()1+2+3+   + n?

	int i , sum = 0;

	for(i=1; i<=n; i++){

		sum += i;

	}

	

	return sum;

} 



void fun02(int n){//接收外部传来数据 

	int i , sum = 0;

	for(i=1; i<=n; i++){

		sum += i;

	}

	printf("sum = %d \n" , sum);

}

23-3

#include <stdio.h> 

#include <string.h>

int main()

{

	char ch01[20] = "hello world";

	//strcpy strlen strcmp strcat

	char ch02[20];

	strcpy(ch02 , ch01);

	puts(ch01);

	puts(ch02);

}

23-4

#include <stdio.h> 

int main()

{

	char a[10];

	a = "string";

	puts(a);

}

23-5

#include <stdio.h> 

int jiecheng(int a);

int main()

{

	int n;

	puts("请输入一个整数");

	scanf("%d" , &n);

	printf("结果为%d \n" , jiecheng(n));

	

}

//递归求阶乘 

int jiecheng(int a){

	if(a == 1){

		return  1;

	}else{

		return jiecheng(a-1)*a;

	}

	

}

23-6

#include <stdio.h> 

void fun();

double p = 3.14;

int main()

{

	int n = 10;

	printf("n = %d \n" , n);

	printf("p = %g \n" , p);

	puts("==========");

	fun();

}



void fun(){

	int m = 100;

	printf("m = %d \n" , m);

	printf("p = %g \n" , p);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值