15.C语言形式参数和实际参数的介绍及函数总结

1.形式参数和实际参数

  • 实际参数可以是常量、变量、表达式

    y = get(1);//常量
    y = get(x);//变量
    y = get(x+1);//表达式
    
    
  • 形参和实参数值相同,地址不同(传递参数是数值的传递)。

    #include <stdio.h>
    
    //变量四要素:名,类型,值,地址
    int test(int x){//形式参数
    	printf("test的x地址是%p,数值是%d\n",&x,x);
    	return 0;
    }
    
    int main(){
    	int x;
    	int y;
    
    	puts("请输入一个数:");
    	scanf("%d",&x);
    	printf("main的x地址是%p,数值是%d\n",&x,x);
    	
    	y = test(x);//实际参数
    	return 0;
    }
    
  • 局部变量作用在所在变量的代码区域内

    全局变量作用在该文件夹内整个代码内

    #include <stdio.h>
    int O;//全局变量:这个文件内的代码区域都有效
    //变量四要素:名,类型,值,地址
    int test(int x){//形式参数:保存在栈,被调用的时候才会申请内存,调用结束后,内存自动释放
    	printf("test的x地址是%p,数值是%d\n",&x,x);
    	return 0;
    }
    
    int main(){
    	int x;
    	int y;
    
    	puts("请输入一个数:");
    	scanf("%d",&x);
    	printf("main的x地址是%p,数值是%d\n",&x,x);
    	
    	y = test(x);//实际参数
    	return 0;
    }
    
  • 三目运算符

    z = x>y?x:y;
    //x是否大于y
    //是:输出x
    //否:输出y
    

2.获取两个最大的数

  • 比较大小

    #include <stdio.h>
    
    int test(int x,int y){
    	int z;
    	if(x>z){
    		z = x;
    	}else{
    		z = y;
    	}
    }
    int main(){
    	//1.定义所需要的变量
    	int data1;
    	int data2;
    	int big;
    	
    	//2.提示输入
    	puts("请输入两个数");
    	
    	//3.输入两个数
    	scanf("%d%d",&data1,&data2);
    	
    	//4.函数调用
    	big = test(data1,data2);
    	
    	//5.输出结果			
    	printf("数据是:%d %d 最大的数:%d",data1,data2,big);
    	return 0;
    }
    
  • 两个浮点数的比较

    #include <stdio.h>  
      
    float test(float x, float y) {  
        float z;  
        if (x > y) {  
            z = x;  
        } else {  
            z = y;  
        }  
        return z; // 返回较大的数  
    }  
      
    int main() {  
        // 1. 定义所需要的变量  
        float data1;  
        float data2;  
        float big;  
          
        // 2. 提示输入  
        puts("请输入两个数");  
          
        // 3. 输入两个数  
        scanf("%f %f", &data1, &data2);  
          
        // 4. 函数调用  
        big = test(data1, data2); // 接收 test 函数的返回值  
          
        // 5. 输出结果  
        printf("数据是: %f %f 最大的数: %f", data1, data2, big);  
        return 0;  
    }
    

3.关于函数的一些总结

  • 说明

在这里插入图片描述

  • 举例子:

    1. 函数声明之前:会产生警告
    2. 函数声明之后:不会产生警告

    在这里插入图片描述

  • 15
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值