(一)選擇題
1
. 邏輯運算符兩側運算對象三數據類型??????????? 。
A)
只能是0和1? ??????? ???????????B) 只能是0或非0正數
C)
只能是整型或字符型數據??? ? ????D) 可以是任何類型的數據
2
. 判斷char型變量ch是否為大寫字母的正確表達式是?????? 。
A)
‘A’<=ch<=‘Z’? ????????????? B) (ch>=‘A’)&(ch<=‘Z’)
C) (ch>=
‘A’)&&(ch<=‘Z’)?????? D) (‘A’<= ch)AND(‘Z’>= ch)
3
. 若希望當A的值為奇數時,表達式的值為“真”,A的值為偶數時,表達式的值為“假”。則以下不能滿足要求的表達式是??????????? 。
??? A) A%2==1??????? B) !(A%2==0)? ?????C) !(A%2)??? ????? D) A%2
4
. 設有:int a=1,b=2,c=3,d=4,m=2,n=2;執行(m=a>b)&&(n=c>d)后n的值為???????? 。
??? A) 1??????? B) 2??????? C) 3?? ????? D) 4
5
. 以下程序的運行結果是??????? 。
main()
{??? int a,b,d=241;
???? a=d/100%9;
???? b=(-1)&&(-1);
???? printf(
“%d,%d”,a,b);
}
A) 6,1?????? B) 2,1?????? C) 6,0??? ? ?D) 2,0
6
. 已知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=30
C) x=20, y=30, z=10?????????????? D)? x=20, y=30, z=20
7
. 以下程序的運行結果是??????? 。
main()
{??? int m=5;
???? if(m++>5)?
printf(
“%d\n”,m);
???? else;
???????? printf(
“%d\n”,m--);
}
A) 4?????? B) 5??????? C) 6?? ???D) 7
8
. 若運行時給變量x輸入12,則以下程序的運行結果是??????? 。
main()
{??? int x,y;
???? scanf(
“%d”,&x);
???? y=x>12 ? x+10 : x-12;
printf(
“%d\n”,y);
}
A) 4?????? B) 3??????? C) 2?? ???D) 1
二)編程題
1
. 編程實現:輸入整數a和b,若a2+b2大于100,則輸出a2+b2百位以上的數字,否則輸出兩數之和。
2.?
編程判斷輸入的正整數是是否既是5又是7的整倍數。若是,則輸出yes;否則輸出no。
3.?
用switch編程實現:
???????????{ -1? ?(x<0)
?????? y =?{? 0?? (x=0)
???????????????? {? 1?? (X>0)?
????
???
4
. 用switch語句編一程序,對于給定的一個百分制成績,輸出相應的五分制成績,設:90分以上為‘A’,80~89分為‘B’,70~79分為‘C’,60~69分為‘D’,60分以下為‘E’