一.單項選擇題
1.各種基本數(shù)據(jù)類型的存貯空間正確的長度排列為__________。
A.CharB.DoubleC.CharD.Float
2.下面的變量說明中_____________是正確的。
A.Char:a, b, c;
B.Char a; b; c;
C.Char a, b, c;
D.Char a, b, c
3.main( )
{ int n;
( n=6*4,n+6),n*2;
printf(“n=%d\n”,n);
} 此程序的輸出結(jié)果是______________.
A.30
B. 24
C. 60
D. 48
4.若有如下定義,則__________和_________是對數(shù)組元素的正確的引用。.
int a[10] , *p ;
p=a ;
A. *&a[10]
B. a[11]
C. *(p+2)
D. *p
5.設(shè)整型變量n的值為2,執(zhí)行語句“n+=n-=n*n;”后,n的值是__________
A. 0
B. 4
C. - 4
D. 2
6.表達(dá)式y(tǒng)=(13>12?15:6>7?8:9)的值為____________ 。
A 9
B 8
C 15
D. 1
7.若x=5,y=3 則y*=x+5; y的值為_______________.
A. 10
B. 20
C. 15
D. 30
8.C語言的輸入與輸出操作是由____________完成的。
A.輸入語句
B.輸出語句
C.輸入與輸出函數(shù)
D.輸入與輸出語句
9.語句 for(k=0;k<5;++k)
{ if(k= = 3) continue;
printf(“%d”,k);
}的輸出結(jié)果為___________.
A.012
B. 0124
C. 01234
D. 沒有輸出結(jié)果
10.從循環(huán)體內(nèi)某一層跳出,繼續(xù)執(zhí)行循環(huán)外的語句是:___________。
A. break語句
B.return語句
C.continue語句
D.空語句。
11.Break語句的正確的用法是____________。
A.無論在任何情況下,都中斷程序的執(zhí)行,退出到系統(tǒng)下一層。
B.在多重循環(huán)中,只能退出最靠近的那一層循環(huán)語句。
C.跳出多重循環(huán)。
D.只能修改控制變量。
12.兩個指針變量的值相等時,表明兩個指針變量是__________。
A.占據(jù)同一內(nèi)存單元。
B.指向同一內(nèi)存單元地址或者都為空。
C.是兩個空指針。
D.都沒有指向。
13.不正確的指針概念是__________。
A.一個指針變量只能指向同一類型的變量。
B.一個變量的地址稱為該變量的指針。
C.只有同一類型變量的地址才能存放在指向該類型變量的指針變量之中。
D.指針變量可以賦任意整數(shù),但不能賦浮點數(shù)。
14.設(shè)char ch=’A’;表達(dá)式ch!(ch>=’A’&&ch<=’Z’)?ch:(ch+32)的值是_________。
A.A
B. a
C. Z
D. z
15.根據(jù)C語言的語法規(guī)則,下列________個是不合法標(biāo)識符。
A.While
B. Name
C. Rern5
D. _exam 16.設(shè)單精度變量f,g均為5.0,使f為10.0的表達(dá)式是__________。
A. f+=g
B. f-=g+5
C. f*=g-15
D. f / =g*10
17. 設(shè)整型變量n的值為2,執(zhí)行語句“n+=n- =n*n ;”后,n的值是__________。
A. 0
B. 4
C. –4
D. 2
18.下列不是賦值語句的是__________。
A.A++
B. a= = b
C. a+=b
D. a=1
19. 為表示關(guān)系x≥y≥z,應(yīng)使用C語言表達(dá)式__________
A.(x>=y)&&(y>=z)
B. (x>=y) AND (y>=z)
C.(x>=y>=z)
D. (x>=z)&(y>=z)
20.設(shè)有數(shù)組定義:char array[]=”China”;則數(shù)組所占的存貯空間為__________。
A.4個字節(jié)
B. 5個字節(jié)
C. 6個字節(jié)
D. 7個字節(jié)
二.寫出下列程序的運(yùn)行結(jié)果
1. main ( )
{ int x=10,y=10;
printf(“%d %d\n”,x--,--y); }
該程序的運(yùn)行結(jié)果是___________________________________。
2.main( )
{ int j , k , p, s;
s=0 ;
for (j=1; j<=3; j++)
{ p=1;
for(k=1; k<=j; k++)
p=p*k;
s=s+p;
}
printf(“s=%d\n”,s); }
該程序的運(yùn)行結(jié)果是___________________________________。
3. # include “stdio.h”
main( )
{ int a[]={1,2,3,4,5}, *p;
p=a;
*(p+2)+=2;
printf(“%d, %d ”, *p, *(p+2)); }
該程序的運(yùn)行結(jié)果是___________________________________。
4.main( )
{ int a[]={2,4,6,8,10};
int y=1,x,*p;
p=&a[1];
for(x=0;x<3;x++)
y + =*(p+x);
printf(“%d\n”,y); }
該程序的運(yùn)行結(jié)果是___________________________________。
5.main()
{ int a[5], k;
for(k=0;k<5;k++)
a[k]=10*k ;
printf(“%d”, a[k-1]) ; }
該程序的運(yùn)行結(jié)果是___________________________________。
三.判斷題
1. 函數(shù)一般由函數(shù)的說明部分和函數(shù)體部分組成。 ( )
2. C語言中數(shù)據(jù)類型只有整型、實型和字符型。 ( )
3. 數(shù)組的下標(biāo)從1開始。 ( )
4. 假設(shè)有int a[10], *p; 則P=&a[0]與p=a等價。 ( )
5. getchar()函數(shù)的功能是從鍵盤上輸入一個字符串。 ( )
6. 在C語言中定義一個文件指針的方法為:FILE *fp; 。 ( )
7. 構(gòu)成數(shù)組的各個元素可以有不同的數(shù)據(jù)類型。 ( )
8. C語言的數(shù)據(jù)類型只有int 型和 float 型。 ( )
9. 從循環(huán)體中退出只能使用goto語句。 ( )
10.Continue語句的作用是繼續(xù)程序中的下一個循環(huán)。 ( )
四.編程題
1. 從鍵盤上輸入20個元素的值存入一維數(shù)組a中,然后將下標(biāo)為(1、3、5、7、9……)的元素值賦值給數(shù)組b,輸出數(shù)組b的內(nèi)容。
2. 編程序求 3,-30,20,6,77,2,0,-4,-7,99這十個數(shù)中值與最小值。
3. 輸入兩個整數(shù),調(diào)用函數(shù)stu( )求兩個數(shù)和的立方,返回主函數(shù)顯示結(jié)果。
4. 將文件file1.txt中的內(nèi)容讀出并顯示到屏幕上。
5. 編程計算1-100之間的奇數(shù)和與偶數(shù)和?!⒖即鸢?BR> 一.單項選擇題
1. C 2. C 3. C 4. C D
5. C 6. B 7. D 8. C 9. B 10. C
11. B 12.A 13 D 14. B 15. A 16. A.
17. C 18. B 19. A.20. C.
二.寫出下列程序的運(yùn)行結(jié)果
1.10 9 2.S=9 3. 1,5 4.19 5.40
三.判斷題
1. 對 2. 不對 3. 不對 4. 對 5.不對
6. 對 7. 不對 8. 不對 9. 不對 10.不對
四.編程題
1. main()
{ int m[20],n[10];
int a,b=0;
for(a=0;a<20;a++)
{ scanf(“%d”,&m[a]);
if(a%2= =1)
{ n[b]=m[a];
b++; }
}
}
2. main()
{ int m[10]={ 3,-30,20,6,77,2,0,-4,-7,99},max,min;
max=min=m[0];
for(a=0;a<10;a++)
{ if(m[a]>max)
max=m[a];
if(m[a]
min=m[a];
}
printf(“%d,%d”,max,min);
}
3. int stu(int a,int b)
{ int c;
c=a*a+b*b;
return c; }
main()
{ int x,y,z;
scanf(“%d,%d”,&x,&y);
z=stu(x,y);
printf(“%d”,z); }
4.main()
{ FILE *fp;
Char ch;
fp=fopen(“write.txt”,“r”);
ch=fgetc (fp);
while(ch!= EOF)
{ putchar(ch);
ch=fgetc(fp); }
fclose(fp);
}
5.main()
{
int sum1=0,sum2=0,a,b;
for(a=1;a<=100;a++)
if(a%2= =0) if(a%2= =0)
sum1+=a;
else
sum2+=a;
printf(“%d,%d”,sum1,sum2);
}
1.各種基本數(shù)據(jù)類型的存貯空間正確的長度排列為__________。
A.CharB.DoubleC.CharD.Float
2.下面的變量說明中_____________是正確的。
A.Char:a, b, c;
B.Char a; b; c;
C.Char a, b, c;
D.Char a, b, c
3.main( )
{ int n;
( n=6*4,n+6),n*2;
printf(“n=%d\n”,n);
} 此程序的輸出結(jié)果是______________.
A.30
B. 24
C. 60
D. 48
4.若有如下定義,則__________和_________是對數(shù)組元素的正確的引用。.
int a[10] , *p ;
p=a ;
A. *&a[10]
B. a[11]
C. *(p+2)
D. *p
5.設(shè)整型變量n的值為2,執(zhí)行語句“n+=n-=n*n;”后,n的值是__________
A. 0
B. 4
C. - 4
D. 2
6.表達(dá)式y(tǒng)=(13>12?15:6>7?8:9)的值為____________ 。
A 9
B 8
C 15
D. 1
7.若x=5,y=3 則y*=x+5; y的值為_______________.
A. 10
B. 20
C. 15
D. 30
8.C語言的輸入與輸出操作是由____________完成的。
A.輸入語句
B.輸出語句
C.輸入與輸出函數(shù)
D.輸入與輸出語句
9.語句 for(k=0;k<5;++k)
{ if(k= = 3) continue;
printf(“%d”,k);
}的輸出結(jié)果為___________.
A.012
B. 0124
C. 01234
D. 沒有輸出結(jié)果
10.從循環(huán)體內(nèi)某一層跳出,繼續(xù)執(zhí)行循環(huán)外的語句是:___________。
A. break語句
B.return語句
C.continue語句
D.空語句。
11.Break語句的正確的用法是____________。
A.無論在任何情況下,都中斷程序的執(zhí)行,退出到系統(tǒng)下一層。
B.在多重循環(huán)中,只能退出最靠近的那一層循環(huán)語句。
C.跳出多重循環(huán)。
D.只能修改控制變量。
12.兩個指針變量的值相等時,表明兩個指針變量是__________。
A.占據(jù)同一內(nèi)存單元。
B.指向同一內(nèi)存單元地址或者都為空。
C.是兩個空指針。
D.都沒有指向。
13.不正確的指針概念是__________。
A.一個指針變量只能指向同一類型的變量。
B.一個變量的地址稱為該變量的指針。
C.只有同一類型變量的地址才能存放在指向該類型變量的指針變量之中。
D.指針變量可以賦任意整數(shù),但不能賦浮點數(shù)。
14.設(shè)char ch=’A’;表達(dá)式ch!(ch>=’A’&&ch<=’Z’)?ch:(ch+32)的值是_________。
A.A
B. a
C. Z
D. z
15.根據(jù)C語言的語法規(guī)則,下列________個是不合法標(biāo)識符。
A.While
B. Name
C. Rern5
D. _exam 16.設(shè)單精度變量f,g均為5.0,使f為10.0的表達(dá)式是__________。
A. f+=g
B. f-=g+5
C. f*=g-15
D. f / =g*10
17. 設(shè)整型變量n的值為2,執(zhí)行語句“n+=n- =n*n ;”后,n的值是__________。
A. 0
B. 4
C. –4
D. 2
18.下列不是賦值語句的是__________。
A.A++
B. a= = b
C. a+=b
D. a=1
19. 為表示關(guān)系x≥y≥z,應(yīng)使用C語言表達(dá)式__________
A.(x>=y)&&(y>=z)
B. (x>=y) AND (y>=z)
C.(x>=y>=z)
D. (x>=z)&(y>=z)
20.設(shè)有數(shù)組定義:char array[]=”China”;則數(shù)組所占的存貯空間為__________。
A.4個字節(jié)
B. 5個字節(jié)
C. 6個字節(jié)
D. 7個字節(jié)
二.寫出下列程序的運(yùn)行結(jié)果
1. main ( )
{ int x=10,y=10;
printf(“%d %d\n”,x--,--y); }
該程序的運(yùn)行結(jié)果是___________________________________。
2.main( )
{ int j , k , p, s;
s=0 ;
for (j=1; j<=3; j++)
{ p=1;
for(k=1; k<=j; k++)
p=p*k;
s=s+p;
}
printf(“s=%d\n”,s); }
該程序的運(yùn)行結(jié)果是___________________________________。
3. # include “stdio.h”
main( )
{ int a[]={1,2,3,4,5}, *p;
p=a;
*(p+2)+=2;
printf(“%d, %d ”, *p, *(p+2)); }
該程序的運(yùn)行結(jié)果是___________________________________。
4.main( )
{ int a[]={2,4,6,8,10};
int y=1,x,*p;
p=&a[1];
for(x=0;x<3;x++)
y + =*(p+x);
printf(“%d\n”,y); }
該程序的運(yùn)行結(jié)果是___________________________________。
5.main()
{ int a[5], k;
for(k=0;k<5;k++)
a[k]=10*k ;
printf(“%d”, a[k-1]) ; }
該程序的運(yùn)行結(jié)果是___________________________________。
三.判斷題
1. 函數(shù)一般由函數(shù)的說明部分和函數(shù)體部分組成。 ( )
2. C語言中數(shù)據(jù)類型只有整型、實型和字符型。 ( )
3. 數(shù)組的下標(biāo)從1開始。 ( )
4. 假設(shè)有int a[10], *p; 則P=&a[0]與p=a等價。 ( )
5. getchar()函數(shù)的功能是從鍵盤上輸入一個字符串。 ( )
6. 在C語言中定義一個文件指針的方法為:FILE *fp; 。 ( )
7. 構(gòu)成數(shù)組的各個元素可以有不同的數(shù)據(jù)類型。 ( )
8. C語言的數(shù)據(jù)類型只有int 型和 float 型。 ( )
9. 從循環(huán)體中退出只能使用goto語句。 ( )
10.Continue語句的作用是繼續(xù)程序中的下一個循環(huán)。 ( )
四.編程題
1. 從鍵盤上輸入20個元素的值存入一維數(shù)組a中,然后將下標(biāo)為(1、3、5、7、9……)的元素值賦值給數(shù)組b,輸出數(shù)組b的內(nèi)容。
2. 編程序求 3,-30,20,6,77,2,0,-4,-7,99這十個數(shù)中值與最小值。
3. 輸入兩個整數(shù),調(diào)用函數(shù)stu( )求兩個數(shù)和的立方,返回主函數(shù)顯示結(jié)果。
4. 將文件file1.txt中的內(nèi)容讀出并顯示到屏幕上。
5. 編程計算1-100之間的奇數(shù)和與偶數(shù)和?!⒖即鸢?BR> 一.單項選擇題
1. C 2. C 3. C 4. C D
5. C 6. B 7. D 8. C 9. B 10. C
11. B 12.A 13 D 14. B 15. A 16. A.
17. C 18. B 19. A.20. C.
二.寫出下列程序的運(yùn)行結(jié)果
1.10 9 2.S=9 3. 1,5 4.19 5.40
三.判斷題
1. 對 2. 不對 3. 不對 4. 對 5.不對
6. 對 7. 不對 8. 不對 9. 不對 10.不對
四.編程題
1. main()
{ int m[20],n[10];
int a,b=0;
for(a=0;a<20;a++)
{ scanf(“%d”,&m[a]);
if(a%2= =1)
{ n[b]=m[a];
b++; }
}
}
2. main()
{ int m[10]={ 3,-30,20,6,77,2,0,-4,-7,99},max,min;
max=min=m[0];
for(a=0;a<10;a++)
{ if(m[a]>max)
max=m[a];
if(m[a]
min=m[a];
}
printf(“%d,%d”,max,min);
}
3. int stu(int a,int b)
{ int c;
c=a*a+b*b;
return c; }
main()
{ int x,y,z;
scanf(“%d,%d”,&x,&y);
z=stu(x,y);
printf(“%d”,z); }
4.main()
{ FILE *fp;
Char ch;
fp=fopen(“write.txt”,“r”);
ch=fgetc (fp);
while(ch!= EOF)
{ putchar(ch);
ch=fgetc(fp); }
fclose(fp);
}
5.main()
{
int sum1=0,sum2=0,a,b;
for(a=1;a<=100;a++)
if(a%2= =0) if(a%2= =0)
sum1+=a;
else
sum2+=a;
printf(“%d,%d”,sum1,sum2);
}