2011年9月計(jì)算機(jī)等級(jí)考試C語(yǔ)言沖刺試題六(3)

字號(hào):


    17.以下選項(xiàng)中不能使指針正確指向字符串的是( )
    A) char *ch;*ch=“hello”
    B) char *ch=“hello”
    C) char *ch=“hello”;ch=“bye”
    D) char *ch”;ch=“hello”
    18.若有以下說明和定義語(yǔ)句:union uti {int n;double g;char ch[9];}
    struct srt{float xy;union uti uv;}aa;則變量aa所占內(nèi)存的字節(jié)數(shù)是( )
    A) 9
    B) 8
    C) 13
    D) 17
    二、填空題(每空1分,共12分)
    1.C語(yǔ)言源程序文件的擴(kuò)展名是 (1) ,經(jīng)過編譯后,生成文件的擴(kuò)展名是 (2) ,經(jīng)過連接后,生成文件的擴(kuò)展名是 (3) 。
    2.把a(bǔ),b定義成長(zhǎng)整型變量的定義語(yǔ)句是 (4)
    3.設(shè)x和y均為整型變量,且x=3,y=2,則1.0*x/y表達(dá)式的值為 (5)
    4.已有定義:float x=5.5;則表達(dá)式:x=(int)x+2的值為 (6)
    5.已有定義:int x=0,y=0;則表達(dá)式:(x+=2,y=x+3/2,y+5)后,變量x的值為 (7),變量y的值為 (8),表達(dá)式的值為 (9) 。
    6.執(zhí)行以下for(i=1;i++《=5)語(yǔ)句后,變量i的值為(10) 。
    7.數(shù)組是表示類型相同的數(shù)據(jù),而結(jié)構(gòu)體則是若干 (11) 數(shù)據(jù)項(xiàng)的集合。
    8.C語(yǔ)言中文件是指 (12) 。
    三、程序補(bǔ)充題(每空3分,共24分)
    1.從鍵盤上輸入若干個(gè)學(xué)生成績(jī),統(tǒng)計(jì)并輸出成績(jī)和最低成績(jī),當(dāng)輸入負(fù)數(shù)時(shí)結(jié)束輸入。
    main()
    { float s,gmax,gmin;
    scanf(“%f,”&s);
    gmax=s;gmin=s;
    while (1)
    {if(s》gmax)gmax=s;
    if (2) gmin=s;
    scanf(“%f”,&s);}
    printf(“gmax=%f\ngmin=%f\n”gmax,gmin);}
    2.求任意兩個(gè)正整數(shù)的公約數(shù)和最小公倍數(shù)
    #include “stdio.h”
    main()
    {int r,m,n,temp,gcd,lcm;
    printf(“enter two number please:”);
    scanf(“ (3) ”,&m,&n);
    lcm=m*n;
    while(m%n!=0)
    {r=m%n;(4);n=r;}
    gcd=n;lcm=lcm/n;
    printf(“gcd=%d\nlcm=%d\n”,gcd,lcm);}
    3.求y的x次方。
    Double fun1(double y,int x)
    main(){int i;
    double z=1.0;
    for(i=1;i (5) ;i++)
    z= (6) ;
    return z;}
    4.對(duì)輸入一個(gè)整數(shù)進(jìn)行判斷,若是偶數(shù),輸出even,否則輸出odd,在子函數(shù)fun2功能是判定整數(shù)是否為偶數(shù),若是偶數(shù),返回1,否則返回0。
    int fun2(int x)
    {if(x%2==0) (7) ;
    return 0 ;}
    main()
    {int n;
    scanf(“%d”,&n);
    if (8) printf(“even\n”);
    else printf(“odd\n”);}