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

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

    時間:2025-05-07 06:37:34 C語言 我要投稿
    • 相關推薦

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

      2017年3月計算機等級考試即將到來,應屆畢業生考試網為大家整理了2017年計算機二級考試C語言考前預測上機試題,希望對各位考生有所幫助!

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

      一、程序填空題

      請補充main()函數,該函數的功能是:輸入兩個正整數numl和num2.求這兩個數的最大公約數和最小公倍數。

      例如,若輸入的兩個正整數為12,4,則它們的最大公約數為12,最小公倍數為4。

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

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

      試題程序

      #include

      #include

      void main()

      {

      int a,b,num1,num2,t;

      system("CLS");

      printf ("\nInput two numbers:\n");

      scanf("%d,%d",&num1,&num2);

      if(num1   {

      a==num2;

      b=num1:

      }

      else

      {

      a==num1;

      b=num2;

      }

      while(【1】)

      {

      t= 【2】

      a=b;

      b=t;

      }

      printf("greatest common divisor:

      %d\n",a);

      printf("least common multiple:

      %d\n",【3】);

      }

      二、程序改錯題

      下列給定程序中函數proc的功能是:取出長整型變量s 中偶數位上的數,依次構成一個新數放在t中。例如,當s

      中的數為123456789時,t中的數為2468。請修改程序中的

      錯誤,使它能得出正確的結果。

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

      試題程序:

      #include

      #include

      #include

      //****found****

      void proc(long S,long t)

      { long s1=10;

      s/=l0;

      *t=s%10;

      //****found****

      while(s<0)

      { s=s/100;

      *t=s%10*s1+*t;

      s1=s1*10:

      }

      }

      void main()

      { long s,t;

      system("CLS");

      printf("knPlease enter s:");

      scanf("%1d",&s);

      proc(s,&t);

      printf("The result is:%1d\n",t);

      }

      三、程序設計題

      請編寫函數proc(),其功能是:將str所指字符串中除下標為偶數,同時ASCII碼值為奇數的字符外,其余的字符都刪除,串中剩余字符所形成的一個新串放在t所指的數組中。例如,若str所指字符串中的內容為ABCDEFG12345,其中字符8的ASCII碼值為偶數,所在元素的下標為奇數,因此必須刪除;而字符A的ASCII碼值為奇數,所在數組中的下標為偶數,因此不應當刪除。依此類推,最后t所指的數組中的內容應是ACEG。

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

      請勿改動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】b!=0【2】a%b[3]numl*num2/a

      【解析】由程序可知,變量b中存放兩個正整數中較小

      的那個數,while循環求兩個正整數的公約數。因此【1】填“b!=0”.【2】填“a%b”;【3】處是求兩個正整數最小公倍數的表達式,因此【3】填“num1*num2/a”。

      二、程序改錯題

      (1)錯誤:void proc(long s,long t)

      正確:void proc(long s,lon9*t)

      (2)錯誤:while(s<0)

      正確:while(s>0)

      【解析】從主函數中實參可知,形參的第二個變量是長整型的指針變量。因此“void proc(long s,long t)”應改為“void proc(long s,long*t)”;要從低位開始取出長整型變量s中偶數位上的數,每次變量S要除以100,然后判斷其是否大于0來決定是否要繼續,因此“while(s<0)”應改為“while(s>0)”。

      三、程序設計題

      void proc(char*str,chart[])

      {

      int i,j=0;

      for(i=0;str[i]!=’\0 ’;i++)//從數組的第一個

      元素開始,到其最后一個

      {if(i%2==0&&str[i]%2!=0) //下標為偶數、

      同時ASCII碼值為奇數的字符

      t[j++]=str[i];) //如果成立,則把它放到t數

      組中

      t[j]=’\0 ’; //字符串結束標志為’\0’

      }

      【解析】題目中要求將字符串str中下標為偶數,同時ASCII碼值為奇數的字符放在數組t中。首先,需要檢查字符串str中下標為偶數的字符的ASCII碼值是否為奇數,將符合要求的字符放在數組t中。最后,為新的字符串數組添加結束符。

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

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

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

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

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

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

    計算機二級《C++》上機考前沖刺試題06-25

    計算機二級C語言上機沖刺試題及答案05-26

    2017計算機二級C語言考前測試題與答案解析01-06

    2016計算機二級《C++》上機考前沖刺試題05-23

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