程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++ 基礎學習筆記(4)---循環控制結構(測試題)

C++ 基礎學習筆記(4)---循環控制結構(測試題)

編輯:C++入門知識

一、選擇題

1、若給定條件表達式(M)?(a++):(a--),則其中表達式M( C )。

(A)和(M==0)等價     (B)和(M==1)等價

(C)和(M!=0)等價      (D)和(M!=1)等價

2、在C/C+語言中,結束while語句循環的條件為( A   )。

(A)0    (B)1    (C) true    (D)非0

在C/C++語言中,結束do-while語句循環的條件為( A )。

(A)0    (B)1    (C) true   (D)非0

3、若k為整型,以下while循環體中的語句執行( B )。

 k=2;

 while(k=0)

 {

     printf("%d",k);

     k--;printf(" ");

   }

(A)無限次    (B)0次    (C)1次    (D)2次

4、以下語句段中,不是無限循環的程序段是( D )。C

(A) i=100;                              (B)for(;;);

    while (1)

    {

       i=i%100;i++;

       if(i>100)break;

       }

(C) k=32764;                            (D) s=32764;

     do{                                while((s++%2)||(s%2))s++;

         k++;k++;

       } while(k>0);                               

5、C語言中用於結構化程序設計的3種基本結構是(  A )。

(A)順序結構、選擇結構、循環結構      (B) if,switch,break

(C) for,while,do-while                   (D) if,for,continue

6、對於下面的程序段

    int t=0;

    while (t=l)

    {...}   

以下敘述正確的是( B   )。

(A)循環控制表達式的值為0    (B)循環控制表達式的值為1

(C)循環控制表達式不合法      (D)以上說法都不對

 

7、在下列選項中,會構成死循環的是( B )。

 (A) int i=100;          (B)for(;;);    (C) int k=10000;                  (D) int s=36;

    while(1)                          do {k++;}while(k>10000);           while(s)--s;

    {

       i=i%100+1;

       if(i==100)break;

    }

8、在下面給出的4個語句段中,能夠正確表示以下的函數關系的是( A )。

         -1    (x<0)

    y=   0     (x=0)

         1     (x>0)

 (A)if(x!=0)       (B)y=0;          (C)if(x<0)y=-l;        (D)y=-1;

      if(x>0)y=l;       if(x>=0)         if(x!=0)y=1;         if(x!=0)

      else y=-l;          if(x)y=l;        else y=0;              if(x>0) y=l;

    else y=0;              else y=-l;                           else y=0;

二、讀程序分析程序的運行結果

9、設int a=5, b=6, 表達式(++a==b--)?++a:--b的值是   7   。

10、以下程序的輸出為( B   )。

    #include<stdio.h>

    void main( )

    {

      int i,j,x=0;

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

      {

        x++;

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

        {

          if(j%2) continue;

          x++;

         }

        x++;

      }

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

    }

    (A)x=4        (B)x=8          (C) x=6        (D) x=12

 11、以下程序的輸出為( B )。

    #include <stdio.h>

    void main( )

    {

       int x=1,y=0,a=0,b=0;

       switch(x)

       {

          case 1:

             switch(y)

           {

               case 0:a++;break;

               case 1:b++;break;

            } //後面沒有break,所以繼續執行case 2

        case 2:

            a++;b++;break;

        case 3:

            a++;b++;

       }

       printf("a=%d,b=%d ",a,b);

    }

 (A)a=l,b=0    (B)a=2,b=1    (c)a=1,b=l    (D)a=2,b=2

 12、以下程序的輸出為( B )

    #include <iostream.h>

    void main( )

    {

       int i,j,k=0,m=0;

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

       {

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

          

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved