2006年1月高級語言程序設(shè)計考試題目

字號:

一、單項選擇題(本大題共 20 小題,每小題 1 分,共 20 分)
     在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內(nèi)。錯選、多選或未選均無分。
     1. 可以用作 C 程序標(biāo)識符的一組是(  ?。?BR>     A.print B.i\am
     oodb one-half
     aBc 3pai
     C.Pxq D.Cpp
     line# pow
     His.age while
     2. 以下敘述正確的是(   )
     A. 宏名必須用大寫的英文字母表示
     B. 宏定義不僅是符號替換,也可以賦值
     C. 宏替換是在程序編譯時完成的,不占用程序運行時間
     D. 引用帶參數(shù)的宏時,實際參數(shù)與宏定義中的形式參數(shù)類型應(yīng)一致
     3. 設(shè) char a= ' \70 ' ; 則變量 a 中(  ?。?BR>     A. 包含 1 個字符 B. 包含 2 個字符
     C. 包含 3 個字符 D. 是非法表示
     4. 設(shè) long i=65539;, 執(zhí)行語句 printf( " %d " ,i) ;后的輸出結(jié)果是(  ?。?BR>     A.-3 B.3
     C.65539 D. 數(shù)據(jù)不確定
     5. 設(shè) float c,f;, 將數(shù)學(xué)表達式 C= (F-32) 能正確表示成 C 語言賦值表達式的是(  ?。?BR>     A.c=5*(f-32)/9 B.c=5/9(f-32)
     C.c=5/9*(f-32) D.c=5/(9*(f-32))
     6. 設(shè) int i=10;, 表達式 30-i<=i<=9 的值是(  ?。?BR>     A.0 B.1
     C.9 D.20
     7. 以下不能看作一條 C 語句的是(  ?。?BR>     A.{;} B.a=5,b=5,c=5;
     C.if(x>=0&&y=0); D.if(x= =0)a=5;b=10;
     8. 在函數(shù)調(diào)用時,以下說法正確的是(  ?。?BR>     A. 函數(shù)調(diào)用后必須帶回返回值
     B. 實際參數(shù)和形式參數(shù)可以同名
     C. 函數(shù)間的數(shù)據(jù)傳遞不可以使用全局變量
     D. 主調(diào)函數(shù)和被調(diào)函數(shù)總是在同一個文件里
     9. 設(shè) int x=7;, 執(zhí)行語句 x=x <<2; 后,變量 x 的值是(   )
     A.1 B.3
     C.14 D.28
     10. 執(zhí)行語句 printf( " |%9.4f|\n " ,12345.67); 后的輸出結(jié)果是(  ?。?BR>     A.|2345.6700| B.|12345.6700|
     C.|12345.670| D.|12345.67|
     11. 以下說法中正確的是(   )
     A. 字符型變量可以存放字符串
     B. 遞歸調(diào)用是指函數(shù)調(diào)用自己
     C. 所有的外部函數(shù)只能在本文件中被調(diào)用
     D. 在循環(huán)體中 break 語句和 continue 語句的作用都是結(jié)束循環(huán)
     12. 設(shè) char s[6],*ps=s;, 則正確的賦值語句是(  ?。?BR>     A.s= " 12345 " ; B.*s= " 12345 " ;
     C.ps= " 12345 " ; D.*ps= " 12345 " ;
     13. 設(shè) int a[ ]={1,2,3,4,5},*p=a;
     則數(shù)組元素的正確表示是(   )
     A.a[2] B.&(a+1)
     C.a[5] D.&p
     14. 對二維數(shù)組的正確定義是(  ?。?BR>     A.int a[ ] [ ]={1,2,3,4,5,6}; B.int a[2] [ ]={1,2,3,4,5,6};
     C.int a[ ] [3]={1,2,3,4,5,6}; D.int a[2,3]={1,2,3,4,5,6};
     15. 字符數(shù)組 s 不能作為字符串使用的是(   )
     A.char s[ ]= " happy " ;
     B.char s[ ]={ " happy " };
     C.char s[6]={ ' h ' , ' a ' , ' p ' , ' p ' , ' y ' };
     D.char s[4]={ ' h ' , ' a ' , ' p ' , ' p ' , ' y ' };
     16. 若定義函數(shù):
     fun(int a,float b)
     {return a+b;
     }
     則該函數(shù)的數(shù)據(jù)類型是(  ?。?BR>     A.int B.void
     C.float D. 不確定
     17. 設(shè)
     struct st
     { int a;
     float b;
     }s, *p=&s;
     則正確的引用是(   )
     A.(*).s.a B.(*p).a
     C.p->s.a D.p.s.a
     18. 設(shè) enum color {red,yellow=2,blue,white,black}r=white;, 執(zhí)行 printf( " %d " ,r) ;后的輸出結(jié)果是(   )
     A.0 B.1
     C.3 D.4
     19. 以下說法中錯誤的是(  ?。?BR>     A. 共用型數(shù)據(jù)中所有成員的首地址都是同一個
     B. 可以用已定義的共用型來定義數(shù)組或指針變量的類型
     C. 共用型數(shù)據(jù)中的成員可以是結(jié)構(gòu)型,但不可以是共用型
     D. 用 typedef 定義新類型取代原有類型后,原類型仍可有效使用
     20. 設(shè) #define L(x) 2*3.14*x
     則 L(x) 是(  ?。?BR>     A. 函數(shù)名 B. 函數(shù)調(diào)用
     C. 無參的宏名 D. 帶參的宏名