<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            試題

            計算機二級C語言選擇題及答案

            時間:2025-01-27 18:37:38 試題 我要投稿

            2017計算機二級C語言選擇題及答案

              練習做多了自然會形成自己的做題方法和速度,為此,今天百分網小編為大家整理了以下2017計算機二級C語言選擇題及答案,希望對大家有幫助!

              1.若有說明語句:double*p,a;則通過scanf語句正確給輸入項讀人數據的程序段是( )。

              A.*p=&a;scanf("%1f”,p);

              B.*p=&a;scanf("%f",p);

              C.p=&a;scanf("%",*p);

              D.p=&a;scanf("%1f",p);

              2.下列程序的輸出結果是( )。

              #include

              main()

              { int a[2][3]={{1,2,3),{4,5,6)),(*p)[3],i;

              p=a ;

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

              { if(i<2)

              p[1][i]=p[1][i]-1;

              else

              p[1][i]=1;

              }

              printf("%d\n",a[o][1]+a[1][1]+a[1][2]);

              }

              A.8

              B.7

              C.12

              D.9

              3.執行下列程序后,輸出的結果是( )。

              #include

              #define S(X) X*X

              void main()

              { int a=9,k=3,m=2;

              a/=S(k+m)/S(k+m):

              printf("%d",a);

              }

              A.1

              B.4

              C.9

              D.0

              4.設x=015,則x=x^017的值是( )。

              A.00001111

              B.11111101

              C.00000010

              D.1 1000000

              5.若fp是指向某文件的指針,且尚未讀到文件末尾,則函數feof(fp)的返回值是( )。

              A.EOF B.-l

              c.非零值D.0

              6.設變量a、b、c、d和y都已正確定義并賦值。若有以下if語句:

              if(a  if(c==d)y=0;

              else y=1;

              該語句所表示的含義是( )。

              A.y=0,a   y=1,a≥b

              B.y=0,a   y=1,a≥b且c≠d

              C.y=0,a   y=1,a  D.y=0,a   y=1,c≠d

              7.下列程序的運行結果是( )。

              #include

              void main()

              {int s=0,k;

              for(k=7;k>1;k--)

              {switch(k)

              {case 1:

              case 4:

              case 7:

              s++:

              break;

              case 2:

              case 3:

              case 6:break;

              case 0:

              case 5:

              s+=2:

              break;

              }}

              printf("s=%d",s);

              }

              A.s=3

              B.s=4

              C.s=5

              D.無輸出結果

              8.若i、j已定義成mt型,則下列程序段中內循環體的總執行次數是( )。

              for(i=6;i>0;i--)

              for(j=0;j<4;j++){…}

              A.20

              B.24

              C.25

              D.30

              9.下列敘述中正確的是( )。

              A.只能在循環體內和switch語句體內使用break語句

              B.eotinue語句的作用是結束整個循環的執行

              C.在循環體內使用break語句或continue語句的作用相同

              D.從多層循環嵌套中退出時,只能使用got0語句

              10.有以下程序:

              #include

              void WriteStr(char*fn.char*str)

              { FILE*fp;

              fp=fopen(fn,"w");fputs(str,fp);fclose(fp);}

              main()

              { WriteStr("tl.dat","start");

              WriteStr("t1.dat","end");)

              程序運行后,文件t1.dat中的內容是( )。

              A.start

              B.end

              C.startend

              D.endrt

              11.運行下列程序時,若輸入的數據為“1,2,3”,則輸出結果是( )。

              main()

              { float a,b,c,t;

              scanf("%f,%f,%f",&a,&b,&c);

              if(a   {t=a;a=b.b=t;)

              if(a   {t=a;a=c;c=t;)

              it(b   {t=b;b=C;c—=;)

              printf("%f\n%f\n%f\n",a,b,c);

              }

              A.1.00

              2.00

              3.00

              B.1.00

              3.00

              2.00

              C.1

              3

              2

              D.3.00000

              2.00000

              1.00000

              12.設有程序段:

              int k=12:

              while(k=1)k=k一1;

              則下列描述中正確的是( )。

              A.while循環執行10次

              B.循環是無限循環

              C.循環體語句一次也不執行

              D.循環體語句執行一次

              13.在執行完下列的c語句段之后,則B的值是( )。

              char a=’A’;

              int b;

              B=((34&&56)&&(a<’b’));

              A.0

              B.1

              C.TRUE

              D.FALSE

              14.有下列函數定義:

              fun(float h)

              { printf("%f,%f\n",h,h*h);)

              該函數的類型是( )。

              A.int類型

              B.float類型

              C.void類型

              D.函數無類型說明,定義有錯

              15.有下列程序段:

              int n,t=1,S=0;

              scanf("%d",&n);

              do{s=s+t;t=t-2;while(t!=n);

              為使此程序段不陷入循環,從鍵盤輸入的數據應該是( )。

              參考答案:

              1.D。【解析】double*p,a定義了一個指向雙精度型的指針變量P和雙精度型變量a,p=&a表示將變量a的地址賦給指針變量p;scanf("%If",p)表示用鍵盤輸入的數賦給指針變量P所指向的地址單元中,scanf()函數要求在輸入double型數據,格式控制符必須用%1f。否則,數據不能正確輸入。所以選項D正確。

              2.B。【解析】本題考查for循環及if…else語句嵌套,第1次執行for循環,p[1][0]=p[1][0]=p[1][0]-1=3;第2 次執行for循環,p[1][1]=p[1][1]-1=4;第3次執行for 循環,p[1][2]=l,最后輸出的是a[0][1]+a[1][1]+a[1] [2]=2+4+1=7。

              3.D。【解析】本題主要考查帶參數的宏定義,過程如下:由于定義為define(x) x*x沒有括號優先級,所以:a= a/(S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m) =9/(3+2*3+2/3+2*3+2)=0。

              4.C。【解析】本題考查按位異或運算,異或就是相同為0,不同為1(化為二進制00001101),017的二進制為000001111,兩者異或結果為00000010。

              5.D。【解析】本題考查leon(tp)函數,其功能是:測試所指的文件的位置指針是否已達到文件尾,如果已達到文件尾,則函數返回非0值;否則返回0,表示文件未結束。

              6.C。【解析】語句“if(c==d)y=0;else y=1;”是if(a

              7.B。【解析】運行程序,當k=7時switch(7)執行case:7,s++后s=1,break跳出。k--,k=7繼續循環switch(6),執行case 6;直接跳出循環,k--變成5,繼續循環switch(5),執行case 5后面的語句s+=2,也相當于s= s+2,此時s為3,break跳出,k變為4,繼續循環,執行case 4為空,繼續執行case 7;s++為4跳出循環,k--變為3,繼續循環,執行case 3,空語句往下執行case 6,跳出,k -- 為2,繼續循環,執行case 2;空語句往下執行case 3,空語句再執行case 7,跳出循環,k--為1不符合循環,退出,此時S=4。

              8.B。【解析】本題考查for循環的使用。對于第1個for循環,任何一個i,內層j的循環都要使j~0到3,j=4時不符合,所以退出j循環;然后i減1,J仍然要從0~3,j=4 時退出J循環直到i變成0,退出i循環。第一條for語句執行6次,第二條for語句執行4次,所以內循環體執行6*4 =24次。

              9.A。【解析】本題考查循環跳出的知識點:①break語句可以出現在switch循環體內及語句體內,它的作用是跳出循環體,不能用于其他的語句;②continue語句的作用是結束本次循環,即跳過循環體中下面尚未執行的語句,而接著判定循環條件是否成立,確定下一次循環是否繼續執行,執行contiune語句不會使整介循環終止;③循環體內使用break語句會使循環提前終止;④從多層循環嵌套中退出時,可以使用90t0語句或者break語句。

              10.B。【解析】用"w"方式打開文件,意思是如果文件名相同則覆蓋原來的文件,所以當再次輸入時覆蓋了第一次的內容,B選項正確。

              11.D。【解析】本題考查if語句。第1個if語句,如果

              a  12.C。【解析】本題考查while,while循環表達式k=1是個賦值表達式而不是邏輯表達式,k的初值為12不符合循環條件,所以循環體一次也不執行。

              13.B。【解析】本題考查3個知識點:將一個字符賦給一個字符變量時,是將該字符對應的ASCIl碼存儲到內存單元中;常見ASCII碼的值如A和a;只要邏輯與運算符&&的兩個運算對象都為真時,返回值就是1。

              14.A。【解析】本題考查函數值的類型,在函數定義時, 由于函數沒有說明其類型,系統默認一律自動按整型(int)

              處理。

              15.D。【解析】本題主要考查do—while循環,因為變量t的初始值等于1,經過第一次do-while循環后,執行t= t-1這條語句一次,所以變量t的值為-1,判斷關系表達式t!=n是否成立,如果關系表達式成立,則執行第二次循環,如果關系表達式不成立,退出循環。由此可見,只要輸入變量n的值為負奇數,則一定會使t==n成立,故退出do-while循環。

              A.任意正奇數

              B.任意負偶數

              C.任意正偶數

              D.任意負奇數

            【計算機二級C語言選擇題及答案】相關文章:

            計算機二級《C語言》選擇題題庫與答案07-27

            計算機二級《C語言》選擇題題庫及答案11-16

            2017最新計算機二級《C語言》選擇題及答案10-27

            計算機二級C語言選擇題及答案201605-04

            計算機二級考試C語言試題與答案(選擇題)07-06

            計算機二級《C語言》選擇題訓練題及答案09-05

            2016計算機二級C語言選擇題及答案09-10

            2017計算機二級C語言選擇題訓練及答案08-17

            計算機二級C語言選擇題及答案解析201710-13

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看