自考“C語言程序設(shè)計”模擬試題九

字號:

一、選擇題
    1.一個C語言程序是由( )構(gòu)成。
    A.語句 B.行號 C.數(shù)據(jù) D.函數(shù)
    2.下面標(biāo)識符中正確的是( )。
    A.d&ef B.6a C.z4x5c D.a3/b4
    3.在C語言中,存儲一個字符型、整型、單精度實型變量所需的空間是()。
    A.1、2、4 B.1、1、4 C.1、2、8 D.2、2、8
    4.為了避免嵌套的條件分支語句 if——else中的else總是與( ) 組成成對關(guān)系。
    A. 縮排位置相同的
    B. 在其之前未配對的
    C. 在其之前未配對的最近的if
    D. 在同一行上的if
    5.下列表達(dá)式的結(jié)果正確的是( )。
    int aa,bb,cc,dd;
    aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;
    (aa+1==2)?bb=aa+2:aa+3
    A.2 B.3 C. 1 D.5
    6.設(shè)有int x=11 ;則表達(dá)式(x+1/3)的值是( )。
    A.3 B. 4 C. 11 D.12
    7.設(shè)有字符串A=“He has 錢!”,則該字符串的長度為( )。
    A. 9 B. 10 C. 11 D. 8
    8.有如下程序段,則正確的執(zhí)行結(jié)果是( )
    int m=3;
    while(m<=5)
    { printf(“%d ”,m-3); m++;}
    A. 0 0 0 B.0 1 2 C.1 2 3 D.無結(jié)果
    9.執(zhí)行語句:printf(“%d”,(a=2)&&(b= -2);后,輸出結(jié)果是( )。
    A.無輸出 B.結(jié)果不確定 C.-1 D. 1
    10.有如下定義類型語句,若從鍵盤輸入數(shù)據(jù),正確的輸入語句是( )。
    int x; char y; char z[20];
    A. scanf(“%d%c%c”,&x,&y,&z);
    B. scanf(“%d%c%s”,&x,&y,&z);
    C. scanf(“%d%c%c”,&x,&y,z);
    D. scanf(“%d%c%s”,&x,&y,z);
    11. struct ex
    { int x ; float y; char z ;} example;
    則下面的敘述中不正確的是( )。
    A. struct結(jié)構(gòu)體類型的關(guān)鍵字 B. example是結(jié)構(gòu)體類型名
    C. x,y,z都是結(jié)構(gòu)體成員名 D. struct ex是結(jié)構(gòu)體類型
    12.在C語言中對于實型數(shù)組,其每個數(shù)組元素的類型是( )。
    A. 實型 B. 整型 C. 可以為任何類型 D. 不確定
    13. 若已定義:int a[9],*p=a;不能表示a[1] 地址的表達(dá)式是( )。
    A. p+1 B. a+1 C. a++ D. ++p
    14. 在TC2.0環(huán)境中,對文件進行保存使用的命令是( )。
    A. OPEN B. SAVE C. LOAD D. WRITE TO
    15.在C++的類中,用于表示公共類型的關(guān)鍵字是( )。
    A. class B. private C. protect D. public
    二、填空題
    1.在C語言中,正確的標(biāo)識符是由____________組成的,且由____________開頭的。
    2. 設(shè)p=30,那么執(zhí)行q=(++p)后,表達(dá)式的結(jié)果q為______,變量p的結(jié)果為________.
    若a為int類型,且其值為3,則執(zhí)行完表達(dá)式a+=a-=a*a后,a的值是_________.
    3. 一個變量的指針是指____________.
    4. 在C語言程序中,對文件進行操作首先要____________;然后對文件進行操作,最后要對文件實行________操作,防止文件中信息的丟失。
    5. 以下程序運行后的輸出結(jié)果是_________ .該程序的功能是_________ .
    main()
    { int x=10,y=20 ,t=0;
    if(x!=y) t=x; x=y; y=t;
    printf("%d,%d\n",x,y); }
    6. 若fp已正確定義為一個文件指針,d1.dat為二進制文件,請?zhí)羁?,以便為“讀”而打開此文件:fp=fopen( );。
    7. 有以下程序,當(dāng)輸入的數(shù)值為2,3,4時,輸出結(jié)果為___________.
    main()
    { int x,y,z;
    cout 《 “please input three number”;
    cin 》x》y》z;
    sum=x*x+y*2+z;
    cout《“sum of number is :”《sum;
    }
    8. 有以下程序
    main()
    { char c;
    while((c=getchar())!='?') putchar( - - c ); }
    程序運行時,如果從鍵盤輸入:YDG?N?<回車>,則輸出結(jié)果為 .
    9.在循環(huán)中,continue語句與break語句的區(qū)別是:_________continue語句是語句的區(qū)別是:_________continue語句是_________,break 是_________.
    三、程序填空與算法題
    1. 下面程序是計算10個整數(shù)中奇數(shù)的和及其偶數(shù)的和,請?zhí)羁铡?BR>    #include
    main()
    { int a,b,c,i;
    a=c=0;
    for(i=1;i<=10;i++)
    { scanf(“%d”,&b);canf(“%d”,&b);
    }
    printf(“偶數(shù)的和=%d\n”,a);
    printf(“奇數(shù)的和=%d\n”,c); }
    2.編寫一個自定義函數(shù),實現(xiàn)求兩個實數(shù)的平方和
    3. 以下程序運行后的輸出結(jié)果是 .
    main()
    { char s[ ]=“GFEDCBA”;
    int p=6;
    while(s[p]!=‘D’)
    { printf(“%c ”, p);
    p=p-1; } }
    4.定義一個反映學(xué)生信息的結(jié)構(gòu)體,包括學(xué)生的姓名,性別,年齡,成績等。
    5.以下程序輸出的結(jié)果是 .
    int ff(int n)
    { static int f=l;
    f=f*n;
    return f; }
    main()
    { int i;
    for(i=1;i<=5;i++) printf(“%d\n”,ff(i)); }
    6. 設(shè)有以下程序:
    main()
    { int n1,n2;
    scanf(“%d”,&n2);
    while(n2!=0)
    { n1=n2%10;
    n2=n2/10;
    printf(“%d ”,n1); } }
    程序運行后,如果從鍵盤上輸入1298;則輸出結(jié)果為 .
    7.下面程序的功能是:輸出 100以內(nèi)(不包含100)能被 3整除且個位數(shù)為 6的所有整數(shù),請?zhí)羁铡?BR>    #Include<stdio.h>
    main()
    { int i, j;
    for(i=1; ____________; i++)
    if (________________)
    printf(“%d”, j); }
    8.現(xiàn)有一個單鏈表Head,如下圖所示,如果要在元素B和D之間插入一個字符型元素C.
    所需要的語句為:(如果用到指針,在圖中標(biāo)出指針的位置)
    A
    B
    Head
    D
    Z
    ∧
    ……
    四、編程題
    1. 編程實現(xiàn)求解下面的式子的結(jié)果
    s=1*2+2*3+3*4+…+20*21
    2.編程實現(xiàn)求下面的式子的結(jié)果
    3.編程實現(xiàn)將文本文件file1.dat的內(nèi)容讀出來,顯示到屏幕上。