一、選擇題:
1、經過以下語句定義後, 表示式z+=x>y?++x:++y 的值為:( )
int x=1,y=2,z=3;
a. 2 b. 3 c. 6 d. 5
2、能正確表示邏輯關係:"a≥ 10或a≤ 0" 的c 語言表示式是
a. a>=10 or a<=0 b.a>=0|a<=10 c. a>=10&&a<=0 d. a>=10||a<=0
3.已知int a=5,b=7,c=3;則邏輯表示式aa. 1b. 0 c. 3 d. 4
4、下列程式的輸出結果是 :( )
main()
a.1 1 1 b. 2 2 2 c. 2 2 1 d. 2 1 1
5、在c語言中邏輯值「真」是用表示的
a. 預定義為真值的巨集 b. 非零值 c. 正數 d. 非零整數
6、 設有int x,y; 以下語句判斷x和y是否相等,正確的說法是該語句:( )
if (x=y) printf(" x is equal to y.");
a. 語法錯 b. 不能判斷x和y是否相等
c. 編譯出錯 d. 能判斷x和y是否相等
7、以下程式的輸出結果是:( )。
main()
a. 5 b. 4 c. 6 d. 不確定
8、若希望當a 的值為奇數時, 表示式的值為"真",a 的值為偶數時, 表示式的值為"假", 則以下不能滿足要求的表示式是 :( )
a. a%2==1 b. !(a%2==0) c. !(a%2) d. a%2
9、若希望當a 的值為奇數時, 表示式的值為"真",a 的值為偶數時, 表示式的值為"假", 則以下不能滿足要求的表示式是 :( )
a. a%2==1 b. !(a%2==0) c. !(a%2) d. a%2
10、執行以下語句後,a,b的值分別為:( )。
int a ,b ,c ; a=b=c=1 ; ++a||++b&&++c;
(a)2 ,2 (b)1 ,1 (c)2 ,1 (d)1 ,2
11、 判斷char型變數c l是否為小寫字母的正確表示式為
a. 』a』<=c1<=』z』 b. (c1>=a)&&(c1<=z)
c. (『a』>=c1) (『z』<=c1) d. (c1>=』a』)&&(c1<=』z』)
12、已知int x=10,y=20,z=30;以下語句執行後x,y,z的值分別是:( )。
if(x>y) z=x ; x=y ; y=z ;
(a)x=10,y=20,z=30 (b)x=20,y=30,z=10
(c)x=20,y=30,z=30 (d)x=20,y=30,z=20
13、以下選項中非法的表示式是
(a) 0<=x<100 (b) i=j==0c) (char)(65+3) (d) x+1=x+1
14、閱讀以下程式:
main()
程式執行後,如果從鍵盤上輸人5,則輸出結果是:( )
(a)3b) 4c) 5d) 6
15. c語言對於巢狀if語句規定else總是與( )匹配。
a)與最外層的if b.)與之前最近的if
c)與之前最近的不帶else的if d)與最近的之前的if
16.以下有關switch語句的正確說法是
a)break語句是語句中必須的一部分
b)在switch 語句中可以根據需要使用或不使用break語句
c)break語句在switch 語句中不可以使用
d)在switch 語句中的每乙個case都要用break語句
17.設有: int a=2,b=3,c=7,d=8,m=3,n=3; 執行 (m=a>b)&&(n=c>d) 後的 n 值為
a) 0 b) 1 c ) 2 d) 3
18.可判斷非0變數 a為正,b為負的正確表示式是
a) a*b <0b) (a>0||b >0)&&a*b <0
c) (a<0||b<0)&&a*b <0 d) a>0&&a*b<0
19.假定 int a=3, b=2, c=1, 表示式: (c==a>c)+(a/b) 的值是
a) 1.75 b) 2 c) 1.5 d) 2.5
20.設a、b和c都是int型變數,且a=3,b=4,c=5;則以下的表示式中,值為0的
表示式是
a) a&&b b) a<=b c) a||b+c&&b-c d) !((a
二、填空題:
1、設x=3,y=-4,z=5,則表示式!(x>y)+(y!=z)||(x+y)&&(y=z)的值是 。
2、 當a=5,b=4,c=2時,表示式 a>b!= c的值是 _______。
3、 為表示關係x ≥ y ≥z,正確的c語言邏輯、關係表示式為 。
4、有int a=3,b=4,c=5,x,y;,則以下表示式的值為
!(x=a)&&(y=b)&&c
5、在c語言中,表示邏輯"真"值用 .
6、當a=3,b=2,c=1時,表示式f=a>b>c的值是 .
7、與if(x==0) 等價的表示式寫法寫法是
8、若定義:int a=5,b=2,c=1; 則表示式 a-b>c||b==c 的值是 ;
表示式 a-b>c&&b==c 的值是 。
9、 「: ?」條件運算子是c語言中唯一的三目運算子。
由其連線的表示式為條件表示式,其格式為: 《表示式1>?《表示式2>:
《表示式3> 。執行過程:首先計算表示式1的值,如果表示式1的值是「真」(非0),則整個表示式的值為的值;如果表示式1的值是「假」(0),則整個表示式的值為的值。
10.c語言提供的三種邏輯運算子是和_______。
11.若已知a=10,b=20,則表示式!a12.若a,b變數的值任意,表示式(a==b)&&(a>b)的值是
13.設x,y,z均為int型變數,請寫出:
(1)x、y中至少有乙個小於z的表示式
(2)x、y都大於z的表示式
三、看程式寫結果:
1、main()
3、若從鍵盤輸入58,則以下程式輸出的結果是
main()
4、 以下程式執行後的輸出結果是
main()
5、 源程式如下:
#include
main()
default: printf("&");
}printf(" "); }
執行結果
6、main( )
{ int x=1, y=2;
第五章選擇分支結構程式設計
選擇結構是三種基本結構 順序 選擇 迴圈 之一。作用是根據所指定的條件是否滿足,決定從給定的兩組操作選擇其中的一種。c語言中的選擇結構是用if語句實現的。if語句的常用的形式是 if 關係 邏輯表示式 語句1 else 語句2 例5 1 用c語言實現圖示的分段函式。數學上描述此分段函式 1,x 0 ...
第五章迴圈結構
一般形式 break 用於迴圈語句和switch語句中,作用是跳出它所在的迴圈語句或switch 語句。在多層迴圈中,乙個break語句只向外跳一層。break語句用在for while do while等迴圈體中時,常與if條件語句一起使用,用來加速迴圈,其一般形式是 while 表示式1 2 c...
第五章晶體結構
5.1 晶體學基礎 5.1.1 晶體的特徵與點陣結構 固體 液體和氣體是物質存在的三種基本狀態,與液體和氣體相比,固體具有一定的體積和外形。早期人們把具有整齊外形,以多面體出現的固體物質稱為晶體,如六稜柱狀的水晶,立方體的食鹽等。不呈幾何多面體外形的固體稱為非晶體,如玻璃。這樣的定義顯然會遇到這樣乙...