学习C语言第6天打卡

练习1:斐波那契数列

#include 
int main()
{
	int array1[20 ];
	array1[0]=0;
	array1[1]=1;
	int i;
	
	for(i=2;i<=20;i++)
	{
		
	array1[i]=array1[i-1]+array1[i-2];
		
	}
	

	for(i=0;i<=20;i++)
	{
	
		printf("%d   ",array1[i]);
		
		
	}
	
	
	
	return 0;
}

练习2:冒泡排序法

#include 
int main()
{
	
int arr[]={4,8,12,6,13};
	
	int i;
	int j;
	int leng;
	int replace;
	leng=sizeof (arr)/sizeof (arr[0]);
	for(j=0;j<leng-1;j++)//j可以看作比较次数,j的最大作用在于-j。
	{
	   for(i=0;i<leng-1-j;i++)//-j的作用在于当最大或最小的数值被比较出来之后,放在最右边不再操作,如将4置放在arr[4]后只需再比较arr[]的前3位。
	   {
		if(arr[i]>arr[i+1])
		{
		replace=arr[i];
		arr[i]=arr[i+1];
		arr[i+1]=replace;
		}
	   }
	}
	for(i=0;i<leng;i++)
	{
		printf("%d",arr[i]);
		
	}
	return 0;
}

练习3:选择排序法

#include 
int main()
{
	int i;
	int j;
	int replace;
	int leng;
	int arr[]={6,17,44,3,15};
	leng=sizeof(arr)/sizeof(arr[0]);
	
	for(i=0;i<leng-1;i++)
	{
		

	   for(j=i+1;j<leng;j++)
	   { 
           
			
	        if(arr[i]<arr[j])
	        {
		     replace=arr[i];
		     arr[i]=arr[j];
	         arr[j]=replace;
	         }
	   }
	}
	
	
	for(i=0;i<leng;i++)
	{
		
		printf("%d    ",arr[i]);
		
	}
	
	return 0;
}

其他要点:
1,算数组的个数:sizeof (array) / sizeof [0];
2,多维数组可以不写行,根据列自动分行 但是不能不写列。

你可能感兴趣的:(c语言,学习,算法)