在C语言中,参数字典并不是一个内置的概念,而是对函数参数传递机制的描述。C语言的函数参数分为形式参数(形参)[&和实际参数(实参)&],它们在函数调用中起着重要作用。
形参与实参的定义与区别
形参是函数定义时括号中的变量,仅在函数内部有效。它在函数调用时被实例化,调用结束后立即销毁。形参是实参的临时拷贝,二者在内存中独立存在,修改形参不会影响实参。
实参是调用函数时传递的具体值,可以是常量、变量、表达式或函数返回值。实参的值在调用时被复制到形参中,函数执行结束后,实参的值保持不变。
其中错误用法
#include<stdio.h>
/*
参数。
在定义函数式,要求的值叫形参
在调用函数时,传入的值叫实参
参数传递:数据从实参传递到形参
注意:类型,数量,顺序要一致(形参和实参要一致)
*/
void func1(int a, double b){
printf("a=%d b=%f",a,b);
}
int main(){
//func1(实参)
//func1(1.1,12,100); //只要两个参数 ,多了就会报错
func1(1);
func1(1,2);
func1(2,1);
return 0;
}
作业·
#include<stdio.h>
/*
参数。
在定义函数式,要求的值叫形参
在调用函数时,传入的值叫实参
参数传递:数据从实参传递到形参
注意:类型,数量,顺序要一致(形参和实参要一致)
*/
//任务一:请编写程序,计算[1-n]之间的偶数和 ,在函数内容打印结果即可
void getSum(int n){
int sum=0;
for(int i=1;i<=n;i++){
if(i%2 == 0){
sum +=i;
}
printf("1-%d之间的偶数和为:%d\n",n,sum);
}
//任务2:请编写程序,输入[2-9]之间的参数,在函数内容打印n*n乘法表即可
//
void printFunc1(int n){
printf("\n") ;
for(int i=1;i<=n;i++){
for(int j=1;j<=i;j++){
printf("%d * %d=%-5d",j,i,i*j);
}
printf("\n");
}
}
//任务3:编写程序,打印三个数中最大值
void printFunc2(int a,int b,int c){
int max = a;
if(b>max)max=b;
if(c>max)max=b;
printf("最大值:%d\n"max);
}
int main(){
getSum(4);//6=2+4
printFunc1(9);//打印九九乘法表
printFunc2 (3,2,1);//输出:3
return 0;
}