<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 等級考試

    計算機等級考試C語言沖刺題程序改錯題

    時間:2025-05-30 18:05:26 等級考試 我要投稿
    • 相關推薦

    2014年計算機等級考試C語言沖刺題(程序改錯題)

      試題一

    2014年計算機等級考試C語言沖刺題(程序改錯題)

      下列給定的程序中,函數proc()的功能是:用選擇法對數組中的m個元素按從小到大的順序進行排序。

      例如,排序前的數據為:11 32 -5 2 14則排序后的數據為:-5 2 11 14 32

      請修改程序中的錯誤,使它能得到正確結果。

      注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。

      試題程序:

      #include

      #define M 20

      void proc(int a[],int n)

      {

      int i,j,t,P;

      //****found****

      for(j=0;j {

      P=j;

      for(i=j;i if(a[i] p=i;

      t=a[p]];

      a[p]=a[j];

      //****found****

      a[p]=t:

      }

      }

      void main()

      {

      int arr[M]={11,32,-5,2,14).i,m=5;

      printf(”排序前的數據:”);

      for(i=0;i printf(”%d”,arr[i]):

      printf(”\n”);

      proc(arr,m):

      printf(”排序后的順序:”);

      for(i=0;i printf(”%d”,arr[i]);

      printf(”\n”);

      }

      }

      試題二

      下列給定程序中,函數proe()的功能是:對M名學生的學習成績,按從高到低的順序找出前m(m<10)名學生來,并將這些學生數據存放在一個動態分配的連續存儲區中,此存儲區的首地址作為函數值返回。

      請修改程序中的錯誤,使它能得出正確的結果。

      注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。

      試題程序:

      #include%stdlib.h>

      #include

      #include

      #include

      #include%malloe.h>

      #define M 10

      typedef struct ss

      {

      char num[10];

      int s;

      }

      STU;

      STU *proc(STU a[],int m)

      {

      STU b[-M],*t;

      int i,j,k;

      //****found****

      *t=calloc(m,sizeof(STU));

      for(i=0;i for(k=0;k {

      for(i=j=0;i if(b[i].s>b[j].s)j=i;

      //****found****

      t[k].num=b[j].num;

      t[k].s=b[j].S;

      b[j].s=0;

      }

      return t:

      }

      void outresuh(STU a[],FILE *pf)

      f

      int i;

      for(i=0;i fprintf(pf,”No=%s Mark=%d\n”,

      a[i] mum,a[i].s);

      fprintf(pf,”\n\n”);

      )

      void main()

      {STU stu[M]={{¨A01”,81},{¨A02”,89},

      {¨A03”,66},{”A04”,87),{”A05”,77),

      {”A06”,90),{"A07”,79),{”A08”,61),

      {”A09”,80},{”A10”,71));

      STU+pOrder;

      int i,m;

      system(”CLS”);

      printf(”****THE RESULT****\n”);

      outresuh(stu,stdout);

      print{(”\nGive the number of the students

      who have better score:”);

      scanf(”%d”,&m);

      while(m>10)

      printf(”\nGive the number of the

      students who have better score:”);

      scanf(”%d”,&m);

      }

      p()rder=proc(stu,m);

      printf(”****THE RESULT****\n”);

      printf(”The lop:\n”);

      for(i=0:i printf(”%s%d\n”,pOrder[i].hum,

      pOrder[i].s);

      free(pOrder);

      )

      試題三

      下列給定程序中,函數proc()的功能是:根據整型形參n的值,計算如下公式的值。

      t=i-1/(2*2)-1/(3*3)-…-1/(n*n)

      例如.當n=7時。t=0.188203。

      請修改函數proc()中的錯誤,使它能得出正確的結果。

      注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。

      試題程序:

      #include

      #include

      #include

      double proc(int n)

      {double y=1.0;

      inl i;

      //****found****

      for(i=2;i //****found****

      y-=1/(i*i):

      telurn(y);

      }

      void main()

      { int n=7:

      system(”CLS”):

      print[(”\nThe result is%lf\n”,proe(n))。

      }

      試題四

      下列給定程序中函數proc的功能是:取出長整型變量s中偶數位上的數,依次構成一個新數放在t中。例如,當s中的數為123456789時,t中的數為2468。請修改程序中的錯誤,使它能得出正確的結果。

      注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。

      試題程序:

      #include

      #include

      #include

      //****found****

      void proc(1ong s,long t)

      {long s1=10;

      s/=10:

      *t=s;

      //****found****

      while(s<0)

      { s=s/100;

      *t=s*s1+*t;

      s1=s1*10:

      }

      void main()

      {long S,t;

      system(”CLs”);

      printf(”\nPlease enter s:”);

      scanf(”%ld”,&s);

      proc(s,&t):

      printf(”The result is:%ld\\n”,t);

      }

      試題五

      給定程序中,函數proc()的功能是:使數組中的元素的值縮小5倍。

      請修改程序中的錯誤,使它能得出正確的結果。

      注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。

      試題程序:

      #include

      #include

      #include

      float m[10];

      f f****found****

      int proc(void)

      {

      int J;

      printf(”In subfunc after calling\n”);

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

      {

      |f****found****

      printf(”%f”,m[j]%5);

      }

      }

      void main()

      {

      int i;

      printf(”In main before calling\n”);

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

      {

      m[i]=i+20:

      printf(”%f”,m[i]);

      }

      proc();

      printf(”\nIn main after calling\n”):

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

      printf(”%f”,m[i]/S):

    【計算機等級考試C語言沖刺題程序改錯題】相關文章:

    2014年計算機等級考試C語言沖刺題(程序填空題)08-26

    C語言程序改錯題練習07-03

    C語言經典程序題09-17

    計算機等級考試C語言程序設計選擇練習06-15

    計算機等級考試二級C語言真題09-26

    C語言考前沖刺題10-26

    2016年計算機等級C語言考試真題及答案09-22

    計算機等級考試二級C語言填空題09-09

    計算機二級考試C語言無紙化程序真題09-02

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人