C语言常用算法

(一)排序算法

1.排序算法就是一次进行两个元素的比较,如果符合要求的话 ,那么就是按照顺序排,如果不不合要求的话,那么就进行比较,直到符合为止,而它的结构也是非常的简单,就是循环嵌套循环,再加一个判断。

代码案例:

#include 
​
void sort(int arr[],int len){
    int i,j,temp;
    for(i = 0;i < len - 1;i++)
        for(j = 0;j < len - 1;j++)
            if(arr[j] > arr[j + 1]) {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
}
​
int main()
{
    int arr [] = {200,400,500,900,700,600}; 
    int len = (int)sizeof(arr) / sizeof(*arr);
    sort(arr,len);
    int i;
    for(i = 0;i < len;i++)
    {
        printf("\n\n%d",arr[i]);
    }
    return 0;
}

运行效果:

C语言常用算法_第1张图片

这个就是排序算法的运行效果,值得注意的一项是,void sort()是不能发在int main()后面的,如果放在int main()后面的话,那么它就会先运行int main()里面的代码,在运行void sort()代码,这样的话,程序就会报错!

 (二)递归算法

题目:1,1,2,3,5,8.....求第10个数是多少?用递归的算法如何实现?

#include 

static int thime(int i){
	if(i <= 0)
		return 0;
	else if(i >= 0 && i <= 2)
		return 1;
	else 
		return thime(i - 1) + thime(i -2); 
} 

int main(){
	printf("C递归算法:%d",thime(7));
	return 0;
}

运行效果:

C语言常用算法_第2张图片

文章就写这么多,如果有时间的话,下期再见! 

你可能感兴趣的:(C程序设计,Algorithm)