久久综合色一综合色88欧美|久久er热在这里只有精品66|国产福利一区二区不卡|日本精品动漫二区三区

    1. <address id="l3apk"><var id="l3apk"><source id="l3apk"></source></var></address>

      C語(yǔ)言程序設(shè)計(jì)期末試題及答案

      時(shí)間:2017-04-28 12:00:16 C語(yǔ)言試題 我要投稿

      C語(yǔ)言程序設(shè)計(jì)期末試題及答案

        C語(yǔ)言既有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn)。以下是由陽(yáng)光網(wǎng)小編整理關(guān)于C語(yǔ)言程序設(shè)計(jì)期末試題的內(nèi)容,希望大家喜歡!

      C語(yǔ)言程序設(shè)計(jì)期末試題及答案

        C語(yǔ)言程序設(shè)計(jì)期末試題及答案(一)

        1.以下程序輸出結(jié)果是( )

        main()

        { int m=5;

        if(m++>5) printf("%d\n",m);

        else printf("%d\n",m--);

        A)7 B)6 C)5 D)4

        2以下程序的輸出結(jié)果為( )

        # include <stdio.h>

        main ( )

        { int i=0, j=0, a=6;

        if ((++i>0)&&(++j>0)) a++;

        printf ("i=%d, j=%d, a=%d\n", i,j,a);}

        A) i=0, j=0, a=6 B) i=1, j=1, a=7

        C) i=1, j=0, a=7 D) i=0, j=1, a=7

        3有如下程序

        main()

        { int a=2,b=-1,c=2;

        if(a<b)

        if(b<0) c=0;

        else c++;

        printf("%d\n",c);

        }

        該程序的輸出結(jié)果是( )

        A) 0 B) 1 C) 2 D) 3

        4若i為int型,且有程序如下,則輸出結(jié)果是( )

        i=111;

        if(i%3==0)

        printf("####");

        printf("****");

        A) #### B) **** C) ####**** D) 無(wú)輸出結(jié)果

        5若運(yùn)行時(shí)x=12,則運(yùn)行結(jié)果為( )

        {int x, y;

        scanf("%d", &x);

        y=x>12 ? x+10:x-12;

        printf("%d\n", y);}

        A) 0 B) 22 C) 12 D) 10

        6以下程序的輸出結(jié)果是( )

        main()

        { int i=0, j=0, k=6;

        if ((++i>0)||(++j>0)) k++;

        printf("%d, %d, %d\n", i, j, k);

        }

        A) 0, 0, 6 B) 1, 0, 7 C) 1, 1, 7 D) 0, 1, 7

        7若變量都已正確說(shuō)明,則以下程序段輸出為( )

        int a=1,b=2,c=3;

        if(a>b)

        a=b;

        b=c;

        c=a;

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

        A)a=1 b=2 c=1 B)a=1 b=2 c=3

        C)a=1 b=3 c=1 D)a=2 b=3 c=2

        8當(dāng)a=1,b=3,c=5,d=4時(shí),執(zhí)行完下面一段程序后x的值是( )

        if(a<b)

        if(c<d)x=1;

        else

        if(a<c)

        if(b<d)x=2;

        else x=3;

        else x=6;

        else x=7;

        A) 1 B)2 C)3 D)6

        9以下不正確的語(yǔ)句為( )

        A)if(x>y);

        B)if(x==y)&&(x!=0)x+=y;

        C)if(x!=y)scanf("%d",&x);else scanf("%d",&y);

        D)if(x<y){x++;y++;}

        10有以下程序:

        #include"stdio.h"

        main( )

        {char i;

        for (; (i=getchar ())!='\n';)

        {switch (i-'a')

        {case 0: putchar (i);

        case 1: putchar (i+1);break;

        case 2: putchar (i+2);

        case 3: break;

        default: putchar (i);break;

        }

        }

        printf ("\n");

        }

        輸入下列數(shù)據(jù)后,程序的輸出結(jié)果是( )

        abcde<CR>

        A) abcde B) abcee

        C) abbde D) abccdd

        11若a、 b、c1、c2、x、y、均是整型變量,正確的switch語(yǔ)句是( )

        A) switch(a+b); B) switch(a*a+b*b)

        { case 1:y=a+b; break; {case 3:

        case 0:y=a-b; break; case 1:y=a+b;break;

        } case 3:y=b-a,break;

        }

        C) switch a D) switch(a-b)

        { case 1 :y=a-b; break {

        case 2: x=a*d; break case c1:case 4:x=a+b;break;

        default:x=a+b; case c2:case 11:y=a-b;break;

        } default:y=a*b;break;

        }

        12寫(xiě)出下面程序輸出結(jié)果( )

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

        switch(x)

        {case 1:

        switch(y)

        {case 0: a++;

        case 1: b++; }

        case 2: a++; b++;

        }

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

        }

        A) a=2, b=1 B) a=1, b=1 C) a=1, b=0 D) a=2, b=2

        13C語(yǔ)言的for語(yǔ)句中的表達(dá)式可以部分或全部省略,但兩個(gè)( )不可省略。但當(dāng)三個(gè)表達(dá)式

        均省略后,因缺少判斷條件,循環(huán)會(huì)無(wú)限制地進(jìn)行下去,形成死循環(huán)。

        A) < B) ++ C) ; D) ,

        14下面有關(guān)for循環(huán)的正確描述是( )。

        A) for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況

        B) for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判定表達(dá)式

        C) 在for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體

        D) for循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但要用花括號(hào)括起來(lái)

        15以下程序段( )。

        x=-1;

        do

        { x=x*x;}

        while(!x)

        A) 是死循環(huán) B) 循環(huán)執(zhí)行2次 C) 循環(huán)執(zhí)行一次 D) 有語(yǔ)法錯(cuò)誤

        16如下的數(shù)組中,數(shù)組array占用的內(nèi)存空間是( )個(gè)字節(jié)。

        char array[]={'c','h','i','n','a'};

        A. 1 B. 5 C. 6 D. 不確定

        17設(shè)有程序段

        int k=10;

        while(k=0) k=k-1;

        則下面描述正確的是( )。

        A) while 循環(huán)執(zhí)行10次 B) 循環(huán)是無(wú)限循環(huán)

        C) 循環(huán)體語(yǔ)句一次也不執(zhí)行 D) 循環(huán)體語(yǔ)句執(zhí)行一次

        18下列程序段的運(yùn)行結(jié)果是( )

        int n=0;

        while(n++<3);

        printf("%d",n)

        A. 2 B. 3 C. 4 D. 以上都不對(duì)

        19設(shè)有程序段

        t=0;

        while(printf("*"));

        { t++;

        if (t<3) break;

        }

        下面描述正確的是( )。

        A) 其中循環(huán)控制表達(dá)式與0等價(jià) B) 其中循環(huán)控制表達(dá)式與'0'等價(jià)

        C) 其中循環(huán)控制表達(dá)式是不合法的 D) 以上說(shuō)法都不對(duì)

        20下面程序的運(yùn)行結(jié)果是( )。

        #include <stdio.h>

        main()

        { int y=10;

        do { y--;} while(--y);

        printf("%d\n",y--);

        }

        A) -1 B) 1 C) 8 D) 0

        21以下程序段的輸出結(jié)果是( ).

        main()

        { int i=5;

        for ( ;i<=15; )

        { i++;

        if (i%4==0) printf("%d ",i);

        else continue;}

        }

        A. 8 12 16 B. 8 12 C. 12 16 D. 8

        22以下不是無(wú)限循環(huán)的語(yǔ)句為( )。

        A) for(y=0,x=1;x>++y;x=i++) i=x;

        B) for( ; ;x++=i);

        C) while(1){x++;}

        D) for(i=10; ; i--) sum+=i;

        23有如下語(yǔ)句

        int x=3;

        do

        { printf("%d\n",x-=2);} while(!(--x));

        則上面程序段( )

        A. 輸出的是1 B. 輸出的是1和-2

        C. 輸出的是3和0 D. 是死循環(huán)

        24以下不是無(wú)限循環(huán)的是( )

        A. for(y=0,x=1;x>++y;x=i++) i=x;

        B. for( ; ;x++=i);

        C. while(1) x++;

        D. for(i=10; ;i--) s+=i;

        25以下正確的描述是( )。

        A) continue語(yǔ)句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行

        B) 只能在循環(huán)體內(nèi)和switch語(yǔ)句內(nèi)使用break語(yǔ)句

        C) 在循環(huán)體內(nèi)使用break語(yǔ)句或continue語(yǔ)句的作用相同

        D) 從多層循環(huán)嵌套中退出時(shí),只能使用goto語(yǔ)句

        26以下程序輸出結(jié)果為( )

        #include "stdio.h"

        main()

        {int i,b,k=0;

        for(i=1;i<=5;i++)

        { b=i%2;

        while (b-->=0) k++;}

        printf("%d,%d\n",k,b);

        }

        A. 3,-1 B. 8,-1 C. 3,0 D. 8,-2

        27以下程序段中循環(huán)體總的執(zhí)行次數(shù)是( )

        int i,j;

        for(i=7;i;i--)

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

        {......}

        A) 42 B) 21 C) 13 D) 36

        28以下不正確的描述是( )

        A. break 語(yǔ)句不能用于循環(huán)語(yǔ)句和switch語(yǔ)句外的任何其他語(yǔ)句

        B. 在switch語(yǔ)句中使用break語(yǔ)句或continue語(yǔ)句的作用相同

        C. 在循環(huán)語(yǔ)句中使用continue語(yǔ)句是為了結(jié)束本次循環(huán),而不是終止整個(gè)循環(huán)的執(zhí)行

        D. 在循環(huán)語(yǔ)句中使用break語(yǔ)句是為了使流程跳出循環(huán)體,提前結(jié)束循環(huán)

        1else語(yǔ)句總是和靠它最近的if匹配。

        2switch語(yǔ)句中一定有default分支

        3case后只能跟常量,不能跟變量

        4break語(yǔ)句的作用就是結(jié)束本層循環(huán)。

        5do-while語(yǔ)句構(gòu)成的循環(huán)不能用其它語(yǔ)句構(gòu)成的循環(huán)來(lái)代替。

        6用do-while語(yǔ)句構(gòu)成循環(huán)時(shí),只要while后的表達(dá)式為0時(shí)就結(jié)束循環(huán)。

        7for(表達(dá)式1;表達(dá)式2;表達(dá)式3)中,表達(dá)式1和表達(dá)式3不能同時(shí)都是逗號(hào)表達(dá)式。

        8for循環(huán)中,如果表達(dá)式2為空,則該循環(huán)一定是死循環(huán)。

        9while循環(huán)的while()后沒(méi)有分號(hào),而do-while循環(huán)的while()后一定要有一個(gè)分號(hào)。

        10for(i=0,j=10;i<=j;i++,j--) k=i+j;執(zhí)行完后,k的值為50。

        C語(yǔ)言程序設(shè)計(jì)期末試題及答案(二)

        一、選擇(每題2分,共30分)

        1. 下列選項(xiàng)中,不能用作標(biāo)識(shí)符的是( )。

        A. _1234_ B. _1_2 C. int_2_ D. 2_int_

        2. 下列字符常量不合法的`是( )。

        A. „2‟ B. „\101‟ C. „ab‟ D. „ \n‟

        3. 執(zhí)行以下程序后的輸出結(jié)果為( )。

        main( )

        { int x; float y;

        y=3.6; x=(int)y+10; printf(“x=%d,y=%f”,x,y); }

        A. x=13.6,y=3.600000 B. x=13,y=3.600000 C. x=13,y=3 D. x=13,y=3.6

        4. 以下選項(xiàng)中不合法的常量是 ( )。

        A. 123L B. 0x35 C. 018 D. 6e-2

        5. 設(shè)m=10,n=4,則賦值運(yùn)算m%=n+1執(zhí)行后m的值是( )。

        A. 1 B. 2 C. 3 D. 0

        6. 下面程序的輸出結(jié)果為( )。

        main( )

        { int x=10,y=3,z; printf(“%d\n”,z=(x%y,x/y));}

        A. 0 B.1 C. 3 D. 4

        7. 下面程序的輸出結(jié)果為( )。

        main( )

        { int x=010,y=0x10,z=10; printf(“%d,%d,%d ”,x,y,z);}

        A. 10,10,10 B. 8,16,10 C. 16,8,10 D. 8,10,10

        8. 以下選項(xiàng)中不是C語(yǔ)句的是( )。

        A. {int i; i++; printf("%d\n", i); }

        C. a=5,c=10

        1 B. ; D. { ; }

        9. 以下程序的輸出結(jié)果是( )。

        main( )

        { int x=2,y=-1,z=2;

        if( x<y)

        if(y<0) z=0;

        else z=z+1;

        printf(“%d”,z); }

        A. 0 B. 1 C. 2 D. 3

        10. 不能表達(dá):x為奇數(shù)時(shí)表達(dá)式為“真”,偶數(shù)時(shí)表達(dá)式為“假”的表達(dá)式是( )。

        A. x%2= =1 B. !(x%2= =0) C. !(x%2) D. x%2

        11. 以下程序段中while語(yǔ)句的循環(huán)次數(shù)是( )。

        int i=0;while(i=1) i++;

        A.無(wú)限次 B. 有語(yǔ)法錯(cuò)誤,不能執(zhí)行 C. 一次也不執(zhí)行 D. 執(zhí)行一次

        12. 假設(shè)a,b均為字符數(shù)組以下正確的輸入語(yǔ)句是( )。

        A.gets(a,b); B. scanf(“%s %s”,a,b); C. scanf(“%s %s”,&a,&b); D.gets(“a”); gets(“b”);

        13. 若有定義:int a,*p; 則以下正確的賦值表達(dá)式是 )。

        A. p=&a B. p=a C. *p=&a D. *p=*a

        14. 以下函數(shù)調(diào)用語(yǔ)句中,func( (exp1,exp2),(exp3,exp4,exp5));含有的實(shí)參個(gè)數(shù)是( )。

        A. 1 B. 2 C. 3 D. 5

        15. 有以下定義:

        struct person{char name[9]; int age;}

        struct person class[10]={“Johu”,17,

        “Paul”,19,

        “Mary”,18,

        “Adam”,16,};

        則下面能輸出字母M的語(yǔ)句是( )。 A. printf(“%c\n”,class[3].name); B. printf(“%c\n”,class[3].name[1]); D. printf(“%c\n”,class[2].name[0]); C. printf(“%c\n”,class[2].name[1]);


      【C語(yǔ)言程序設(shè)計(jì)期末試題及答案】相關(guān)文章:

      1.2017年C語(yǔ)言程序設(shè)計(jì)期末試題及答案

      2.C語(yǔ)言程序設(shè)計(jì)期末試題附答案

      3.C語(yǔ)言期末試題及答案

      4.2017年C語(yǔ)言程序設(shè)計(jì)期末復(fù)習(xí)試題及答案

      5.C語(yǔ)言程序設(shè)計(jì)試題及答案(四)

      6.C語(yǔ)言程序設(shè)計(jì)模擬試題及答案

      7.C語(yǔ)言程序設(shè)計(jì)試題及答案全套

      8.C語(yǔ)言程序設(shè)計(jì)試題及答案(一)