重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
(1)素数判断函数:是返回1,否则返回0
创新互联主要从事网站设计、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务秀峰,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
int prime(int n){
int i;
if(n2 !(n1) || n2)
return 0;
for(i=3;i*i=n;i+=2)
if(!(n%i))
return 0;
return 1;
}
(2)编写排序函数(冒泡排序、选择排序)
void bubbling(int *p,int n){//冒泡
int i,j,k;
for(i=0;in;i++)
for(j=1;jn;j++)
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=0;in;i++){
for(k=i,j=k+1;j=n;j++)
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=0;in;i++)
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,lr p[m]-x)
p[m]x ? l=m+1 : r=m-1;
return p[m]==x ? m : -1;
}
(4)插入函数,升序为例
1.函数中的return语句是用来获得函数的返回值的,通过它将被调函数的中一个确定值带回主函数,供主函数使用。
2.定义函数的类型是一般应该与return语句的返回值的类型一致。如果不同,则以函数类型为准。
看看这个题(编写函数求Fibonacci级数)
#include "stdio.h"
int fib(int n)
{
int z;
if(n=0) printf("有误");
else
if(n==1||n==2) z=1;
else
z=fib(n-1)+fib(n-2);
return(z);
}
void main(){
int n,i;
for(n=1,i=0;n=100;n++){
{printf("%10d ",fib(n));
i++;}
if(i%5==0) printf("\n");}
}
cheng()函数中,n赋值1之后再也没有改变过,所以x=x*n,不管乘几次,结果还是x。
暂没发现其他错误。
写“写自定义函数”,是实现“模块化设计”的手段。简单地说,可以使程序更容易查错、维护、更新、实现代码的重复使用。
模块化设计,简单地说就是程序的编写不是开始就逐条录入计算机语句和指令,而是首先用主程序、子程序、子过程等框架把软件的主要结构和流程描述出来,并定义和调试好各个框架之间的输入、输出链接关系。逐步求精的结果是得到一系列以功能块为单位的算法描述。以功能块为单位进行程序设计,实现其求解算法的方法称为模块化。模块化的目的是为了降低程序复杂度,使程序设计、调试和维护等操作简单化。改变某个子功能只需相应改变相应模块即可。
所谓的模块化设计,简单地说就是将产品的某些要素组合在一起,构成一个具有特定功能的子系统,将这个子系统作为通用性的模块与其他产品要素进行多种组合,构成新的系统,产生多种不同功能或相同功能、不同性能的系列产品。模块化设计是绿色设计方法之一,它已经从理念转变为较成熟的设计方法。将绿色设计思想与模块化设计方法结合起来,可以同时满足产品的功能属性和环境属性,一方面可以缩短产品研发与制造周期,增加产品系列,提高产品质量,快速应对市场变化;另一方面,可以减少或消除对环境的不利影响,方便重用、升级、维修和产品废弃后的拆卸、回收和处理。