LOGO
首页 小说列表 排行榜 搜索

    C语言教程-第58页

  • 第1页
  • 上一页
  • 下一页

    温馨提醒:系统正在全面升级。您可以访问最新站点。谢谢!

      }

      }

      getch();

      }

      ==============================================================

      【程序37】

      题目:对10个数进行排序

      1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,

            下次类推,即用第二个元素与后8个进行比较,并进行交换。       

      2.程序源代码:

      #include "stdio.h"

      #include "conio.h"

      #define N 10

      main()

      {

      int i,j,min,tem,a[N];

      /*input data*/

      printf("please input ten num:\n");

      for(i=0;i

      {

      printf("a[%d]=",i);

      scanf("%d",&a[i]);

      }

      printf("\n");

      for(i=0;i

      printf("%5d",a[i]);

      printf("\n");

      /*sort ten num*/

      for(i=0;i

      {

      min=i;

      for(j=i+1;j

      if(a[min]>a[j])

      min=j;

      tem=a[i];

      a[i]=a[min];

      a[min]=tem;

      }

      /*output data*/

      printf("After sorted \n");

      for(i=0;i

      printf("%5d",a[i]);

      getch();

      }

      ==============================================================

      【程序38】

      题目:求一个3*3矩阵对角线元素之和

      1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。

      2.程序源代码:

      #include "stdio.h"

      #include "conio.h"

      /* 如果使用的是TC系列编译器则可能需要添加下句 */

      static void dummyfloat(float *x){ float y; dummyfloat(&y);}

      main()

      {

      float a[3][3],sum=0;

      int i,j;

      printf("please input rectangle element:\n");

      for(i=0;i<3;i++)

      for(j=0;j<3;j++)

      scanf("%f",&a[i][j]);

      for(i=0;i<3;i++)

      sum=sum+a[i][i];

      printf("duijiaoxian he is %6.2f",sum);

      getch();

      }

      ==============================================================

      【程序39】

      题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

      1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后

           此元素之后的数,依次后移一个位置。

      2.程序源代码:

      #include "stdio.h"

      #include "conio.h"

      main()

      {

      int a[11]={1,4,6,9,13,16,19,28,40,100};

      int temp1,temp2,number,end,i,j;

      printf("original array is:\n");

      for(i=0;i<10;i++)

      printf("%5d",a[i]);

      printf("\n");

      printf("insert a new number:");

      scanf("%d",&number);

      end=a[9];

      if(number>end)

      a[10]=number;

      else

      {

      for(i=0;i<10;i++)

      {

      if(a[i]>number)

      {

      temp1=a[i];

      a[i]=number;

      for(j=i+1;j<11;j++)

      {

      temp2=a[j];

      a[j]=temp1;

      temp1=temp2;

      }

  • 第1页
  • 上一页
  • 下一页