Bootstrap

【C语言篇】一维数组编程案例

1. 数组初始化及逆序输出

#include <stdio.h>

int main()
{
	int arr[10];
	int i;
	
	//数组初始化
	for(i=0;i<10;i++){
		arr[i] = i;
	}
	
	puts("当前数组是:");
	for(i=0;i<10;i++){
		printf("%d ",arr[i]);
	}
	printf("\n");
	puts("逆序输出后是:");
	for(i=9;i>=0;i--){
		printf("%d ",arr[i]);
	}
	
	return 0;
}

2. 斐波那契数列

#include <stdio.h>

int main()
{
	int arr[30];
	int i;
	int arraySize;
	arraySize = sizeof(arr)/sizeof(arr[0]);
	
	arr[0] = 0;
	arr[1] = 1;
	for(i=2;i<arraySize;i++){
		arr[i] = arr[i-1] + arr[i-2];
	}
	//遍历数组
	for(i=0;i<arraySize;i++){
		printf("%d ",arr[i]);
	}
	printf("\ndone\n");
	
	return 0;
}

 3. 冒泡排序法

#include <stdio.h>

int main()
{
	int array[] = {12,8,13,9,87,45};
	int i;
	int j;
	int tmp;
	int len = sizeof(array)/sizeof(array[0]);
	//冒泡排序法(从小到大)
	for(i=0;i<len-1;i++){
		for(j=0;j<len-1-i;j++){
			if(array[j] > array[j+1]){
				tmp = array[j];
				array[j] = array[j+1];
				array[j+1] = tmp;
			}
		}
	}
	for(i=0;i<len;i++){
		printf("%d ",array[i]);
	}
	
	return 0;
}

4. 简单选择排序法

#include <stdio.h>

int main()
{
	int array[] = {12,8,13,9};
	int i;
	int j;
	int tmp;
	int len = sizeof(array)/sizeof(array[0]);
	//简单排序法(从小到大)
	for(i=0;i<len-1;i++){
		for(j=i+1;j<len;j++){
			if(array[i] > array[j]){
				tmp = array[i];
				array[i] = array[j];
				array[j] = tmp;
			}
		}
	}
	for(i=0;i<len;i++){
		printf("%d ",array[i]);
	}
	
	return 0;
}

 

;