<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    計算機二級C語言考前預測上機復習題及解析

    時間:2025-05-28 05:17:42 C語言 我要投稿
    • 相關推薦

    計算機二級C語言考前預測上機復習題及解析

      以下是應屆畢業生考試網小編為大家準備的2017年計算機二級考試C語言考前預測上機復習題及解析,更多計算機等級考試內容請關注應屆畢業生考試網。

      一、程序填空題

      給定程序的功能是計算score中m個人的平均成績aver,將低于aver的成績放在below中,通過函數名返回人數。

      例如,當score=(10,20,30,40,50,60,70,80,90},m= 9時,函數返回的人數應該是4,below={10,20,30,40}。

      注意:部分源程序給出如下。

      請勿改動main()函數和其他函數中的任何內容,僅在橫線上填入所編寫的若干表達式或語句。

      試題程序:

      #include

      #include%string.h>

      int fun(int score[],int m,int below[])

      {

      int i,j=0;

      float aver=0.0;

      for(i=0;i   aver+=score[i]:

      aver/=(float)m:

      for(i=0;i   if(score[i]   below[j++]= 【1】 ;

      return j;

      }

      void main()

      {

      int i,n,below[9];

      int score[9]={10,20,30,40,50,60,70,80,90);

      n=fun(score,9, 【2】);

      printf("\n Below the average score are:%d\n",n);

      for(i=0;i   printf("%d", 【3】 );

      }

      二、程序改錯題

      下列給定程序中函數fun()的功能是:用遞歸算法計算斐波拉契數列中第n項的值。從第1項起,斐波拉契數列為:1,1,2,3,5,8,13,21,…

      例如,若給n輸入7.則該項的斐波拉契數值為l3。

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

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

      試題程序:

      #include

      long fun(int g)

      {

      //****found\****

      switch(g);

      {

      case 0:return 0;

      //****found****

      case 1:case 2:return 1;

      }

      return(fun(g-1)+fun(g-2));

      }

      void main()

      {

      long fib;int n;

      printf("Input n:");

      scanf("%d",&n);

      printf("n=%d\n",n);

      fib=fun(n):

      printf("fib=%d\n\n",fib);

      }

      三、程序設計題

      請編寫函數proc(),其功能是:將str所指字符串中下標為偶數的字符刪除,串中剩余字符形成的新串放在t所指數組中。

      例如,當str所指字符串中的內容為abedefg,則在t所指數組中的內容應是bdf。

      注意:部分源程序給出如下。

      請勿改動main()函數和其他函數中的任何內容,僅在函數proc()的花括號中填入所編寫的若干語句。

      試題程序:

      #include

      #include

      #include

      #include

      void proc(char*str,char t[])

      {

      }

      void main()

      {

      char str[100],t[100];

      system("CLS");

      printf("\nPlease enter string str:");

      scanf("%s",str);

      proc(str,t);

      printf("\nThe result is:%s\n",t);

      }

      上機考試試題答案與解析

      一、程序填空題

      【1】score[i]或*(score+i)【2】below【3】below[i]或*(below+i)

      【解析】fun()函數的功能是返回低于平均成績的人數,通過for循環遍歷數組score,求和存入變量aver,然后計算出平均值。第二個循環將低于平均成績的數據賦值數組b,因此第【1】處填“score[1]”或“*(score+i)”;在主函數中調用函數fun()時,最后一個參數應填入數組名blew,即將低分考生數據存入數組blew中,然后語句“printf("\n Be—low the average score are:%d"n);”輸出低分考生個數,n 值即fun()函數返回值也就是低分考生的人數值。最后,利用循環輸出below中的結果。

      二、程序改錯題

      (1)錯誤:switch(g);

      正確:switch(g)

      (2)錯誤:case 1:case2:return 1;

      正確:case 1;case 2:return 1;

      【解析】此題考查c語言的語法規則,switch(表達式)后不應該帶有“;”,case語句常量后應該是“:”。switch語句的一般形式如下:

      switch(表達式){

      case常量表達式1:語句1;

      case常量表達式2:語句2;

      case常量表達式n:語句n;

      defauh:語句n+1;

      }

      三、程序設計題

      void proc(char*str,char t[])

      {

      int i,j=0,k=strlen(str); //k是放字符串的K度的變量

      for(i=l;i  t[j++]=str[i]; //把下標為奇數的數放到t數組中

      t[j]=’\0’;//因為t是字符串,岡此必須用’\0’作為結束標志

      }

      【解析】題目要求將下標為偶數的字符刪除,其余字符放在新的字符數組t中。首先取出字符串str中下標為奇數的字符,將其賦值給新的字符串t,最后用7\o’作為字符串結束的標志。

    【計算機二級C語言考前預測上機復習題及解析】相關文章:

    計算機二級C語言考前預測上機試題及解析07-04

    計算機二級C語言上機復習題及答案解析03-14

    計算機二級C語言預測上機精選訓練題07-05

    2017年計算機等級二級C語言上機考前預測題04-02

    2017計算機二級C語言上機最終預測題07-08

    計算機二級考試C語言預測上機鞏固試題06-17

    計算機二級C語言上機考前臨考練習02-19

    2017年計算機二級C語言精準預測上機訓練題06-18

    計算機二級《C語言》考前練習題與解析201605-26

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