设计师自己做网站,链接提交工具的使用方法,python网页游戏开发,宁波网页制作公司哪家好理论
关于函数调用的方式有两类#xff1a;传值调用和传址调用
传值调用#xff1a;函数的形参和实参分别占有不同的内存块#xff0c;对形参的修改不会影响实参。
传址调用#xff1a;把函数外部创建变量的内存地址传递给函数参数的一种调用方式。可以让函数和函数外面… 理论
关于函数调用的方式有两类传值调用和传址调用
传值调用函数的形参和实参分别占有不同的内存块对形参的修改不会影响实参。
传址调用把函数外部创建变量的内存地址传递给函数参数的一种调用方式。可以让函数和函数外面的变量建立起真正的联系也就是函数内部可以直接操作函数外部的变量。
我们可以用一串代码来解释这两者的区别
#includestdio.h
int fun1(int a,int b)
{int c;ca;ab;bc;
}
int fun2(int *pa,int *pb)
{int d;d*pa;*pa*pb;*pbd;
}
void main(){int a10,b20;fun1(a,b);printf(a%d,ba%d\n,a,b);fun2(a,b);printf(a%d,b%d,a,b);
} 在这串代码中fun1是传值变量fun2是传址变量正如上面所说
fun1内部的代码叫做形参它里面的东西不会影响到主函数内实参的改变所以在输出时a,b没有改变
fun2内部的代码直接把a,b的内存地址拿过来了相当于fun2中的变量与主函数里面的变量建立了联系在fun2里面做修改就会影响到主函数里面相对变量的值所以我们在fun2里面把a,b交换后主函数中的a,b也受到了影响。 题目
打印100~300之间的素数
素数 一个大于1的自然数除了1和它自身外不能被其他自然数整除的数叫素数
#includestdio.h
int fun(int i)
{}
void main(){int i;for(i100;i300;i) {if (fun(i) 1) {printf(%d , i);}}
}在写外部函数前我们都应该先看一下主函数然后根据主函数来理解外部函数中要让我们做什么
根据这个主函数我们可以知道我们要在外部函数中判断100~300之间有哪些素数
首先我们要用一个变量遍历一遍小于 i 的所有数以此来看看有哪些数除了1和本身不能被其他自然数整除
遍历完之后如果可以被其他自然数整除那就return 0否则return 1。
具体代码如下
int fun(int i)
{int a;for(a2;ai;a) {if (i % a 0)return 0;}return 1;
} 判断是否为闰年
基础规律非整百年能被4整除而不能被100整除。 这是最基本的判断闰年的方法。
完备原则整百年能被400整除而不能被3200整除。
#includestdio.h
int fun(int i)
{}
void main(){int i;for(i1000;i2000;i) {if (fun(i) 1)printf(%d , i);}
}通过主函数我们可以知道外部函数是要判断是否为闰年
闰年的规则已经写在题目下方了按照规则我们可以得出这样一串代码
int fun(int i)
{if(i%40 i%100!0)return 1;else if(i%4000)return 1;elsereturn 0;
} 这里整年和非整年要分别判断所以我们要用到两个if
由于这里最高是2000所以我在第二个if里面没有加上不等于3200这个条件