用C语言编写自定义函数:

Python06

用C语言编写自定义函数:,第1张

(1)素数判断函数:是返回1,否则返回0

int prime(int n){

int i

if(n>2 && !(n&1) || n<2)

return 0

for(i=3i*i<=ni+=2)

if(!(n%i))

return 0

return 1

}

(2)编写排序函数(冒泡排序、选择排序)

void bubbling(int *p,int n){//冒泡

int i,j,k

for(i=0i<ni++)

for(j=1j<nj++)

if(p[j]<p[j-1])

k=p[j],p[j]=p[j-1],p[j-1]=k

} void select(int *p,int n){//选择

int i,j,k

for(n--,i=0i<ni++){

for(k=i,j=k+1j<=nj++)

if(p[k]<p[j])

k=j

if(k-i)

j=p[k],p[k]=p[i],p[i]=j

}

}

(3)查找函数,找到返回下标,否则返回-1

int find(int *p,int n,int x){//顺序

int i

for(i=0i<ni++)

if(p[i]==x)

return i

return -1

} int fihalf(int *p,int n,int x){//折半,升序为例

int l,r,m

l=0,r=n-1

while(m=(l+r)>>1,l<r && p[m]-x)

p[m]<x ? l=m+1 : r=m-1

return p[m]==x ? m : -1

}

(4)插入函数,升序为例

有些自定义函数可能会被频繁的调用,所以写在一个C文件里是不太方便的。应该把这些自定义的函数写在一个C文件里,同时在一个头文件.h文件里声明。主函数可以通过引用该头文件然后调用需要的自定义函数。

举例如下:

1. 在头文件(.h)里声明自定义函数,定义用户写的函数;

2. 在一个C语言文件里写下自定义函数的实现方式,可以写在主函数前,也可在主函数后(需在头文件前声明函数);

3. 在主函数中调用自定义函数,别忘了头文件的声明;

4. 最后编译所有的涉及到的C文件;

#include <stdio.h>

void number(int)

int main()

{

for(int i = 0i<10i++)

{

number(i)

定义一个函数需要确定以下内容:

1、函数的返回值类型

2、函数的名称

3、函数的参数

4、函数主体代码块

示例代码:

int definePlus(int a, int b)

{

a = a + 1

b = b + 1

return a + b

}

例如上面代码中就定义了一个返回值为int类型的函数,其函数名为definePlus,一对小括号中的内容为这个函数的参数,也就是说这个函数有两个传入参数int a和int b。

在函数体内,分别让a在原来的基础上加1,让b在原来的基础上加1,然后使用return关键字返回a + b的和。如果a的值是2,而b的值是3,那么这个函数的返回值则是7。

扩展资料:

如果一个变量声明时在前面使用 * 号,表明这是个指针型变量。换句话说,该变量存储一个地址,而 *(此处特指单目运算符 * ,下同。C语言中另有 双目运算符 *) 则是取内容操作符,意思是取这个内存地址里存储的内容。指针是 C 语言区别于其他同时代高级语言的主要特征之一。

指针不仅可以是变量的地址,还可以是数组、数组元素、函数的地址。通过指针作为形式参数可以在函数的调用过程得到一个以上的返回值,不同于return(z)这样的仅能得到一个返回值。

指针是一把双刃剑,许多操作可以通过指针自然的表达,但是不正确的或者过分的使用指针又会给程序带来大量潜在的错误。