版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
二級C語言模擬試題
一、填空題
1、C語言中基本的數(shù)據(jù)類型有:、、。
2、C語言中普通整型變量的類型說明符為,在內(nèi)存中占字節(jié),有符號普通整型
的數(shù)據(jù)范圍是。
3、整數(shù)-35在機內(nèi)的補碼表示為。
4,執(zhí)行下列語句inta=8;a+=a-=a*a:后,a的值是?
5、有如口語句:charA|amastudent");該字符串的長度是>A[3]=----------?
6、符號"a”和W的區(qū)別是。
7、所謂“指針”就是.
“&”運算符的作用是?
“*”運算符的作用是。
8、有如下輸入語句:5?2”("=%<1?=%<1£=%(1”,&2,&15,&<:);為使變量2的值為1,b的值為3,c的值為
2,從鍵盤輸入數(shù)據(jù)的正確形式應(yīng)是。
一、選拜四
1、設(shè)整型變量a為5,使b不為2的表達式是()。
A.b=a/2
B.b=6-(—a)
C.b=a%2
D.b=a>3?2:l
2、為了避免嵌套的條件分支語句if-else的二義性,C語言規(guī)定:C程序中的else總是與()組成配對關(guān)
系。
A.縮排位置相同的if
B.在其之前未配對的if
C.在其之前未配對的最近的if
D.同一行上的if
3、以下程序的輸出結(jié)果是()。
intx=10,y=10;
printf(44%d%d\n,,,x—y);
A.1010
B.99
C.910
D.109
4、設(shè)A為存放(短)整型的?維數(shù)組,如果A的首地址為P,那么A中第i個元素的地址為()。
A.P+i*2
B.P+(i-l)*2
C.P+(i-l)
D.P+i
5、選出下列標識符中不是合法的標識符的是()o
A.hot_do
B.cat!
C._pri
D.2ab
6、以下程序的輸出結(jié)果是()。
inta=5;
floatx=3.14;
a*=x*(,E,-A);
printf(t*%f\n,,,(float)a);
A.62.000000
B.62.800000
C.63.000000
D.62
7、設(shè)有說明double(*pl)[N];其中標識符pl是()。
A.N個指向double型變量的指針。
B.指向N個double型變量的函數(shù)指針。
C.?個指向由N個double型元素組成的一維數(shù)組的指針。
D.具有N個指針元素的?維指針數(shù)組,每個元素都只能指向double型量。
8、在C程序中有如下語句:char*func(y);它是()。
A.對函數(shù)func的定義。
B.對函數(shù)ftinc的調(diào)用。
C.對函數(shù)func的原型說明。
D.不合法的。
9、以下程序的輸出結(jié)果是()。
charstrU5]="helb!";
printf(u%d\n,\strlen(str));
A.15
B.14
C.7
D.6
10、分析以下程序的輸出結(jié)果是()。
main()
{inta=5,b=-l,c;
c=adds(a,b);
primf("%d”,c);
c=adds(a,b);
printf(u%d\n,\c);)
intadds(intx,inty)
{staticintm=0,n=3;
n*=++m;
m=n%x+y++;
return(m);}
A.2,3
B.2,2
C.3,2
D.2,4
11、下列描述中不正確的是()。
A.字符型數(shù)組中可能存放字符串。
B.可以對字符型數(shù)組進行整體輸入、輸出。
C.可以對整型數(shù)組進行整體輸入、輸出。
D.不能在賦值語句中通過賦值運算符“=”對字符型數(shù)組進行整體賦值。
12、以下程序的輸出結(jié)果是()。
#definef(x)x*x
main()
(inta=6,b=2,c;
c=f(a)/f(b);
printf("%d\n”,c);
)
A.9
B.6
C.36
D.18
13、設(shè)有如下定義:intx=10,y=3,z;
則語句printf("%d\n”,z=(x%y,x/y));的輸出結(jié)果是()。
A.1
B.0
C.4
D.3
14、定義如下變量和數(shù)組:inti;intx[3][3]={123,4,5,6,7,8,9};
則語句%r(i=0;iv3;i++)printf(M%dM,x[i][2-i]);的輸出結(jié)果是(<
A.159
B.147
C.357
D.369
15、以下對二維數(shù)組a進行正確初始化的是()
A.int明[3]={{1,2},{3,4},{5,6}};
B.inta[][3]={1,23,4,5,6);
C.inta[2][]={1,2,3,4,5,6};
D.inta[2][]={{1,2},{3,4});
16、兩次運行下面的程序,如果從鍵盤上分別輸入6和3,則輸出結(jié)果是()0
intx;
scanf("%d",&x);
if(x++>5)printf("%d",x);
elseprintf("%d\n",x--);
A.7和5
B.6和3
C.7和4
D.6和4
17、設(shè)有如下定義:char*aa[2]=("abcd","ABCD"J;則以下說法中正確的是()。
A)aa數(shù)組成元素的值分別是"abed"和ABCD"
B)aa是指針變量,它指向含有兩個數(shù)組元素的字符型一維數(shù)組
C)aa數(shù)組的兩個元素分別存放的是含有4個字符的?維字符數(shù)組的首地址
D)aa數(shù)組的兩個元素中各自存放了字符區(qū)和A的地址
18、下列程序的輸出結(jié)果是()。
char*pl="abcd",*p2="ABCD",str[50]="xyz";
strcpy(str+2,slrcat(p1+2,p2+1));
printf(n%s",str);
A.xyabcAB
B.abcABz
C.ABabcz
D.xycdBCD
19、下列程序的輸出結(jié)果是()o
inta[5]={2,4,6,8,10},*P,**k;
p=a;k=&p;
printf("%d",*(p++));
printf("%d\n,',**k);
A.44
B.22
C.24
D.46
20、不能把字符串:Hello!賦給數(shù)組b的語句是()o
A.charb[
B.charb[10];b="Hello!";
C.charb|10];strcpy(b,"Hello!");
D.charb[10]="Hello!n;
三、讀程序題
1、floatf=3.1415927;
printf("%f,%5.4f,%3.3r‘,f,f,f);
則程序的輸出結(jié)果是
2、intx=6,y=7;
printf(u%d/\x++);
printf("%d\n”,++y);
程序的輸出結(jié)果是o
3、a=3;
a+=(a<l)?a:l;
primf("%d”,a);
結(jié)果是o
4、for(a=1,b=1;a<=100;a++)
{if(b>=20)break;
if(b%3==l)
{b+=3;continue;)
b-=5;}
程序的輸出結(jié)果a的值為o
5、inty=l,x,*p,a[]={2,4,6,8,10};
p=&a[l];
for(x=0;x<3;x++)
y+=*(p+x);
primf("%d\n”,y);
程序的輸出結(jié)果y的值是o
四、程序填空題
1、從鍵盤上輸入10個數(shù),求其平均值。
main()
(inti;
floatf,sum;
for(i=l,sum=0.0;i<ll;i++)
printf(uaverage=%f\n,,,sum/10);}
2、以下程序是建立一個名為myfile的文件,并把從鍵盤輸入的字符存入該文件,當(dāng)鍵盤I:輸入結(jié)束時
關(guān)閉該文件。
#include
main()
{FILE*fp;
charc;
fp=;
do(
c=getchar();
fputs(c,fp);
}while(c!=EOF);
____________)
3、以下程序的功能是:從鍵盤上輸入若干個學(xué)生的成績,統(tǒng)計并輸出最高成績和最低成績,當(dāng)輸入負數(shù)
時結(jié)束輸入.請?zhí)羁?
main()
(floatx,amax,amin;
scanfC'%f',&x);
amax=x;amin=x;
whilc()
{if(x>amax)amax=x;
if()amin=x;
scanf("%f",&x);)
printf("\namax=%f\namin=%f\n",amax5amin);)
五、編程題
1.三個整數(shù)a、b、c,由鍵盤輸入,輸出其中最大的一個數(shù)。
2.輸出1900~2000年中所有的閏年。每輸出3個年號換一行。(判斷閏年的條件為下面二者之一:能被
4整除,但不能被100整除?;蛘吣鼙?00整除。)
3.請編一個函數(shù)intfun(inta),它的功能是:判斷a是否是素數(shù),若a是素數(shù),返回1;若不是素數(shù),返
回0。A的值由主函數(shù)從鍵盤讀入。
4.有N個學(xué)生,每個學(xué)生的信息包括學(xué)號、性別、姓名、四門課的成績,從鍵盤上輸入N個學(xué)生的信
息,要求輸出總平均成績最高的學(xué)生信息,包括學(xué)號、性別、姓名和平均成績。
參考答案
-、填空題
⑴整型、實型、字符型。⑵int,2,-32768-+32767
(3)1111111111011101(4)-112(5)14,'m"
(6)“a”是字符串常量,而3是字符常量。
(7)存放地址值的變量或常量,或者答地址。
⑻取運算對象的地址。取指針變量所指的內(nèi)容。(8)a=l,b=3,c=2
二、選擇題
1、C2、C3、D4、B5、D
6、A7、C8、C9、D10、A
11、C12、C13、D14、C15、B
16、C17、D18、D19、C20、B
三、閱讀程序題
(1)3.141593,3.1416,3.142(2)6,8(3)4(4)22(5)19
四、程序填空題
1scanf(u%f\&f);sum+=f;
2^fopen("myfile”,w)fclose(fp);
3、x>=0.0x<=amin
五、編程題
1main()
{inta,b,c;
printf(“請輸入三個整數(shù):”);
scanf("%d,%d,%d",&a,&b,&c);
if(aif(belseprintf(44max=%d\n,\b);
elseif(aelseprintf(umax=%d\n,\a);)
2、#include,,stdio.hM
main()
{intI,n;
for(n=0,I=l900:I<=2000;I++)
{if^l%4=0&&l0!=0||I@0=0)
(printfC4%d”,I);n++;}
if(n%3==0)
prinlf("\n");}})
3、#include”stdio.h"
intfun(inta)
{intI;
if(a==2)return1;1=2;
while((a%I)!=0&&l<=sqrt((float)a))
I++;
if(a%I==O)
{printf(u%disnotaprime!*',a);
return0;)
printf(M%disaprime!M,a);
return1;}
main()
(intx;
printf(44\npleaseenteranumber:'?);
scanf("%d”,&x);
printf("%d\n'',fun(x));}
4、#includenstdio.h"
#defineN3
structstudent
{longstu_num;charsex;
charname[15];intscore[4];
floataverage;};
main()
{intI,j,index;floatsum,max;
structstudentstuarr[NJ;
for(I=0;I{printf("pleaseinput%dstudentinformation:\nH,I+1);
scanf("%ld,%cT%s'\&stuaiT[I].stu_num,&stuarr[I].sex,stuarr[I].namc);
for(j=0;j<4;j++)
scanf("%d",&stuarr[I].score[j]);}
for(I=0;I{sum=0.0;
for(j=0;j<4;j++)
sum+=stuarr[I].score[j];
stuarr[I].average=sum/4.0;)
max=stuarr[O].average;
index=0;
for(I=l;Iif(stuarr[I].average>max)
{max=stuair[I].average;
index=I;)
primf("總平均成績最高的學(xué)生信息是學(xué)號=%ld,性別二%c,姓名=%s,平均成績=%4.1f\n”,stuarr[index].sni_
num,stuarr|index].sex?stuarr|index).name,stuarr|index].average);
)
一、填空題
I、c語言中普通整型變量的類型說明符為,在內(nèi)存中占字節(jié),有符號普通整型的數(shù)據(jù)范圍
是.
2、C語言中基本的數(shù)據(jù)類型有;、、。
3、設(shè)整型變量n的值為2,執(zhí)行語句“n+=n-=n*n”后,n的值是。
4、共用體和結(jié)構(gòu)體的定義格式類似,不同點是。
5、有如下輸入語句:$?211長匕=%(1由=%<1£=%<1”.&&&1>,&<:);為使變量2的值為1,b的值為3,c的值為
2,從鍵盤輸入數(shù)據(jù)的正確形式應(yīng)是.
6、有語句:charA[]=("!amastudent");該字符串的長度是?A[3]=。
7、符號”a"和'a,的區(qū)別。
8、下列程序的輸出結(jié)果是。
intast(intx,inty,int*cp,int*dp)
{*cp=x+y;*dp=x-y;)
main()
{inta=4,b=3,c,d;
ast(a,b,&c,&d);
printf(n%d,%d/nn,c,d);}
一?、西洋題
1、以下選項中屬于C語言的數(shù)據(jù)類型是()。
A.復(fù)合型
B.雙精度型
C.邏輯型
D.集合型
2、以下說法中正確的是()。
A.C語言程序總是從第一個的函數(shù)開始執(zhí)行
B.在C語言程序中,要調(diào)用的函數(shù)必須在main。函數(shù)中定義
C.C語言程序總是從main()函數(shù)開始執(zhí)行
D.C語言程序中的main()函數(shù)必須放在程序的開始部分
3、選出下列標識符中不是合法的標識符的是()。
A.hot_do
B.catl
C._pri
D.2ab
4、下列描述中不正確的是()。
A、字符型數(shù)組中可能存放字符串。
B、可以對字符型數(shù)組進行整體輸入、輸出。
C、可以對整型數(shù)組進行整體輸入、輸出。
D、不能在賦值語句中通過賦值運算符?”對字符型數(shù)組進行整體賦值。
5、若已定義:inta[9],*p=a;并在以后的語句中未改變p的值,不能表示a【l]地址的表達式為()。
A.p+1
B.a+1
C.a++
D.++p
6、設(shè)有如下定義:intx=10,y=3,z;
則語句printf("%d\n”,z=(x%y,x/y));的輸出結(jié)果是()。
A.1
B.0
C.4
D.3
7、定義如下變量和數(shù)組:inti,x[3][3]=[1,234,5,6,7,8,9};則下面語句for(i=0;iv3;i++)printf(”%d”,x[i][2
-il);的輸出結(jié)果是()
A.159
B.147
C.357
D.369
8、讀出以下語句的輸出結(jié)果是()o
intx=IO,y=lO;
printf(4€%d%d\n”,Xr-y);
A.1010
B.99
C.910
D.109
9、兩次運行卜.面的程序,如果從鍵盤上分別輸入6和3,則輸出結(jié)果是()。
if(x++>5)printf("%d”,x);
elseprintf("%d\n”.x--);
A.7和5
B.6和3
C.7和4
D.6和4
10、設(shè)有如下定義:char*aa[2]={“abcd”,“ABCD”};則以下說法中正確的是()。
A)aa數(shù)組成元素的值分別是“abed”和ABCD"
B)aa是指針變量,它指向含有兩個數(shù)組元素的字符型一維數(shù)組
C)aa數(shù)組的兩個元素分別存放的是含有4個字符的一維字符數(shù)組的首地址
D)aa數(shù)組的兩個元素中各自存放了字符才和A的地址
11、以下語句的輸出結(jié)果是()。
inta=-1,b=4,k;
k=(++a<0)&&!(b--<=0);
printf(u%d,%d,%d\n",k,a,b);
A.1,0,4
B.1,0,3
C.0,0,3
D.0,0,4
12、下列程序的輸出結(jié)果是()。
char*pl="abcd'\*p2="ABCD",str[50]=,'xyzM;
strcpy(str+2,strcat(p1+2,p2+1));
printf(,'%s,',str);
A.xyabcAB
B.abcABz
C.ABabcz
D.xycdBCD
13、執(zhí)行下面的程序后,a的值是()o
#defineSQR(X)X*X
main()
(inta=10,k=2,m=1;
a/=SQR(k+m)/SQR(k+m);
printf(u%d\n",a);)
A.10
B.1
C.9
D.0
14、設(shè)A為存放(短)整型的一維數(shù)組,如果A的首地址為P,那么A中第i個元素的地址為()。
A.P+i*2
B.P+(i-l)*2
C.P+(i-l)
D.P+i
15、下列程序執(zhí)行后輸出的結(jié)果是()。
intd=l;
fun(intp)
{intd=5;
d+=p++;
printf(,'%d,",d);}
main()
{inta=3;
fun(a);
d+=a++;
printf("%d\n",d);)
A.8,4
B.9,6
C.9,4
D.8,5
16、表達式:10!=9的值是()。
A.true
B.非零值
C.0
D.1
17、若有說明:inti,j=7,*p=&i;,則與i=j;等價的語句是()o
A.i=*p;
B.*p=*&j;
C.i=&j;
D.i=**p;
18、不能把字符串:Hello!賦給數(shù)組b的語句是()o
A.charb[10]={H;e',T"o','!'};
B.charb[10];b="Hello!";
C.charb(10];strcpy(b,"Hello!)
D.charb[10]="Hello!”;
19、在C程序中有如下語句:char*func(intx,inty);它是()。
A.對函數(shù)func的定義。
B.對函數(shù)func的調(diào)用。
C.對函數(shù)func的原型說明。
D.不合法的。
20、以下程序的輸出結(jié)果是()o
charstr[15]="heHo!'';
prinlf("%d\n”,slrlen(slr));
A.15
B.14
C.7
D.6
三、閱讀程序題
1intx=6,y=7;
printf(u%d,,,,x++);printf("%d\n'',++y);
程序的輸出結(jié)果是o
2、floatf=3.1415927;
primf("%f,%5.4f,%3.3f',f,f,f);
則程序的輸出結(jié)果是1
3、a=3;
a+=(a<I)?a:1;printf(<<%d,,,a);
結(jié)果是o
4、main()
{inta[5]={2,4,6,8,10},*P,**k;
p=a;k=&p;
printf("%d,",*(p++));
printf("%d\n",**k);}
程序的輸出結(jié)果是o
5、main()
{inta,b;
for(a=1,b=1;a<=100;a++)
(if(b>=20)break;
if(b%3==l)
{b+=3;continue;)
b-=5;}}
程序的輸出結(jié)果a的值為
四、程序填空題
1、求主次對角線之和。
main()
{staticinta[][3]={9,7,5,1,2,4,6.8);
intI,j,sl=0,s2=0;
for(I=0;l<3;I++)
for(j=0;j<3;j++)
{if()
sl=sl+a[I][j];
if()
s2=s2+a[I][j];
I
printf(<<%d\n%d\n,,,sl,s2);
)
2、從鍵盤上輸入10個數(shù),求其平均值。
main()
(inti;
floatf,sum;
for(i=l,sum=0.0;i<ll;i++)
printf(t4average=%f\n,,,sum/10);
I
3、以下程序是建立個名為myfile的文件,并把從鍵盤輸入的字符存入該文件,當(dāng)鍵盤上輸入結(jié)束時
關(guān)閉該文件。
#include
main()
FILE*fp:
charc;
fp=;
do
I
c=getchar();
fputs(c,fp);
}while(c!=EOF);
五、編程題
1、三個整數(shù)a、b、c,由鍵盤輸入,輸出其中最大的數(shù)。
2、從鍵盤輸入的10個整數(shù)中,找出第?個能被7整除的數(shù)。若找到,打印此數(shù)后退出循環(huán);若未找到,
打印“notexist”。
3、有一個?維數(shù)組,內(nèi)放10個學(xué)生成績,寫一個函數(shù),求出平均分。
4,有N個學(xué)生,每個學(xué)生的信息包括學(xué)號、性別、姓名、四門課的成績,從鍵盤上輸入N個學(xué)生的
信息,要求輸出總平均成績最高的學(xué)生信息,包括學(xué)號、性別、姓名和平均成績。
參考答案
一、填空題
1、int,2個字節(jié),-32768-+32767。
2、整型、實型、字符型。
3、-4o
4、結(jié)構(gòu)體的成員占有各自不同的空間,而共用體的各成員放到同一存儲空間。
5、a=l,b=3,c=2
7、是字符串常量,而H是字符常量。
8、7,1。
二、選擇題
1、B2、C3、D4、C5、C
6、D7、C8、D9、C10、D
11、D12、D13、B14、B15、A
16、D17、B18、B19、C20、D
三、閱讀程序題
(1)6,8(2)3.141593,3.1416,3.142(3)4(4)2,4(5)8
四、程序填空題
1、I==jI+j==22、scanf(u%f\&f);sum+=f;
3、fopcn(t4myfile,,,w)fclose(fp);
五、編程題
1、main()
{inta,b,c;
printf(“請輸入三個整數(shù):");scanf("%d,%d,%d'',&a,&b,&c);
if(aif(belscpnntf(i*max=%d\n,,,b);
elseif(aelseprintf(umax=%d\n,,,a);}
2、#include,,stdio.hM
main()
{intI,a;
for(I=l;I<=10;I++)
(scanf("%d”,&a);
{if(a%7==0)
printf(u%d,\a);break;}}
if(I==ll)
printf(44notexistv);}
3、floataverage(floatarray[],intn)
{intI;
floataver,sum=array[O];
for(I=l;Isum=sum+array[I];
aver=sum/n;
return(aver);)
niain()
{floatave,score[10];
intI;
for(I=0;I<10;I++)
scanf("%f\&score[I]);
ave=average(score,10);
printf("%f\n",ave);}
4、#include"stdio.h"
#defineN3
structstudent
{longstu_num;
charsex;
charnamc|15];
intscore[4];
floataverage;);
main()
{intLj,index;
floatsumjnax;
structstudentstuarr[NJ;
for(I=0;I{printf(npleaseinput%dstudentinformation:\n",I+l);
scanf(',%ld,%c,%s",&stuarr[I].stu_num,&stuarr[I|.sex,stuarr[I].namc);
for(j=0;j<4;j++)
scanf("%d'1,&stuarr[I].scorelj]);}
for(I=0;I)sum=0.0:
for(j=0;j<4;j++)
sum+=stuarr[I].scorelj];
stuarr[I].avcrage=sum/4.0;)
max=stuarr[O].average;
index=0;
for(I=l;Iif(stuarr[I].average>max)
(max=stuarr[I].average;index=I;}
printf("總平均成績最高的學(xué)生信息是學(xué)號=%ld,性別=%c,姓名=%s,平均成績=%4.1外"產(chǎn)8311411(1?乂]601_
num,stuarr[index].sex,stuaiT[index].name,stuarr[index].average);}
一.單項選擇題
1.設(shè)ini乂=1,丫=1;表達式(以++IIy-)的值是
A.0
B.1
C.2
D.-1
2.main()
{intn;
(n=6*4,n+6),n*2;
printf(t4n=%d\n,\n);
}此程序的輸出結(jié)果是.
A.30
B.24
C.60
D.48
3.若有如下定義,則是對數(shù)組元素的正確的引用。
inta[10],*p;
p=a;p=a;p=a;p=a;
A.*&a[10]
B.a[ll]
C.*(p+10)
D.*p
4.設(shè)整型變量n的值為2,執(zhí)行語句“n+=n?=n*n;"后,n的值是
A.0
B.4
C.-4
D.2
5.以下不能正確定義二維數(shù)組的語句是
A.inia[2][2]={{l},{2});
B.inta[][2]={1,2,3,41;
C.inta[2][2]={{1),23);
D.inta[2][]={{1,2)43,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;elset=u;
D.t=s;if(u)t=u;
7.下列程序段的輸出結(jié)果是。
voidmain()
{intk;
for(k=l;k<5;k++)
(if(k%2!=0)
printf("#,,);
else
printfT*");}
)
A.#*#*
B.*#*#
c.##
D.以上都不對
8.設(shè)變量定義為inta[3]={l,4,7},*p=&a[2],則*p的值是(35)。
A.&a[2]
B.4
C.7
D.1
9.能正確表示a和b同時為正或同時為負的邏輯表達式是.
A.a>=0llb>=0)&&(a<0llb<0)
B.(a>=0&&b>=0)&&(a<0&&b<0)
C.(a+b>0)&&(a+b<=0)
D.a*b>0
IOC語言中,合法的字符型常數(shù)是o
AJA'
B.“A”
C.65
D.A
11.設(shè)有數(shù)組定義:charan*ay[]FChina”;則數(shù)組所占的空間是.
A.4個字節(jié)
B.5個字節(jié)
C.6個字節(jié)
D.7個字節(jié)
12.若變量c為char類型,能正確判斷出c為小寫字母的表達式是
A.,a,<=c<=,z,
B.(c>='a')II(cv='z')
C.('a'v=c)and('z'>=c)
D.(c>='a')&&(cv='z')
13.設(shè)有定義:longx=-123456L;則以下能夠正確輸出變量x值的語句是一
A.printf(ux=%d\n,\x)
B.printf(ux=%ld\n'\x)
C.printf(<4x=l\nM,x)
D.printf(t<x=%LD\n,,,x);
14.下列關(guān)于指針定義的描述,是錯誤的。
A.指針是?種變量,該變量用來存放某個變量的地址值的。
B.指針變量的類型與它所指向的變量類型一致。
C.指針變量的命名規(guī)則與標識符相同.
D.在定義指針時,標識符前的“*”號表示后面的指針變量所指向的內(nèi)容。
15.已知:intx;inty[10];下列___.是合法的。
A.&x
B.&(x+3)
C.&5
D.&y
16.指出下面正確的輸入語句o
A.scanf(**a=b=%d,\&a,&b);
B.scanf("%d,%d”,&a.&b);
C.scanf("%c”,c);
D.scanf("%f%d\nM,&f);
17.C語言中以追加方式打開一個文件應(yīng)選擇參數(shù)。
A."r”
B.“w”
C.'Tb"
D."a”
18.Break語句的正確的用法是()。
A.無論在任何情況下,都中斷程序的執(zhí)行,退出到系統(tǒng)下一層。
B.在多重循環(huán)中,只能退出最靠近的那一層循環(huán)語句。
C.跳出多重循環(huán)。
D.只能修改控制變量。
19.為表示關(guān)系x>y>z,應(yīng)使用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.OXffa
D.x2a2
21.在函數(shù)中默認存儲類型說明符的變量應(yīng)該是存儲類型。
A.內(nèi)部靜態(tài)
B.外部
C.自動
D.寄存器
二.判斷題
1.C語言源程序文件通過了編譯、連接之后,生成一個后綴為.EXE的文件。()
2.在C程序中,函數(shù)既可以嵌套定義,也可以嵌套調(diào)用。()
3.在C程序中,APH和aph代表不同的變量。()
4.表達式0195是一個八進制整數(shù)。()
5.表達式_ya是不合法的C語言標識符。()
6.C程序總是從main()函數(shù)的第條語句開始執(zhí)行的。()
7.A-=7等價于a=a-7。()
8.利用fclose函數(shù)關(guān)閉已打開的文件。()
9.數(shù)組名可以作為參數(shù)進行傳遞。()
10.執(zhí)行printf("%x”,12345);,輸出12345。()
三、填空
1.C語言的預(yù)處理語句以開頭。
2.表達式7+8>2&&25%5的結(jié)果是。
3.下列程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結(jié)束循環(huán)。
intn=0,ch;
ch=getchar();
while()
{if()n++;
c=getchar();}
4.C語言中putchar(c)函數(shù)的功能是。
5.ini*p的含義是o
6.定義fp為文件型指針變量的定義方法為。
7.數(shù)組inta[3][4];共定義了個數(shù)組元素。
四、讀出程序。
1.改正下列程序中不正確的語句。
main()
{inta=8,b=l;
a=a+b;
b=a*b;
printf("%d,%d",a,b);}
2.寫出下列程序的運行結(jié)果。
fun(inta,intb)
{if(a>b)return(a);
Elsereturn(b);)
main()
{intx=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
printf(u%d\n,\r);)
3.改正下列程序中不正確的語句。
main()
{intn;
floats=1.0;
for(n=10;n>l;n--)
s=s+l/n;
printf("%6.1f\n”,s);)
4.寫出下列程序的運行結(jié)果。
main()
{intn;
For(n=3;n<=10;n++)
{if(n%5==0)break;
Printf("%d”,n);))
5.寫出下列程序的運行結(jié)果。
#include“sldio.h"
main()
{int={123,-4,5};
intm,n,*p;
p=&a[O];p=&a[O];
m=*(p+2);
n=*(p+4);
printf(u%d%d%dM,*p,m,n);)
五.編程序
1.編程計算下列表達式:s=l!+2!+3!+4!+……+10!
2.從鍵盤I:輸入a與n的值,計算sum=a+aa+aaa+aaaa+..(共n項)的和。例a=2,n=4,貝ijsum=2+22
+222+2222o
3.求3X3矩陣的主對角線元素之和。
4.從鍵盤上輸入10個數(shù)存入?維數(shù)組中,求這10數(shù)中的最大值與最小值并輸出。
5.從鍵盤上輸入若干個字符存入文件write.txl中,遇到回車鍵輸入結(jié)束。(用“\n”表示回車鍵)
參考答案
?.單項選擇題
1B2B3D4C5D
6C7A8C9D10A
11C12D13B14D15A
16BI7D18B19A20C21C
二.判斷題
N2X3<4X5X6d748、W10X
三、填空
1#號
20
3ch!=’\n'ch>=,0,&&chv='9'
4將變量c中的字符顯示到屏幕ko
5指針變量p為整型
6FILE*fp
712
四、讀出程序。
1printf("%d,%d",&a,&b);212
3s=s+1.0/n
4.34
5135
五.編程序
1.
#include"stdio.h"
main()
{longs=O,t=l;
inti;
for(i=l;i<=10;i++)
{t=t*i;
s=s+t;
printf(n%ld",s);}
2
#include"stdio.h"
main()
{inta,ncount=l,sn=0,tn=0;
scanf("%d%d';&a,&n);
while(count<=n)
(tn=tn+a;
sn=sn+tn;
a=a*10;
++count;}
printf(”%d”,sn);)
3.
#include"stdio.h"
main()
{inta[3][3],ij,s=O;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j)
s=s+a[i][j];
printf(n%d",s);}
4.
#includc"stdio.h"
main()
{inta[10],max,min;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
for(i=l;i<10;i++)
if(a[i]>max)
max=a[i];
min=a[O];
for(i=l;i<10;i++)
min=a[i];
printf("%d%dn,max,min):)
5.
#include"stdio.h"
main()
(intc;
FILE*fp;
fp=open(”write.txt","w");
c=getchar();
while(c!=,\n,)
{fputc(c,fp);
c=gctchar():
}
fclose();)
一.單項選擇題
1.運算符的優(yōu)先級最高。
A.[]
B.+=
C.?:
D.++
2.main()
{intn;(n=6*4,n+6),n*2;printf(<tn=%d\n,,,n);)
此程序的輸出結(jié)果是.
A.30
B.24
C.60
D.48
3.若有如下定義,則是對數(shù)組元素的正確的引用。.
inta[10],*p;p=a;
A.*&a[10]
B.a[ll]
C.*(p+ll)
D.*p*p*p
4.設(shè)整型變量n的值為2,執(zhí)行語句“n+=n-=n*n;”后,n的值是
A.0
B.4
C.-4
D.2
5.各種基本數(shù)據(jù)類型的存貯空間正確的長度排列為
A.Char
C.Char
6.下面的變量說明中是正確的。
A.char:a,b.c;
B.chara;b;c;
C.chara,b,c;
D.chara,b,c
7.表達式y(tǒng)=(13>12?15:6>7?8:9)的值為.
A9
B8
C15
D.1
8.若x=5,y=3則y*=x+5;y的值為.
A.10
B.20
C.15
D.30
9.能正確發(fā)示a和b同時為正或同時為負的邏輯表達式是
A.a>=0llb>=0)&&(a<0llb<0)
B.(a>=0&&b>=0)&&(a<0&&b<0)
C.(a+b>0)&&(a+b<=0)
D.a*b>0
10.C語言中,合法的字符型常數(shù)是o
A.'A'
B."A”
C.65
D.A
11.已有定義intx=3,y=4,z=5;則表達式“!(x+y)+z-l&&y+z/2”的值是一
A.6
B.O
C.2
D.l
12.若變量c為char類型,能正確判斷出c為小寫字母的表達式是
A.,a,<=c<=,z,
B.(c>='a')II(cv='z')
C.('a'v二c)and('z'>=c)
D.(c>='a')&&(c<='z')
13.設(shè)有定義:longx=-123456L;則以下能夠正確輸出變量x值的語句是
A.printf(ux=%d\n,\x)
B.printf(ux=%ld\n'\x)
C.printf(ux=l\n”,x)
C.printf(ux=%D\n,,,x);
14.從循環(huán)體內(nèi)某?層跳出,繼續(xù)執(zhí)行循環(huán)外的語句是:。
A.break語句
B.return語句
C.continue語句
D.空語句。
15.C語言用表示邏輯“真”值。
A.true
B.t或y
C.非零整型值
D.整型值0
16.為了避免嵌套的條件分支語句if—else的二義性,C語言規(guī)定:C程序中的else總是與組成配
對關(guān)系。
A.縮排位置相同的if
B.在其之前未配對的if
C.在其之前未配對的最近的if
D.同一行上的if
17.在函數(shù)中默認存儲類型說明符的變量應(yīng)該是存儲類型。
A.內(nèi)部靜態(tài)
B.外部
C.自動
D.寄存器
18.C語言中以只讀方式打開一個文件應(yīng)選擇參數(shù)。
AW
B."w”
C.“rb”
D.“a”
19.設(shè)有數(shù)組定義:chararrayU="student”;則數(shù)組所占的存貯空間為一
A.6個字節(jié)
B.7個字節(jié)
C.8個字節(jié)
D.9個字節(jié)
20.根據(jù)C語言的語法規(guī)則,下列個是不合法標識符。
A.do
B.Name
C.R5
D._exam
二.判斷題
1.C語言源程序文件通過了編譯、連接之后,生成個后綴為.EXE的文件。()
2.在C程序中,函數(shù)既可以嵌套定義,也可以嵌套調(diào)用。()
3.在C程序中.APH和aph代表不同的變量。()
4.表達式0195是?個八進制整數(shù)。()
5continue語句的作用是結(jié)束本次循環(huán)。()
6.Extern變量的生命期是整個程序執(zhí)行期。()
7.C語言中字符串的結(jié)束符是'\0'。()
8.利用fclose函數(shù)關(guān)閉已打開的文件。()。
9.C程序總是從main()函數(shù)的第一條語句開始執(zhí)行的。()
10.數(shù)組名代發(fā)數(shù)組的首地址。()
三.填空
1.C語言的預(yù)處理語句以開頭。
2.表達式7+10>2&&25%5的結(jié)果是。
3.下列程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結(jié)束循環(huán)。
Intn=0,ch;Ch=getchar();
While()
{if()n++;c=getchar();)
4.C語言中g(shù)etchar()函數(shù)的功能是________________________________
5.int*p的含義是.
6.定義fp為文件型指針變量的定義方法為。
7.數(shù)組inta[3][3];共定義了個數(shù)組元素。
四、讀程序。
1.改正下列程序中不正確的語句。
main()
{inta;
scanf(u%d,\a);if(a=1)printf(t<One\n,>);)
2.寫出下列程序的運行結(jié)果。
fun(inta,intb)
(if(a>b)return(a);
Elsereturn(b);}
main()
{intx=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);printf("%d\n",r);)
3.改正下列程序中不正確的語句。
main()
{intn;
floats=1.0;
for(n=10;n>l;n--)
s=s+l/n;
printf(u%6.1f\nn,s);}
4.寫出下列程序的運行結(jié)果。
main()
{intn;
For(n=3;n<=10;n++)
{if(n%6==0)break;Printf("%d”,n);}}
5.寫出下列程序的運行結(jié)果。
#include"stdio.h"
Main()
{int叫={1,2,3,45);
intm,n,*p;p=&a[O];m=*(p+l);n=*(p+4);
printf(u%d%d%d”,*p,m,n);)
五.編程
1.編程計算下列表達式:s=n!(n從鍵盤上輸入)
2.輸出1—100之間不能被12整除的數(shù)。
3.從鍵盤上輸出10個整數(shù)存入?維數(shù)組中,按由大到小的順序輸出。
4.從鍵盤上輸入9個數(shù),按3行3列的格式輸出。
5.編程將文件read.txt中的字符讀出顯示到屏幕上。
參考答案
一.單項選擇題
1A2B3D4C5C
6C7C8D9D10A
HD12D13B14A15C
16C17A18A19C20A
二.判斷題
Z2X374X57
6<7<879yl10^
三、填空
1#號
20
3ch!=’\n'ch>='O'&&chv='9'
4從鍵盤上輸入一個字符。
5指針變量p為整型
6FILE*fp
79
四、讀出程序。
1primf(“%d,”,&a);if(a==l)
212
3s=s+1.0/n
4.345
5125
五.編程序
1.
#includc"stdio.h"
main()
{longt=l;
inti;
for(i=l;i<=10;i++)
t=t*i;
printf("%ld",t);}
2
#include"stdio.h"
niain()
{inti;
for(i=l;i<=100;i++)
{if(i=0)
continue;
printf("%d”,i);
3.
#includc"stdio.h"
main()
{inti,j,a[10];
for(i=l;i<=10;i++)
scanf(H%d",&a[i]);
for(i=0;i<9=;i++)
for(j=9;j>i;j-)
if(a|j-l]{t=a|j-l];
a[j-l]=a[j];
a[j]=t;}
for(i=0;i<10;i++)
printf(n%d",a[i]);
4.
#include"stdio.h"
main()
{inta[3][3],ij,s=O;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf(t<%d);
primf("\n”);
5.
#includeHstdio.h"
main()
{intc;
FILE*fp;
fp=open("read.txt","r");
c=fgetc(fp);
while(c!=,\n')
(putchar(c);
c=fgetcr(fp);
))
fclose();}
一、填空
1.實型變量的類型說明符有:、O
2.表達式7+8>2&&25%5的結(jié)果是。
3.下列程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結(jié)束循環(huán)。
Intn=0,ch;
Ch=getchar();
While())))
{if()n++;
4.putchar(c)函數(shù)的功能是是是。
5int*p的含義是是是是o
6.C語言中數(shù)組的下標下限為o
7.定義fp為文件型指針變量的定義方法為。
8.數(shù)組inta[3][4];共定義了個數(shù)組元素。
二、單項選擇題
1、下列屬于整型常量的是o
A、12
B、12.0
C、-12.0
D、10E10
2、不屬于字符型常量的是。
AJA'
B、W
C、“A”
D、b'
3、下列表達式為關(guān)系表達式的為。(其中a為一整型變量)
A.3+4*5
B、a=10
C>a>0?a:-a
D、a=l
4、下面不正確的賦值語句是。
A.a=a+1
B、a==b
C、a+=b
D、a=l
5、下列對數(shù)組定義不正確的語句是。
A.intm[5];
B、charb[]={
C、inia[10]={l,6,M};
D、charp[];
6、若有以下定義,則和是對數(shù)組元素的正確引用。
inta[5],*p=a
A.*&a[6]
B、*p+8
C、*(a+2)
D、*p
7、執(zhí)行下列語句后,a的值是。
inta=8;
a+=a-=a*a;
A.-240
B、64
C、112
D、-112
8.指出下面正確的輸入語句()o
A.scanf(t4a=b=%d,\&a.&b);
B.scanf("%d,%d”,&a,&b);
C.scanf("%c”,c);
D.scanf("%f\n",&f);
9.下面的變量說明中正確的是
A.int:a,b,c;
B.inta;b;c;
C.inta,b,c
D.inta,b,c;
10.C語言用()表示邏輯“真”
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 衛(wèi)生間清潔規(guī)章制度
- 衛(wèi)生院診室管理制度
- 一手房門店衛(wèi)生管理制度
- 衛(wèi)生院法治宣傳教育制度
- 衛(wèi)生院鼠疫疫情報告制度
- 小區(qū)衛(wèi)生站管理制度細則
- 清理衛(wèi)生間管理制度
- 學(xué)校安全衛(wèi)生制度
- 衛(wèi)生室補助公示制度
- 食堂更衣室衛(wèi)生管理制度
- 5年(2021-2025)高考1年模擬歷史真題分類匯編選擇題專題01 中國古代的政治制度演進(重慶專用)(原卷版)
- 浙教版初中科學(xué)復(fù)習(xí)課《杠桿與滑輪專題》共24張課件
- 機關(guān)單位普通密碼設(shè)備管理制度
- 支氣管哮喘防治指南(2024年版)解讀
- 【指導(dǎo)規(guī)則】央企控股上市公司ESG專項報告參考指標體系
- 土地管理學(xué)課件
- 村莊規(guī)劃搬遷方案
- 融資租賃實際利率計算表
- 民爆物品倉庫安全操作規(guī)程
- von frey絲K值表完整版
- 勾股定理復(fù)習(xí)導(dǎo)學(xué)案
評論
0/150
提交評論