2014計(jì)算機(jī)二級(jí)考試C語言考前預(yù)測選擇題

字號(hào):

為大家收集整理了《2014計(jì)算機(jī)二級(jí)考試C語言考前預(yù)測選擇題》供大家參考,希望對(duì)大家有所幫助?。。?BR>    1.結(jié)構(gòu)化分析方法是面向( )的自頂向下、逐步求精進(jìn)行需求分析的方法
    A.對(duì)象
    B.數(shù)據(jù)結(jié)構(gòu)
    C.數(shù)據(jù)流
    D.目標(biāo)
    2.對(duì)線性表進(jìn)行二分法檢索,其前提條件是( )。
    A.線性表以順序方式存儲(chǔ),并按關(guān)鍵碼值排好序
    B.線性表以順序方式存儲(chǔ),并按關(guān)鍵碼的檢索頻率排好序
    C.線性表以鏈?zhǔn)椒绞酱鎯?chǔ),并按關(guān)鍵碼值排好序
    D.線性表以鏈?zhǔn)椒绞酱鎯?chǔ),并按關(guān)鍵碼的檢索頻率排好序
    3.結(jié)構(gòu)化程序設(shè)計(jì)的3種結(jié)構(gòu)是( )。
    A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu)
    B.分支結(jié)構(gòu)、等價(jià)結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
    C.多分支結(jié)構(gòu)、賦值結(jié)構(gòu)、等價(jià)結(jié)構(gòu)
    D.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
    4.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為了節(jié)省時(shí)間,應(yīng)采用的算法是( )。
    A.堆排序
    B.直接插入排序
    C.快速排序
    D.直接選擇排序
    5.在數(shù)據(jù)管理技術(shù)的發(fā)展過程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性的階段是( )。
    A.數(shù)據(jù)庫系統(tǒng)
    B.文件系統(tǒng)
    C.人工管理
    D.數(shù)據(jù)項(xiàng)管理
    6.設(shè)有如圖所示二叉樹,對(duì)此二叉樹后序遍歷的結(jié)果為( )。
    A.ZBTYCPXA
    B.ATBZXCYP
    C.TZBACYXP
    D.ATBZXCPY
    7.鏈表不具有的特點(diǎn)是( )。
    A.不必事先估計(jì)存儲(chǔ)空間
    B.可隨機(jī)訪問任意元素
    C.插入、刪除不需要移動(dòng)元素
    D.所需空間與線性表長度成正比
    8.在數(shù)據(jù)庫設(shè)計(jì)中,將E—R圖轉(zhuǎn)換為關(guān)系模式的過程屬于( )。
    A.需求分析階段
    B.邏輯設(shè)計(jì)階段
    C.概念設(shè)計(jì)階段
    D.物理設(shè)計(jì)階段
    9.C語言可執(zhí)行程序的開始執(zhí)行點(diǎn)是( )。
    A.包含文件中的第一個(gè)函數(shù)
    B.程序中第一個(gè)函數(shù)
    C.程序中的main()函數(shù)
    D.程序中第一條語句
    10.在C語言程序中可用做用戶標(biāo)識(shí)符的是( )。
    A.void
    123
    BBN
    B.aa
    _abc
    cas
    C.as+b3
    -123
    If
    D.6f
    Do
    SIG
    11.以下所列的C語言常量中,錯(cuò)誤的是( )。
    A.0xFF
    B.1.2e0.5
    C.2L
    D.‘72’
    12.若變量a、i已正確定義,且i已正確賦值,合法的語句是( )。
    A.a==l
    B.++i
    C.a=a++=5
    D.a=int(i)
    13.若a為int類型,且其值為3,則執(zhí)行完表達(dá)式a+= a-=a*a后,a的值是( )。
    A.一3
    B.9
    C.一12
    D.6
    14.若有定義“int a=5,b=7;”,則表達(dá)式a%一(b%2) 運(yùn)算后,a的值為( )。
    A.0
    B.1
    C.11
    D.3
    15.若執(zhí)行以下程序時(shí)從鍵盤上輸入9,則輸出結(jié)果是( )。
    main()
    { int n;
    scanf(”%d”,&n);
    if(n++<10)printf(”/%d\n”,n);
    else printf(”%d\n”,n--);
    }
    A.11
    B.10
    C.9
    D.8
    16.設(shè)a、b、c、d、m、n均為int型變量,且a=5、b=6、c= 7、d=8、m=2、n=2,則邏輯表達(dá)式(m=a>b)&&(n—c> d)運(yùn)算后,n的值是( )n
    A.0
    B.1
    C.2
    D.3
    17.有如下程序:
    main()
    { int x=23;
    do
    {printf(”%d”,x--);}
    while(!x);
    }
    該程序的執(zhí)行結(jié)果是( )。
    A.321
    B.23
    C.不輸出任何內(nèi)容
    D.陷入死循環(huán)
    18.下列程序的輸出結(jié)果是( )。
    #include
    main()
    { int a=2,b=3,P;
    p=f(a,b);
    printf(”%d”,p);
    }
    int f(a,b)
    { int c;
    if(a>b)c=1;
    else if(a==b)c=0;
    else c=-l;
    return(c);
    }
    A.-l
    B.0
    C.1
    D.2
    19.有下列程序:
    fun(int x,int y)
    { static int m=0,i=2;
    i+=m+1;m=i+x+y;return m;
    }
    main()
    { int j=1,m=1,k;
    k=fun(j,m);print S(”%d,”,k);
    k=fun(j,m);printf(”%d\n”,k);
    )
    執(zhí)行后的輸出結(jié)果是( )。
    A.5,5
    B.5,11
    C.11,11
    D.11,5
    20.下列字符數(shù)組初始化語句中,不正確的是( )。
    A.char c[]=’900dmornin9’;
    B.char c[20]="900dmorning";
    C.char c[]={’a’,’b ’,’c ’,’d’);
    D.char c[]={"ffgoodmorning"};
    21.下列程序的輸出結(jié)果是( )。
    #include
    void p(int*x)
    { printf("%d¨,++*x);
    }
    void main()
    { int y=3;
    p(&y);
    }
    A.3
    B.4
    C.2
    D.5
    22.若變量e為char類型,能正確判斷出C為小寫字母的表達(dá)式是( )。
    A.’a’<=c<=’2’
    B.(c>=’a’)||(c<=’2’)
    C.(’a’<=c)and(’z’>c)
    D.(c>=’a’)&&(c<=’2’)
    23.以下程序的輸出結(jié)果是( )。
    main()
    { int Rum=0;
    while(num<=2)
    { num++;
    printf(”%d\n”,num);
    }
    }
    A.1
    B.1
    C.1
    2
    3
    4
    D.1
    2 2
    3
    24.以下函數(shù)返回a所指數(shù)組中最小的值所在的下標(biāo)值:
    fun(int*a,int n)
    { int i,j=0,P;
    p=j;
    for(i=j;i   if(a[i]  }
    在下劃線處應(yīng)填入的是( )。
    A.i=P
    B.a[p]=a[i]
    C.p=j
    D.p=i
    25.有如下程序段:
    int a=14,b=15,x;
    char c=’A’;
    x=(a&&b)&&(c<’B’):
    執(zhí)行該程序后,x的值為( )。
    A.true
    B.false
    C.0
    D.1
    26.以下程序的輸出結(jié)果是( )。
    main()
    { int i,a[4] [4]一{{1,3,5),{2,4,6},{3,5,7}};
    printf("%(1%d%d%d\n".a[O][3],a[1][2],a[2]
    [1],a[3][0];
    }
    A.0650
    B.1470
    C.5430
    D.輸出值不定
    27.下列程序中函數(shù)sort()的功能是對(duì)數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序。
    #include
    void sort(int a[],int ll)
    { int i,j,t;
    for(i=0;i   for(j=j+1+1;j   if(a[i]   {t=a[i];a[i]=a[j];a[j]=t;
    }
    }
    main()
    { int a[10]一{1,2,3,4,5,6,7,8,9,10},i;
    sort(&a[1],7);
    for(i=0;i<10;i++)printf("%d,",a[i]);
    }
    程序運(yùn)行后的輸出結(jié)果是( )。
    A.1,2,3,4,5,6,7,8,9,10,
    B.10,9,8,7,6,5,4,3,2,1,
    C.1,8,7,6,5,4,3,2,9,10,
    D.1,2,10,9,8,7,6,5,4,3,
    28.下列判斷正確的是( )。
    A.char a="ABCD":等價(jià)于char*a;*a="ABCD":
    B.char str[10]={"ABCD"}:等價(jià)于char str[10];str []={"ABCD"};
    C.char*s="ABCD":等價(jià)于char s;*s="ABCD";
    D.char c[5]="ABCD",d[5]="ABCD":等價(jià)于char c [5]-d[5]="ABCD";
    29.有如下程序:
    main()
    { int n[5]={0,0,0},i,k=2;
    for(i=0;i&printf("%d\n",n[k]););
    }
    該程序的輸出結(jié)果是( )。
    A.不確定的值
    B.2
    C.1
    D.0
    30.當(dāng)執(zhí)行下面的程序時(shí),如果輸入ABC,則輸出結(jié)罘是( )。
    #include
    #include
    main()
    { char ss[10]="1,2,3,4,5":
    gets(ss);strcat(ss,"6789");printf("%s\n",ss);
    }
    A.ABC6789
    B.ABC67
    C.12345ABC6
    D.ABC456789
    31.以下程序的輸出結(jié)果是( )。
    #define M(x,y,z)x*y+z
    main()
    { int a=l,b=2,c=3;
    printf("%d\n",m(a+b.b+c,c+a));
    }
    A.19
    B.1 7
    C.15
    D.12
    32.有以下程序:
    main()
    { int k=5,n=0;
    do
    { switch(k)
    { case 1:
    case 3:n+=l;k--;break;
    defalut:n=0;k--;
    case 2:
    case 4:n+=2;k--;break:
    }
    printf("%d",n);
    }while(k>0&&n<5);
    }
    程序運(yùn)行后的輸出結(jié)果是( )。
    A.235
    B.0235
    C.02356
    D.2356
    33.下面for語句的循環(huán)次數(shù)為( )。
    for(x=1,y=0;(y!=19)&&(x<6);x++);
    A.是無限循環(huán)
    B.循環(huán)次數(shù)小定
    C.最多執(zhí)行6次
    D.最多執(zhí)行5次
    34.對(duì)下述程序的判斷中,正確的是( )。
    #include
    main()
    { char*p,s[256];
    p=s ;
    while(strcmp(s,"the end"))
    { printf("Input the strin9:");
    gets(s);
    while(*p)
    putchar(*p++);
    }}
    A.此程序循環(huán)接收字符串并輸出,直到接收到字符串“the end”為止
    B.此程序循環(huán)接收字符串,接收到字符串“the end”則輸出,否則程序終止
    C.此程序循環(huán)接收字符串并輸出,直到接收字符串“the end”為止,但因?yàn)榇a有錯(cuò)誤,程序不能正常工作
    D.此程序循環(huán)接收字符串并將其連接在一起,直到接收字符串“the end”為止,輸出連接在一起的字符串
    35.下列程序的輸出結(jié)果是( )。
    #include
    main()
    { int i,S=0;
    for(i=1;i<10;i++)
    if(!(i%2)&&!(i%3))s+=i;
    printf("%d\n",s);
    }
    A.4
    B.39
    C.45
    D.6
    36.有以下程序:
    void fun2(char a,char b) {printf(”%c%c”,a,b); }
    char a=’A’,b=’B’;
    void funl(){a=’C’;b=’D’;}
    main()
    { funl();
    printf("%c%c",a,b);
    fun2(’E’,’F’);
    }
    程序的運(yùn)行結(jié)果是( )。
    A.CDEF
    B.ABEF
    C.ABCD
    D.CDAB
    37.有以下程序:
    #include
    main()
    { char cl=’1’,c2=’2’;
    cl=getchar();c2=getchar();putchar(c1);putcha:
    (c2);
    }
    當(dāng)程序運(yùn)行時(shí)輸入a<回車>后,下列敘述中正確的是( )。
    A.變量c1被賦予字符a,c2被賦予回車符
    B.程序?qū)⒌却脩糨斎氲?個(gè)字符
    c.變量c1被賦予字符a,c2中仍是原有字符2
    D.變量c1被賦予字符a,c2中將無確定值
    38.下述程序的輸出結(jié)果是( )。
    #define N 20
    void fun(int a[],int n,int m)
    { int i,j;
    for(i=m;i>n;i--)a[i+1]=a[i];
    }
    main()
    { int i,a[N]={1,2,3,4,5,6,7,8,9,10};
    fun(a,2,9);
    for(i=0;i<5;i++)printf("%d",a[i]);
    }
    A.10234
    B.12344
    C.12334
    D.12234
    39.若要用函數(shù)fopen打開一個(gè)新的二進(jìn)制文件,該文件要既能讀也能寫,則應(yīng)以( )方式打開文件。
    A."wb"
    B."wb+"
    C."rb+"
    D."rb"
    40.下列敘述中錯(cuò)誤的是( )。
    A.在C語言中,函數(shù)中的自動(dòng)變量可以賦初值,每調(diào)用一次賦一次初值
    B.在C語言中,在調(diào)用函數(shù)時(shí),實(shí)參和對(duì)應(yīng)形參在類型上只需賦值兼容
    C.在C語言中,外部變量的隱含類型是自動(dòng)存儲(chǔ)類別
    D.在C語言中,函數(shù)形參的存儲(chǔ)類型是自動(dòng)(auto)類型的變量
    1.C。【解析】結(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方法,采用自頂向下、逐層分解,建立系統(tǒng)的處理流程,以數(shù)據(jù)、流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。
    2.A?!窘馕觥繉?duì)線性表進(jìn)行二分法檢索,要求線性表是按順序方式存儲(chǔ)的,并按關(guān)鍵碼值的大小排好序。
    3.D?!窘馕觥拷Y(jié)構(gòu)化程序設(shè)計(jì)的主要觀點(diǎn)是采用自頂向下、逐步求精的程序設(shè)計(jì)方法;任何程序都可由順序、選擇和循環(huán)3種基本控制結(jié)構(gòu)構(gòu)造。
    4.B?!窘馕觥慨?dāng)數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),說明數(shù)據(jù)A按關(guān)鍵字值基本有序。在待排序數(shù)據(jù)基本有序的情況下,采用插入排序所用的時(shí)間最少。
    5.A。【解析】數(shù)據(jù)庫系統(tǒng)的一個(gè)重要目標(biāo)就是使程序和數(shù)據(jù)真正分離,數(shù)據(jù)蝕立性包括數(shù)據(jù)的物理獨(dú)立性和數(shù)據(jù)的邏輯獨(dú)立性。相對(duì)文件系統(tǒng)人工管理和數(shù)據(jù)項(xiàng)管理,數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨(dú)立性大大增加。
    6.A?!窘馕觥亢笮虮闅v首先訪問左子樹,然后右子樹,最后根結(jié)點(diǎn),即左右根。故該二叉樹的前序遍歷結(jié)果為“ATBZXCYP”。后序遍歷和中序遍歷的結(jié)果分別為“ZB—TYCPXA”和“TZBACYXP”。
    7.B?!窘馕觥挎湵聿捎玫氖擎?zhǔn)酱鎯?chǔ)結(jié)構(gòu),它的結(jié)點(diǎn)空間可以動(dòng)態(tài)申請(qǐng)和釋放;它的數(shù)據(jù)元素的邏輯次序靠結(jié)點(diǎn)的指針來指示,插入、刪除不需要移動(dòng)數(shù)據(jù)元素。但是鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)也有不足之處:每個(gè)結(jié)點(diǎn)中的指針域需額外占用存儲(chǔ)空間,它是一種非隨機(jī)存儲(chǔ)結(jié)構(gòu)。
    8.B?!窘馕觥繑?shù)據(jù)唪設(shè)計(jì)階段主要包括需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)。邏輯設(shè)計(jì)的主要工作是將E—R圖轉(zhuǎn)換為關(guān)系模式。
    9.C?!窘馕觥棵總€(gè)C程序有且只有一個(gè)主函數(shù)main(),且程序必須從main()函數(shù)開始執(zhí)行,并在main()函數(shù)中結(jié)束。
    10.B?!窘馕觥縞語言規(guī)定,標(biāo)識(shí)符是由字母、數(shù)字或下劃線組成,并且它的第一個(gè)字符必須是字母或者下劃線,不能使用關(guān)鍵字和數(shù)字,A中void,C中if,D中D0,都屬于關(guān)鍵字。
    11.B。【解析】在C語言中,用e來表示科學(xué)計(jì)數(shù)法時(shí),規(guī)定在e后面的數(shù)字必須為整數(shù)。
    12.B。【解析】選項(xiàng)A為表達(dá)式,因此不正確,選項(xiàng)C中a++本身就是表達(dá)式,無需再賦值,選項(xiàng)D中,在強(qiáng)制類型轉(zhuǎn)換時(shí),類型名應(yīng)用括號(hào)括起來,故選擇8選項(xiàng)。
    13.C?!窘馕觥吭诒磉_(dá)式中,其+=,-=的優(yōu)先級(jí)相同,按從右到左的結(jié)合方向運(yùn)算,而*的優(yōu)先級(jí),表達(dá)式寫成a=a+(a-(a*a)),代入3可得-12。
    14.A?!窘馕觥勘绢}考查“%”運(yùn)算符的使用。運(yùn)算符“%”是整數(shù)除法的余數(shù)。本題中表達(dá)式a%=(b%2)等價(jià)于a=a%(b%2)=5%(7%2)=5%1=0。
    15.B?!窘馕觥慨?dāng)n為9時(shí),此時(shí)if語句成立,執(zhí)行n+ +后,n為10,因此輸出n的值為10,故選擇B選項(xiàng)。
    16.C。【解析】因?yàn)閍>b不成立,故表達(dá)式a>b的值為0,即為0賦給m,因此&&左邊表達(dá)式的值為0,0與任何值&&運(yùn)算都為0,于是不再計(jì)算&&右邊表達(dá)式的值,所以此時(shí)的n仍然為2。
    17.B?!窘馕觥勘绢}考查do—while語句,當(dāng)X一23時(shí),執(zhí)行do后的語句,x--的表達(dá)式值為x=x-1,此時(shí)X的值為22,而!X為0,因此while循環(huán)不成立,退出,故選擇B 選項(xiàng)。
    18.A?!窘馕觥勘绢}考查if-else語句。if為真則執(zhí)行C =1,if為假則執(zhí)行else中的條件,不符合繼續(xù)執(zhí)行else。
    19.B?!窘馕觥孔雍瘮?shù)fun(int x,int y),將變量m和i聲明為局部靜態(tài)變量,因此第l次調(diào)用主函數(shù)后,局部靜態(tài)變量m和i的值為5和3,第l次函數(shù)調(diào)用結(jié)束時(shí),它們的值不釋放保持不變,所以第2次調(diào)用時(shí),局部靜態(tài)變量m和i 的初始值分別為5和3,即在執(zhí)行“i+=m+1”時(shí),i的值為9,因此最終m的值為11。
    20.A。【解析】本題考查兩個(gè)概念:①用單引號(hào)括起來的一個(gè)字符常量只能存放一個(gè)字符;②℃語言中沒有字符串變量,只能用字符數(shù)組來存儲(chǔ)字符串。
    21.B?!窘馕觥勘绢}考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在函數(shù)調(diào)用時(shí),形參是指向?qū)崊⒌闹羔樧兞?,則printf的執(zhí)行結(jié)果為++x;x=3,則3+1=4。
    22.D。【解析】在判斷小寫字母時(shí),必須判斷在某一范圍內(nèi)成立,因此用與,即&&,即C在a與z之間。
    23.B。【解析】當(dāng)num=0時(shí),循環(huán)成立,執(zhí)行num++ 后;num的值為1,因此輸出1,接著返回while中的表達(dá)式;當(dāng)num=1時(shí),循環(huán)成立,執(zhí)行nHm++后,num的值為2,輸出2,再返回while中的表達(dá)式;當(dāng)num=2時(shí),循環(huán)成立,執(zhí)行num++后.nHm的值為3,輸出3,最后返回while中的表達(dá)式,當(dāng)num=3,循環(huán)不成立,退出。
    24.D?!窘馕觥縫是存放最小下標(biāo)的變量,而if后的表達(dá)就是實(shí)現(xiàn)這個(gè)}j的的,當(dāng)if成立時(shí),就把小的下標(biāo)放到p 中,故選擇D選項(xiàng)。
    25.D。【解析】在C語言中,當(dāng)表達(dá)式成立時(shí)用l表示,不成立時(shí)用0表示,即x=(a&&b)&&(c<’B ’)= (14&&15)&&(’A ’<’B’ )=1&&1=1,故選擇D選項(xiàng)。
    26.A?!窘馕觥慨?dāng)所賦的值不夠其列的寬度時(shí),系統(tǒng)在其后自動(dòng)補(bǔ)0,因此a[0][3]=0,a[1][2]=6,a[2][1]=5,a[3][0]=0,故選擇A選項(xiàng)。
    27.C?!窘馕觥勘境绦蛑械暮瘮?shù)sort(int a[],int n)實(shí)現(xiàn)的功能是將數(shù)組a中的前n個(gè)數(shù)進(jìn)行從大到小排序。sort (&a[1],7)是將數(shù)組中從a[1]~a[7]這7個(gè)數(shù)進(jìn)行從大到小排序,其他數(shù)不變。
    28.D?!窘馕觥縜=“ABCD”書寫錯(cuò)誤,因?yàn)椤?”左邊不能出現(xiàn)常量;數(shù)組名S是代表S數(shù)組首地址常量,而不是變量;字符串只有在定義時(shí)維數(shù)可以省略。
    29.D?!窘馕觥勘绢}for循環(huán)中,當(dāng)i=0時(shí),判斷條件i&printf("%d\n",n[k]),此時(shí)i的值是0,輸出n[k]的值也為0,0 &0結(jié)果還是0,條件不成立,退出循環(huán)。所以最后輸出結(jié)果為0。
    30.A?!窘馕鰈當(dāng)執(zhí)行g(shù)ets(ss)后,ss數(shù)組中的元素為ABC,再執(zhí)行strcat(ss,"6789"),strcat的作用,是把6789連接到了ss數(shù)組后面,執(zhí)行完后SS數(shù)組為ABC6789,故選擇A選項(xiàng)。
    31.D?!窘馕鯥M(a+b,b+C,c+a)=a+b*b+c+c+ a=1+2*2+3+3+1=12,注意x*y+z而不是(x)*(y)+z。
    32.B。【解析】本題考查分支語句用法加個(gè)句號(hào)因?yàn)樽兞康某跏贾捣謩e為 k一5、n一0,所以程序第1次進(jìn)入循環(huán)時(shí),執(zhí)行default語句,輸出0,k減1;這時(shí)n=0、k=4,程序進(jìn)行第2次循環(huán),執(zhí)行case 4:這個(gè)分支,結(jié)果是n=2、k=3,打印出2;這時(shí)n =2、k=3,break跳出,程序進(jìn)行第3次循環(huán),執(zhí)行case 3:這個(gè)分支,結(jié)果是n=3、k=2,打印出3;這時(shí)n一3、k 2,b¨ak跳出,程序然后進(jìn)行第4次循環(huán),執(zhí)行case 2:case 4:這個(gè)分支,結(jié)果是n=5、k=1,打印出5,break 跳出,這時(shí)因?yàn)閚=5不滿足n<5的循環(huán)條件,因此循環(huán)結(jié)束。
    33.D?!窘馕觥勘绢}考查for循環(huán)的使用。根據(jù)條件考慮x的取值變化,x從1取到5,可以循環(huán)5次,但并不知道y是如何變化的,有可能出現(xiàn)y=19提前跳出循環(huán)的情況,所以是最多執(zhí)行5次。
    34.C?!窘馕觥客獠孔兞吭诰幾g時(shí)由系統(tǒng)分配永久的內(nèi)存空間,所以外部變量的類型不是自動(dòng)存儲(chǔ)類別。
    35.D。【解析】if語句的條件是當(dāng)i既是3的倍數(shù)又是2的倍數(shù)時(shí)成立,所以此程序?qū)崿F(xiàn)的功能是將10以內(nèi)既是3 的倍數(shù)又是2的倍數(shù)的數(shù)相加。
    36.A。【解析】在函數(shù)funl()之前定義了全局字符變量a和b。這兩個(gè)變量的作用域是從其定義處開始到整個(gè)程序末結(jié)束。在函數(shù)funl()之內(nèi)定義了兩個(gè)變量a和b,并且分別初始化為字符’C ’和’D ’。
    37.A?!窘馕觥勘绢}考查getchar()函數(shù),從終端讀入一個(gè)字符作為函數(shù)值。在輸入時(shí),空格、回車符都將作為字符讀入,而且只有在用戶敲入回車鍵時(shí),讀入才開始執(zhí)行。所以當(dāng)輸入a<回車>后,變量c1被賦予字符a,而變量c2被賦予回車符。
    38.B?!窘馕觥亢瘮?shù)fun()的功能是從數(shù)組a中依次將當(dāng)前值賦給一個(gè)元素,所以當(dāng)函數(shù)fun(a,2,9)執(zhí)行后,數(shù)組a[]={1,2,3,4,4,5,6,7,8,9,10)。
    39.B?!窘馕觥勘绢}考查文件使用方式標(biāo)識(shí)符。方式“wb”為輸出打開一個(gè)二進(jìn)制文件;方式“wb+”為讀寫建立一個(gè)新的二進(jìn)制文件;方式“rb+”為讀寫打開一個(gè)二進(jìn)制文件;方式“rb”為輸入打開一個(gè)二進(jìn)制文件。
    40.A。【解析】如果是static修飾的靜態(tài)變量,不是每次調(diào)用賦初值。