一、單項選擇題
1. 設int x=1,y=1;表達式(!x++ || y——)的值是_________
A.0 B. 1 C. 2 D.-1
2.main( )
{ int n;
( n=6*4,n+6),n*2;
printf(“n=%d\n”,n);
} 此程序的輸出結果是______________.
A.30 B. 24 C. 60 D. 48
3.若有如下定義,則__________是對數(shù)組元素的正確的引用。
int a[10] , *p ;
p=a ; p=a ; p=a ; p=a ;
A. *&a[10] B. a[11] C. *(p+10) D. *p
4.設整型變量n的值為2,執(zhí)行語句“n+=n-=n*n;”后,n的值是__________
A. 0 B. 4 C. - 4 D. 2
5.以下不能正確定義二維數(shù)組的語句是___________
A . int a[2][2]={{1},{2}}; B. int a[][2]={1,2,3,4};
C. int a[2][2]={{1},2,3}; D. int a[2][]={{1,2},{3,4}};
6. 程序段的功能是將變量 u 、s中的值賦給變量t .
A. if(u>s) t=u;t=s; B. t=u; if(t ) t=s;
C. if(u>s) t=s;else t=u; D . t=s; if(u ) t=u;
7.下列程序段的輸出結果是 .
void main()
{ int k;
for (k=1;k<5;k++〉
{ if(k%2!=0)
printf(“#”);
else
printf(“*”) ; }
}
A. #*#* B . *#*# C. ## D. 以上都不對
8.設變量定義為 int a[3]={1,4,7},*p=&a[2], 則*p的值是(35) .
A. &a[2] B. 4 C. 7 D. 1
9.能正確表示a和b同時為正或同時為負的邏輯表達式是_________.
A.a>=0||b>=0)&&(a<0 ||b<0) B.(a>=0 && b>=0)&&(a<0 && b<0)
C.(a+b>0) &&(a+b<=0) D. a*b>0
10.C語言中,合法的字符型常數(shù)是_________.
A.‘A’ B.“A” C. 65 D. A
11.設有數(shù)組定義:char array[]=“China”; 則數(shù)組所占的空間是________.
A.4個字節(jié) B.5個字節(jié) C.6個字節(jié) D.7個字節(jié)
12.若變量c為char類型,能正確判斷出c為小寫字母的表達式是_______.
A.‘a’<=c<=‘z’
B. (c>=‘a’) || (c<=‘z’)
C.(‘a’<=c) and (‘z’>=c)
D. (c>=‘a’) && (c<=‘z’)
13.設有定義:long x=-123456L; 則以下能夠正確輸出變量x值的語句是_______.
A.printf(“x=%d\n”,x) B.printf(“x=%ld\n”,x)
C.printf(“x=%8dl\n”,x) D.printf(“x=%LD\n”,x);
14.下列關于指針定義的描述,___________是錯誤的。
A.指針是一種變量,該變量用來存放某個變量的地址值的。
B.指針變量的類型與它所指向的變量類型一致。
C.指針變量的命名規(guī)則與標識符相同。
D.在定義指針時,標識符前的“*”號表示后面的指針變量所指向的內容。
15.已知:int x;int y[10];下列______是合法的。
A.&x B.&(x+3) C.&5 D .&y
16.指出下面正確的輸入語句__________.
A. scanf(“a=b=%d”,&a,&b);
B. scanf(“%d,%d”,&a,&b);
C. scanf(“%c”,c);
D. scanf(“% f%d\n”,&f);
17.C語言中以追加方式打開一個文件應選擇_______________參數(shù)。
A.“r” B.“w”
C.“rb” D.“a”
18.Break語句的正確的用法是( )。
A. 無論在任何情況下,都中斷程序的執(zhí)行,退出到系統(tǒng)下一層。
B. 在多重循環(huán)中,只能退出最靠近的那一層循環(huán)語句。
C. 跳出多重循環(huán)。
D. 只能修改控制變量。
19. 為表示關系x≥y≥z,應使用C語言表達式
A.(x>=y)&&(y>=z) B. (x>=y) AND (y>=z)
C.(x>=y>=z) D. (x>=z)&(y>=z)
20.以下可以作為C語言合法整數(shù)的是________.
A.1010B B. 0368 C.0Xffa D. x2a2
21.在函數(shù)中默認存儲類型說明符的變量應該是________存儲類型。
A.內部靜態(tài) B. 外部 C.自動 D. 寄存器
二、判斷題
1. C 語言源程序文件通過了編譯、連接之后,生成一個后綴為 .EXE 的文件。 ( )
2. 在 C 程序中,函數(shù)既可以嵌套定義,也可以嵌套調用。( )
3. 在 C 程序中,APH 和aph 代表不同的變量。( )
4. 表達式0195 是一個八進制整數(shù)。( )
5. 表達式_ya是不合法的C語言標識符。( )
6. C程序總是從main( )函數(shù)的第一條語句開始執(zhí)行的。( )
7. A-=7等價于a=a-7. ( )
8. 利用fclose函數(shù)關閉已打開的文件。( )
9. 數(shù)組名可以作為參數(shù)進行傳遞。( )
10. 執(zhí)行printf(“%x”,12345);輸出 12345 .( )
三、填空
1.C語言的預處理語句以__________開頭。
2.表達式7+8>2 && 25 %5的結果是_______________________.
3.下列程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結束循環(huán)。
int n=0, ch;
ch=getchar( );
while( __________________ )
{ if ( ________________ ) n++;
c=getchar( ); }
4.C語言中putchar(c ) 函數(shù)的功能是_________________________________.
5.int *p 的含義是___________________________________________.
6.定義fp為文件型指針變量的定義方法為_______________________.
7.數(shù)組 int a[3][4];共定義了____________個數(shù)組元素。
四、讀出程序
1. 改正下列程序中不正確的語句。
main()
{ int a=8 , b=1;
a=a+b;
b=a*b;
printf(“%d, %d”,a,b); }
2.寫出下列程序的運行結果。
fun(int a, int b)
{ if(a>b) return (a);
Else return (b); }
main()
{ int x=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
printf(“%d\n”,r); }
3. 改正下列程序中不正確的語句。
main()
{ int n ;
float s=1.0;
for(n=10;n>1;n- -)
s=s+1/n;
printf(“%6.1f\n”,s); }
4. 寫出下列程序的運行結果。
main()
{ int n;
For(n=3; n<=10; n++)
{ if(n%5= =0) break;
Printf(“%d”,n); } }
5.寫出下列程序的運行結果。
#include “stdio.h”
main()
{ int a[]={1,2,3,-4,5};
int m,n,*p;
p=&a[0]; p=&a[0];
m=*(p+2);
n=*(p+4);
printf(“%d %d %d ”,*p,m,n); }
五、編程序
1.編程計算下列表達式:s=1!+2!+3!+4!+……+10!
2.從鍵盤上輸入a與n的值,計算sum=a+aa+aaa+aaaa+…(共n項)的和。例a=2,n=4,則sum=2+22+222+2222.
3.求3X3矩陣的主對角線元素之和。
4.從鍵盤上輸入10個數(shù)存入一維數(shù)組中,求這10數(shù)中的值與最小值并輸出。
5.從鍵盤上輸入若干個字符存入文件write.txt中,遇到回車鍵輸入結束。(用“\n”表示回車鍵)
1. 設int x=1,y=1;表達式(!x++ || y——)的值是_________
A.0 B. 1 C. 2 D.-1
2.main( )
{ int n;
( n=6*4,n+6),n*2;
printf(“n=%d\n”,n);
} 此程序的輸出結果是______________.
A.30 B. 24 C. 60 D. 48
3.若有如下定義,則__________是對數(shù)組元素的正確的引用。
int a[10] , *p ;
p=a ; p=a ; p=a ; p=a ;
A. *&a[10] B. a[11] C. *(p+10) D. *p
4.設整型變量n的值為2,執(zhí)行語句“n+=n-=n*n;”后,n的值是__________
A. 0 B. 4 C. - 4 D. 2
5.以下不能正確定義二維數(shù)組的語句是___________
A . int a[2][2]={{1},{2}}; B. int a[][2]={1,2,3,4};
C. int a[2][2]={{1},2,3}; D. int a[2][]={{1,2},{3,4}};
6. 程序段的功能是將變量 u 、s中的值賦給變量t .
A. if(u>s) t=u;t=s; B. t=u; if(t ) t=s;
C. if(u>s) t=s;else t=u; D . t=s; if(u ) t=u;
7.下列程序段的輸出結果是 .
void main()
{ int k;
for (k=1;k<5;k++〉
{ if(k%2!=0)
printf(“#”);
else
printf(“*”) ; }
}
A. #*#* B . *#*# C. ## D. 以上都不對
8.設變量定義為 int a[3]={1,4,7},*p=&a[2], 則*p的值是(35) .
A. &a[2] B. 4 C. 7 D. 1
9.能正確表示a和b同時為正或同時為負的邏輯表達式是_________.
A.a>=0||b>=0)&&(a<0 ||b<0) B.(a>=0 && b>=0)&&(a<0 && b<0)
C.(a+b>0) &&(a+b<=0) D. a*b>0
10.C語言中,合法的字符型常數(shù)是_________.
A.‘A’ B.“A” C. 65 D. A
11.設有數(shù)組定義:char array[]=“China”; 則數(shù)組所占的空間是________.
A.4個字節(jié) B.5個字節(jié) C.6個字節(jié) D.7個字節(jié)
12.若變量c為char類型,能正確判斷出c為小寫字母的表達式是_______.
A.‘a’<=c<=‘z’
B. (c>=‘a’) || (c<=‘z’)
C.(‘a’<=c) and (‘z’>=c)
D. (c>=‘a’) && (c<=‘z’)
13.設有定義:long x=-123456L; 則以下能夠正確輸出變量x值的語句是_______.
A.printf(“x=%d\n”,x) B.printf(“x=%ld\n”,x)
C.printf(“x=%8dl\n”,x) D.printf(“x=%LD\n”,x);
14.下列關于指針定義的描述,___________是錯誤的。
A.指針是一種變量,該變量用來存放某個變量的地址值的。
B.指針變量的類型與它所指向的變量類型一致。
C.指針變量的命名規(guī)則與標識符相同。
D.在定義指針時,標識符前的“*”號表示后面的指針變量所指向的內容。
15.已知:int x;int y[10];下列______是合法的。
A.&x B.&(x+3) C.&5 D .&y
16.指出下面正確的輸入語句__________.
A. scanf(“a=b=%d”,&a,&b);
B. scanf(“%d,%d”,&a,&b);
C. scanf(“%c”,c);
D. scanf(“% f%d\n”,&f);
17.C語言中以追加方式打開一個文件應選擇_______________參數(shù)。
A.“r” B.“w”
C.“rb” D.“a”
18.Break語句的正確的用法是( )。
A. 無論在任何情況下,都中斷程序的執(zhí)行,退出到系統(tǒng)下一層。
B. 在多重循環(huán)中,只能退出最靠近的那一層循環(huán)語句。
C. 跳出多重循環(huán)。
D. 只能修改控制變量。
19. 為表示關系x≥y≥z,應使用C語言表達式
A.(x>=y)&&(y>=z) B. (x>=y) AND (y>=z)
C.(x>=y>=z) D. (x>=z)&(y>=z)
20.以下可以作為C語言合法整數(shù)的是________.
A.1010B B. 0368 C.0Xffa D. x2a2
21.在函數(shù)中默認存儲類型說明符的變量應該是________存儲類型。
A.內部靜態(tài) B. 外部 C.自動 D. 寄存器
二、判斷題
1. C 語言源程序文件通過了編譯、連接之后,生成一個后綴為 .EXE 的文件。 ( )
2. 在 C 程序中,函數(shù)既可以嵌套定義,也可以嵌套調用。( )
3. 在 C 程序中,APH 和aph 代表不同的變量。( )
4. 表達式0195 是一個八進制整數(shù)。( )
5. 表達式_ya是不合法的C語言標識符。( )
6. C程序總是從main( )函數(shù)的第一條語句開始執(zhí)行的。( )
7. A-=7等價于a=a-7. ( )
8. 利用fclose函數(shù)關閉已打開的文件。( )
9. 數(shù)組名可以作為參數(shù)進行傳遞。( )
10. 執(zhí)行printf(“%x”,12345);輸出 12345 .( )
三、填空
1.C語言的預處理語句以__________開頭。
2.表達式7+8>2 && 25 %5的結果是_______________________.
3.下列程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結束循環(huán)。
int n=0, ch;
ch=getchar( );
while( __________________ )
{ if ( ________________ ) n++;
c=getchar( ); }
4.C語言中putchar(c ) 函數(shù)的功能是_________________________________.
5.int *p 的含義是___________________________________________.
6.定義fp為文件型指針變量的定義方法為_______________________.
7.數(shù)組 int a[3][4];共定義了____________個數(shù)組元素。
四、讀出程序
1. 改正下列程序中不正確的語句。
main()
{ int a=8 , b=1;
a=a+b;
b=a*b;
printf(“%d, %d”,a,b); }
2.寫出下列程序的運行結果。
fun(int a, int b)
{ if(a>b) return (a);
Else return (b); }
main()
{ int x=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
printf(“%d\n”,r); }
3. 改正下列程序中不正確的語句。
main()
{ int n ;
float s=1.0;
for(n=10;n>1;n- -)
s=s+1/n;
printf(“%6.1f\n”,s); }
4. 寫出下列程序的運行結果。
main()
{ int n;
For(n=3; n<=10; n++)
{ if(n%5= =0) break;
Printf(“%d”,n); } }
5.寫出下列程序的運行結果。
#include “stdio.h”
main()
{ int a[]={1,2,3,-4,5};
int m,n,*p;
p=&a[0]; p=&a[0];
m=*(p+2);
n=*(p+4);
printf(“%d %d %d ”,*p,m,n); }
五、編程序
1.編程計算下列表達式:s=1!+2!+3!+4!+……+10!
2.從鍵盤上輸入a與n的值,計算sum=a+aa+aaa+aaaa+…(共n項)的和。例a=2,n=4,則sum=2+22+222+2222.
3.求3X3矩陣的主對角線元素之和。
4.從鍵盤上輸入10個數(shù)存入一維數(shù)組中,求這10數(shù)中的值與最小值并輸出。
5.從鍵盤上輸入若干個字符存入文件write.txt中,遇到回車鍵輸入結束。(用“\n”表示回車鍵)