高級語言程序設計模擬試卷(三)

字號:

模擬試卷(三)
    一、單項選擇題(在本題的每一小題的備選答案中只有一個答案是正確的,請把你認為正確答案的題號,填入題干的括號內(nèi)。多選不給分。每題1分,共20分)
    1.以下選項中屬于c語言的數(shù)據(jù)類型是( )。
     (1)復數(shù)型號 (2)邏輯型號 (3)雙精度型號 (4)集合型
    2.以下不正確的轉(zhuǎn)義字符是( )。
     (1)'\\' (2)'\"' (3)'074' (4)'\0'
    3.設x和y均為int型變量,則下列語句
     x+=y;
     y=x-y;
     x-=y;
     的功能是( )。
     (1)把x和y按從大到小排序幕 (2)把x和y按從小到大排序
     (3)無確定結(jié)果 (4)交換x和y的值
    4.執(zhí)行下述程序的輸出結(jié)果是( )。
     #include
     main()
     {
     printf("%d\n",NULL);
     }
     (1)不確定的值 (2)0 (3)-1 (4)1
    5.執(zhí)行下述程序的輸出結(jié)果是( )。
     #include
     main()
     {
     int x=100,a=10,b=20,ok1=5,ok2=0;
     if (a     if (b!=15)
     if (!ok1)
     x=1;
     else
     if (ok2)
     x=10;
     x=-1;
     printf("%d\n",x);
     }
     _(1)-1 (2)0 (3)1 (4)不確定的值
    6.執(zhí)行以下程序的輸出結(jié)果是( )。
     #include
     main()
     {
     int i;
     for (i='A';i<'r';i++,i++)
     printf("%c",i+32);
     printf("\n");
     }
     (1)編譯不通過 (2)aceg (3)acegi (4)abcdefghi
    7.以下不形成死循環(huán)的是( )。
     (1) for (;;x+=i);
     (2) while (1) x++
     (3) for (i=10;;i--) sum+=i;
     (4) for (;(c=getchar())!='\n';) printf("%c",c);
    8.若有以下定義和語句
     char s[10];
     s="abcd";
     printf("%s\n",s);
     則結(jié)果是(以下“ ”代表空格)( )。
     (1)輸出abcd (2)輸出a
     (3)輸出abcd (4)有語法錯誤,編譯不能通過
    9.下列關于帶初始賦值的字符數(shù)組說明中,錯誤的是( )。
     (1) char str[]={'T','u','r','b','o',' ','c','\o'};
     (2) char str[7]="Turbo C";
     (3) char str[]="Turbo C";
     (4) char *str="Turbo C";
    10.若已定義
     int a[]{0,1,2,3,4,5,6,7,8,9},*p=a,i;
     且假定已對i賦值(0i9)。則對數(shù)組a中數(shù)組元素不正確的引用是( )。
     (1)a[p-a] (2)*(&a[i]) (3)p[i] (4)a[10]
    11.以下程序運行后,輸出結(jié)果是( )。
     #include
     main()
     {
     static char a[]="ABCDEFGH",b[]="abCDefGh";
     char *p1,*p2;
     int k;
     p1=a;p2=b;
     for (k=0;k<=7;k++)
     if (*(p1+k)==*(p2+k))
     printf("%c",*(p1+k));
     printf("\n");
     }
     (1)ABCDEFG (2)CDG (3)abcdefgh (4)abCDefGh
    12.執(zhí)行下述程序的輸出結(jié)果是( )。
     #include
     main()
     {
     char *s1,*s2;
     s1=s2="abcd";
     while (*s2!='\0')
     putchar(*s2++);
     while (--s2>=s1)
     putchar(*s2);
     putchar('\n');
     }
     (1)abcdabcd (2)abcddcba (3)dcbadcba (4)dcbaabcd
    13.以下對c語言中有關函數(shù)的描述中,正確的是( )。
     (1)在c中,調(diào)用函數(shù)時,只能把實參的值傳給形參,形參的值不能傳給實參
     (2)c函數(shù)既可以嵌套定義又可以遞歸調(diào)用
     (3)函數(shù)必須有返回值,否則不能使用函數(shù)
     (4)c程序中有調(diào)用關系的所有函數(shù)必須放在同一個源程序文件中
    14.在下列結(jié)論中,錯誤的是( )。
     (1)c語言允許函數(shù)的遞歸調(diào)用
     (2)c語言中的continue語句,可以通過改變程序的結(jié)構(gòu)而省略
     (3)有些遞歸程序是不能用非遞歸算法實現(xiàn)的
     (4)c語言不允許在函數(shù)中再定義函數(shù)
    15.執(zhí)行下述程序的輸出結(jié)果是( )。
     #incllude
     int func(int u,int v);
     main()
     {
     int a=24,b=16,c;
     c=func(a,b);
     printf("%d\n",c);
     }
     int func(int u,int v)
     {
     int w;
     while (v)
     {
     x=u%v;
     u=v;
     v=w;
     }
     return (u);
     }
     (1)6 (2)7 (3)8 (4)9
    16.下述程序執(zhí)行后的輸出結(jié)果是( )。
     #include
     void func1(int i);
     void func2(int i);
     char st[]="hello,friend!";
     void func1(int i)
     {
     printf("%c",st[i]);
     if (i<3)
     {
     i+=2;
     func2(i);
     }
     }
     void func2(int i)
     {
     printf("%c",st[i]);
     if 9i<3)
     {
     i+=2;
     func1(i);
     printf("\n");
     }
     (1)hello (2)hel (3)hlo (4)hlrn
    17.字符'0'的ASCII代碼值為十進制的48,且數(shù)組中序號為國為民的數(shù)組元素在內(nèi)存低位。執(zhí)行以下程序的輸出結(jié)果是( )。
     #include
     main()
     {
     union
     {
     int i[2];
     long k;
     char c[4];
     } r,*s=&r;
     s->i[0]=0x39;
     s->i[1]=0x38;
     printf("%c\n",s->c[0]);
     }
     (1)39 (2)9 (3)38 (4)8
    18.設有下述變量說明語句
     struct
     {
     int i;
     char c;
     float f;
     } st;
     union
     {
     int i;
     char c;
     float f;
     } un;
     則執(zhí)行如下printf語句后的輸出結(jié)果是( )。
     printf("%d,%d\n",sizeof(st),sizeof(un));
     (1)7,4 (2)7,7 (3)4,7 (4)4,4
    19.已知對于一個二進制文件,調(diào)用標準庫函數(shù)fread的語句形式如下
     fread(buffer,size,count,fp);
     那么其中buffer所代表的是( )。
     (1)一個整型變量,表示要讀入的數(shù)據(jù)項總數(shù)
     (2)一個文件指針,指向要讀入的文件
     (3)一個指針,指向要存放讀入數(shù)據(jù)的地址
     (4)一個存儲區(qū),存放要讀入的數(shù)據(jù)項
    20.下列選項中,不會引起二義性的宏定義是( )。
     (1)#define POWER(X) X*X
     (2)#define POWER(X) (X)*(X)
     (3)#define POWER(X) (X*X)
     (4)#define POWER(X) ((X)*(X))