C语言最后主要强调了下集中算法分别是:冒泡法、选择法、插数法。

// 题6:选择法 :输入5个数,从大到小排列
 char arr[5]; //定义数组
 int k;    //循环变量 
    for(k=0;k<5;k++)
    {
       printf("请输入第%d个数据:\n",k+1); //循环提示输入数据,并接收数据 
       scanf("%d",&arr[k]); 
    }

   int i; //循环变量 
   int j; // 循环变量
   for(i=0;i<5;i++)  //外层循环,控制循环数组的长度 
   {
      for(j=i;j<5;j++) //内层循环,控制坐标指针   

    {
        if(arr[i]<arr[j]) //判断 

      {
          int temp = arr[i]; //把arr[j]的值赋予arr[i] 
          arr[i]=arr[j];
          arr[j]=temp; 
        } 
        } 
   }
 for(i=0;i<5;i++)
 {
    printf("%d ",arr[i]);
 }
 */

 
 /*
 // 题7:冒泡法 :输入5个数,从大到小排列
 char arr[5];
 int k;
  for(k=0;k<5;k++)
  {
     printf("请输入第%d个数据:\n",k+1);
     scanf("%d",&arr[k]);
  }

 int i;
 int j;
 for(i=0;i<5;i++)
 {
    for(j=0;j<4;j++)
  {
      if(arr[j]<arr[j+1])  

    {
          int temp = arr[j];
          arr[j]=arr[j+1];
          arr[j+1]=temp; 
      } 
    }
 }
 for(i=0;i<5;i++)
 {
    printf("%d ",arr[i]);
 }
 


  
 //题8:插数法:在下列数组中插入一个数字 并且按从小到大排列
 int arr[10]={2,5,8,10,15,19,25,66,77};
 int num=16;
 int index=9;
 int i;
 for(i=0;i<9;i++)
 {
    if(num<arr[0])
       {
       index=0;
       break; 
    } 
    if(num>arr[i] && num<arr[i+1])
    {
       index=i+1;
       break; 
    }
 }
 
 int j;
 for(j=9;j>=index;j--)
 {
    arr[j]=arr[j-1];
 } 
 arr[index]=num;
 
 for(j=0;j<10;j++)
 {
    printf("%d",arr[j]);
 }
 */

 

posted on 2015-04-25 22:38  咖啡不放糖  阅读(189)  评论(0编辑  收藏  举报