全國2014年4月自考試題:計算機基礎與程序設計

字號:

全國2014年4月高等教育自學考試
    計算機基礎與程序設計試題
    課程代碼:02275
    請考生按規(guī)定用筆將所有試題的答案涂、寫在答題紙上。
    選擇題部分
    注意事項:
    1.答題前,考生務必將自己的考試課程名稱、姓名、準考證號用黑色字跡的簽字筆或鋼筆填寫在答題紙規(guī)定的位置上。
    2.每小題選出答案后,用2B鉛筆把答題紙上對應題目的答案標號涂黑。如需改動,用橡皮擦干凈后,再選涂其他答案標號。不能答在試題卷上。
    一、單項選擇題(本大題共20小題,每小題1分,共20分)
    在每小題列出的四個備選項中只有一個是符合題目要求的,請將其選出并將“答題紙”的相應代碼涂黑。錯涂、多涂或未涂均無分。
    1.在計算機中,指令通常是由
    A.操作碼、操作數(shù)組成 B.源操作數(shù)、目標操作數(shù)組成
    C.反碼、補碼組成 D.直接尋址、目的尋址組成
    2.與二進制1010等值的十六進制數(shù)是
    A.a B.b
    C.c D.d
    3.下面轉(zhuǎn)義字符中,表示換行的是
    A.\0 B.\n
    C.\r D.\f
    4.下面符合c語言要求的標識符是
    A.0x123 B.int
    C.__123 D.π
    5.若有scanf( " %d,%d%d " ,&a,&b,&c);從鍵盤上正確的數(shù)據(jù)輸入形式是
    A.2 3 4 B.234
    C.2,3 4 D.2,3,4
    6.下面程序段的輸出結(jié)果是
    main()
    { int s,p;
    s=p=5;
    p=++s;
    p++;++p;
    printf( " %d\n " ,p); }
    A.5 B.6
    C.7 D.8
    7.下面關于if語句敘述正確的是
    A.只有當if語句中表達式的值等于1時,才執(zhí)行if的內(nèi)嵌語句。
    B.只有當if語句中表達式的值非0時,才執(zhí)行if的內(nèi)嵌語句。
    C.只有當if語句中表達式的值等于0時,才執(zhí)行if的內(nèi)嵌語句。
    D.只有當if語句中表達式的值為假時,才執(zhí)行if的內(nèi)嵌語句。
    8.若有int a=3,b=4,c=5,d=6,x=4;執(zhí)行下列程序段后,x的值是
    if(a{if(c==d) x=c;
    else x=d++;}
    A.4 B.5
    C.6 D.7
    9.下面循環(huán)語句中,正確的是
    A.for(i=l,i<10,i++); B.for(i=l;i<10);
    C.for(s=0;i=1;i<10;i++); D.for(s=0,i=1;i<10;i++);
    10.下面程序段的輸出結(jié)果是
    for(i=1;i<3 ;i++)
    {for(j=1;j<=i;j++)
    printf ( "-" , i+j);
    printf("\n");
    }
    A.2 3 3 4 B.2 3 4
    選項
    11.若有定義short int a[3][5];則a數(shù)組在內(nèi)存中分配的字節(jié)數(shù)是
    A.8 B.15
    C.24 D.30
    12.己定義字符數(shù)組strl,下面能正確地完成字符串輸入的函數(shù)是
    A.gets(strl) B.puts(strl)
    C.getchar(strl) D.putchar(strl)
    13.設有下面程序,下面選項中正確的說法是
    int d=10;
    main( )
    {
    int a=3;
    Printf ("%d,%d\n",a,d);
    }
    A.a是全局變量,d是全局變量 B.a是局部變量,d是全局變量
    C.a是全局變量,d是局部變量 D.a是局部變量,d是局部變量
    14.下面對C函數(shù)的描述,正確的是
    A.C程序中有調(diào)用關系的所有模塊必須放在同一個源文件中。
    B.函數(shù)必須有返回值,否則不能使用函數(shù)。
    C.C程序必須由一個或一個以上函數(shù)構(gòu)成。
    D.C函數(shù)既可以嵌套定義又可以嵌套調(diào)用。
    15.下面正確定義指針數(shù)組的是
    A.float (*p)[6]; B.float p[6];
    C.float (*p)(6); D.float *p[6];
    16.下面關于結(jié)構(gòu)體類型變量定義不正確的是
    A.struct score B. struct
    { {
    int mach; int mach;
    int Chinese; int Chinese;
    }Li,wang; }Li,wang;
    C. struct score D. struct score
    { {
    int math; int math;
    int Chinese; int Chinese;
    }; }; Li,wang;
    struct score Li,wang;
    1 7.下面關于共用體類型的定義正確的是
    A. union book {int a, char b, }; B. union pig{int w; char place[20]; };
    C. union student{int age;char name[10]}; D. union boat {char n[10],int w};
    1 8.下面位運算符中,優(yōu)先級高的是
    A.~ B.&
    C.| D.∧
    19.下面表示關閉文件的函數(shù)是
    A.fopen B.fclose
    C.fgets D.feof
    20.在語句fread(stu,size,n,fp);中,下面說法不正確的是
    A.stu是內(nèi)存中存放數(shù)據(jù)的首地址 B.n表示讀n次
    C.size是一個數(shù)據(jù)塊的字節(jié)數(shù) D.fp表示文件指針
    二、多項選擇題(本大題共5小題,每小題2分,共10分)
    在每小題列出的五個備選項中至少有兩個是符合題目要求的,請將其選出并將“答題紙”的相應代碼涂黑。錯涂、多涂、少涂或未涂均無分。
    21.若有int a=8,b=3;下面表達式值為2的有
    A.a%b B.a/b
    C.b>a?a--:--b D.a-a/b*b
    E.a-a%b*b
    22.下面循環(huán)將會產(chǎn)生死循環(huán)的有
    A.while.(1); B.do{ }while(0);
    C.do{ }while(I); D.for(k=1;k>-10;k++);
    E.for(k= 1 ;k= 10;k++,k--);
    23.關于變量的存儲,下面說法正確的有
    A.auto型變量存儲在動態(tài)存儲區(qū)
    B.static型變量存儲在靜態(tài)存儲區(qū)
    C.static型變量是全局靜態(tài)變量
    D.若定義的全局變量缺省存儲類別,則系統(tǒng)默認是auto型
    E.動態(tài)存儲區(qū)的變量在退出函數(shù)時釋放所占的內(nèi)存單元
    24.設有二維數(shù)組int a[4][3];下列表示數(shù)組元素a[0][2]地址的有
    A.a[2] B.*a
    C.*a+2 D.a[0]+2
    E.&a[0][2]
    25.下面關于結(jié)構(gòu)體定義正確的有
    A.struct 1__ num
    { long unm ;struct l__num *next; }num 1, *pl;
    pl=&num 1;
    B. struct animal
    { char name[30],float weight, } rabbits;
    C. struct star
    { int bh,char name[20], } my__star;
    my__ star. name= " moon " ;
    D. struct{ char x[20];char y[30];int u;}xl,yl;
    E. struct food
    { int code ;char name[30];struct food *p;};
    struct food *tail;
    非選擇題部分
    注意事項:
    用黑色字跡的簽字筆或鋼筆將答案寫在答題紙上,不能答在試題卷上。
    三、簡答題(本大題共4小題,每小題4分,共16分)
    26.C語言中整型常量有幾種形式,他們是如何表示的?
    27.C語言中的運算符“=”與數(shù)學中“=”的意義相同嗎?為什么?
    28.設有說明:unsigned x=10;試用兩種方法寫出通過僅對X進行位運算操作和賦值操作使x的值為0的C語句(不能用x=0;這種C語句)。
    29.設有下面說明:
    struct flower{ char *part;char *color; } mum;
    char*part__of__flower[3]={ "花", "莖", "葉" };
    char*seven__color[7]={ "赤" , "橙" , "黃 " , "綠" , "青" , "藍" "紫"};
    試寫出將mum的成員part定義為"花"、成員color定義為"黃 "的C語句。
    四、閱讀分析題 (本大題共6小題,每小題5分,共3O分)
    30.閱讀下面程序,寫出運行結(jié)果
    main( )
    {
    int a=456,b=l 00,x,y;
    x=a/b;
    y=a%b;
    printf( " x=%d,y=%d\n " ,x,y);
    }
    31.閱讀下面程序,若輸入0,3,則程序的運行結(jié)果是什么?
    void main(void)
    {
    int x,y,z;
    scanf( " %d,%d " ,&x,&y);
    if(x{
    z=x;x=y;y=z;
    }
    printf( " %d,%dkn " ,x,y);
    }
    32.閱讀下面程序,寫出運行結(jié)果
    main( )
    {
    int s=0,t=1,i;
    for(i=1;i <5;i++)
    {
    t=t*i;
    s+=t;
    printf( " s=%d\n " ,s);
    }
    }
    33.閱讀下面程序,寫出運行結(jié)果
    main( )
    {
    int a [5][5], i,j ;
    for(i=0;i<5;i++)
    for(j=0;j<5;j++)
    if(i==j || j==4-i)
    a[i][j]=0;
    else
    a[i][j]=l;
    for(i=0;i<5;i++)
    {
    for(j=0;j < 5;j++)
    printf( " = " ,a[i][j]);
    printf( "\n " );
    }
    }
    34.閱讀下面程序,寫出運行結(jié)果
    int check(int n,int k)
    {int m;
    do
    {
    m=n%10:
    n=n/10;
    }while(k--);
    return(m);
    }
    main()
    {
    int y=2345,j;
    for(j=1;j<4;j++)
    printf("j=%d,number is%d\n",j,check(y,j));
    }
    35.閱讀下面程序,寫出運行結(jié)果
    #define M 2
    #define N M+4
    int a[ ]={10,20,30};
    int subl(int x,int y,int z)
    {
    int t;
    t=xa[1]=treturn t;
    }
    main( )
    {
    int k:
    k=sub 1(M*N,*(a+1),*(a+2));
    printf("%d,%d\n",k,*(a+1));
    }
    五、程序設計題 (本大題共2小題,每小題1 2分,共24分)
    3 6.從鍵盤上輸入1 6個整數(shù),組成4行4列的數(shù)組,打印出下三角數(shù)組。
    3 7.設有7×7浮點型數(shù)組x(7×7表示7行7列)。要求:
    (1)從鍵盤上輸入49個浮點數(shù)對數(shù)組x賦初值。
    (2)計算數(shù)組x每一行的累加和以及每一列正數(shù)的平均值(假設每列中至少有一個正數(shù))。
    (3)將數(shù)組x各行的累加和以及各列正數(shù)的平均值依次寫到當前目錄下的二進制文件 array.txt中。