float型y取值在1.0c语言表达式,2011年全国计算机二级C语言模拟试题及答案(14)...
一、選擇題(1—14每題1分,15-18每題1.5分,共20分)1.可選作用戶標(biāo)識符的一組標(biāo)識符是()
AvoidBc5_b8CForD3a
Define_53-abDO
WORDIFCaseint
2.在C語言中,非法的八進(jìn)制是:()
A.018
B.016
C.017
D.0257
3.在TC中,基本inta[4]類型變量所占的字節(jié)數(shù)是()
A.1
B.2
C.4
D.8
4.設(shè)x,y,z,k都是int型變量,則執(zhí)行表達(dá)式:x=(y=4,z=16,k=32)后,x的值為()
A.4
B.16
C.32
D.52
5.設(shè)int型變量a為5,使b不為2的表達(dá)式是()
A.b=a/2
B.b=6-(-a)
C.b=a%2
D.b=a>3?2:1
6.一個C程序的執(zhí)行是從()
A.main()函數(shù)開始,直到main()函數(shù)結(jié)束。
B.第一個函數(shù)開始,最后一個函數(shù)結(jié)束。
C.第一個語句開始,最后一個語句結(jié)束。
D.main()函數(shù)開始,直到最后一個函數(shù)。
7.C語言中用于結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是()
A.if、switch、break
B.ifwhilefor
C.whiledo-whilefor
D.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
8.以下敘述中不正確的是()
A.在不同的函數(shù)中可以使用相同名字的變量。
B.函數(shù)中的形式參數(shù)是局部變量。
C.在一個函數(shù)內(nèi)的符合語句中定義變量在本函數(shù)范圍內(nèi)有效。
D.在一個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效。
9.若k為int類型,且k的值為3,執(zhí)行語句k+=k-=k*k后,k的值為()
A.-3
B.6
C.-9
D.-12
10.有以下程序
main()
{intx=3,y=3,z=3;
printf(“%d%d\n”(++x,y++),++z);}輸出結(jié)果()
A.33
B.34
C.42
D.43
11.若有定義和語句:inta=21,b=021;printf(“%x,%d\n”,a,b);輸出結(jié)果()
A.17,15
B.16,18
C.17,19
D.15,17
12.已有定義語句:intx=3,y=4,z=5;則值為0的表達(dá)式是()
A.x>y++
B.x<=++y
C.x!=y+z>y-z
D.y%z>=y-z
13.能正確表達(dá)邏輯關(guān)系“a≥10或a≤0”的C語言表達(dá)式是()
A.a>=10ora<=0
B.a>=10||a<=0
C.a>=10&&a<=0
D.a>=10|a<=0
14.n為整型常量,且n=2;while(n--);printf(“%d”,n);執(zhí)行后的結(jié)果是:()
A.2
B.1
C.-1
D.0
15.若有以下定義和賦值double*q,a=5.5;int*p,i=1;double*q,a=5.5;int*p,i=1;p=&i;q=&a;以下對賦值語句敘述錯誤的是()。
A)*p=*q變i中的值。
B)p=oxffd0;將改變p的值,使p指向地址為ffd0的存儲單元。
C)*q=*p;等同于a=i;
D)*p=*q;是取q所指變量的值放在p所指的存儲單元
16.若有以下定義語句doublea[8],*p=a;inti=5;對數(shù)組元素錯誤的引用是()
A)*a
B)*a[5]
C)*(p+i)
D)p[8]
17.以下選項中不能使指針正確指向字符串的是()
A)char*ch;*ch=“hello”
B)char*ch=“hello”
C)char*ch=“hello”;ch=“bye”
D)char*ch”;ch=“hello”
18.若有以下說明和定義語句:unionuti{intn;doubleg;charch[9];}
structsrt{floatxy;unionutiuv;}aa;則變量aa所占內(nèi)存的字節(jié)數(shù)是()
A)9
B)8
C)13
D)17
二、填空題(每空1分,共12分)1.C語言源程序文件的擴展名是(1),經(jīng)過編譯后,生成文件的擴展名是(2),經(jīng)過連接后,生成文件的擴展名是(3)。
2.把a,b定義成長整型變量的定義語句是(4)
3.設(shè)x和y均為整型變量,且x=3,y=2,則1.0*x/y表達(dá)式的值為(5)
4.已有定義:floatx=5.5;則表達(dá)式:x=(int)x+2的值為(6)
5.已有定義:intx=0,y=0;則表達(dá)式:(x+=2,y=x+3/2,y+5)后,變量x的值為(7),變量y的值為(8),表達(dá)式的值為(9)。
6.執(zhí)行以下for(i=1;i++<=5)語句后,變量i的值為(10)。
7.數(shù)組是表示類型相同的數(shù)據(jù),而結(jié)構(gòu)體則是若干(11)數(shù)據(jù)項的集合。
8.C語言中文件是指(12)。
三、程序補充題(每空3分,共24分)1.從鍵盤上輸入若干個學(xué)生成績,統(tǒng)計并輸出最高成績和最低成績,當(dāng)輸入負(fù)數(shù)時結(jié)束輸入。
main()
{floats,gmax,gmin;
scanf(“%f,”&s);
gmax=s;gmin=s;
while(1)
{if(s>gmax)gmax=s;
if(2)gmin=s;
scanf(“%f”,&s);}
printf(“gmax=%f\ngmin=%f\n”gmax,gmin);}
2.求任意兩個正整數(shù)的最大公約數(shù)和最小公倍數(shù)
#include“stdio.h”
main()
{intr,m,n,temp,gcd,lcm;
printf(“entertwonumberplease:”);
scanf(“(3)”,&m,&n);
lcm=m*n;
while(m%n!=0)
{r=m%n;(4);n=r;}
gcd=n;lcm=lcm/n;
printf(“gcd=%d\nlcm=%d\n”,gcd,lcm);}
3.求y的x次方。
Doublefun1(doubley,intx)
main(){inti;
doublez=1.0;
for(i=1;i(5);i++)
z=(6);
returnz;}
4.對輸入一個整數(shù)進(jìn)行判斷,若是偶數(shù),輸出even,否則輸出odd,在子函數(shù)fun2功能是判定整數(shù)是否為偶數(shù),若是偶數(shù),返回1,否則返回0。
intfun2(intx)
{if(x%2==0)(7);
return0;}
main()
{intn;
scanf(“%d”,&n);
if(8)printf(“even\n”);
elseprintf(“odd\n”);}
四、按格式寫出程序運行結(jié)果。(每題4分共20分)1.main()
{inta=1,c=65,d=97;
printf(“a8=%o,a16=%x\n”,a,a);
printf(“c10=%d,c8=%o,c16=%x,cc=%c\n”c,c,c,c);
d++;
printf(“d10=%d,dc=%c\n”d,d);}
程序運行結(jié)果為:
2.有以下程序
voidf(intx,inty)
{intt;
if(x
main()
{inta=4,b=3;c=5;
f(a,b);f(a,c);f(b,c);
printf(“%d,%d,%d”,a,b,c);}執(zhí)行后的結(jié)果是:()
3.程序執(zhí)行的結(jié)果是()
main()
{inti=0,a=2;
if(i==0)printf(“**”);
elseprintf(“$$”);
printf(“*”);}
4.有以下程序
main()
{intsum=0,n;
scanf(“%d”,&n);
while(n<=5)
{sum+=n;
n++;}
printf(“sum=%d”,sum);}
當(dāng)輸入:1程序運行的結(jié)果為()
5.執(zhí)行以下程序段,輸出的結(jié)果為()
main()
{inta[2][3]={{3,2,7},{4,8,6}};
int*p,m;
p=&a[0][0];
m=(*p)*(*(p+2))*(*(p+4));
printf(“m=%d”,m);}
五、按題目要求寫出可運行程序:(24分)1.模擬計算器功能,編寫程序,根據(jù)用戶輸入的運算符,對兩個數(shù)進(jìn)行運算。(用switch語句)()
2.求3~100之間的全部素數(shù),并統(tǒng)計素數(shù)個數(shù)。
3.編寫程序完成矩陣轉(zhuǎn)置,即將矩陣的行和列對換:
.如將矩陣9751倒置為934
3128716
46810528
1810
參考答案
一、選擇題(20分)1.B2.A3.B4.C5.C
6.A7.D8.C9.D10.B
11.D12.A13.B14.C15.B
16.D17.A18.C
二、填空題(12分)
(1).C(2).OBJ(3).EXE(小寫也正確)
(4)long(int)a,b;(5)1.5(6)7.000000(7)2(8)3
(9)8(10)7(11)類型不同(12)存儲在外部介質(zhì)上的相關(guān)數(shù)據(jù)集合
三、程序補充題(24分)(1)s>=0
(2)s
(3)%d,%d
(4)m=n
(5)i<=x
(6)z*y
(7)return1
(8)fun2(n)
四、按格式寫出程序運行結(jié)果(20分)1.a8=1,a16=1
2.4,3,53.***4.sum=155.m=56
c10=65,c8=101,c16=41,cc=A
d10=98,dc=b
五、編寫程序(24分)1.main()
{floatx,y;
charoperator;
scanf(“%f,%c,%f”,&x,&operator,&y)
switch(operator)
{case`+`:printf(“\n%.2f+%.2f”,x,y,x+y);break;
case`-`:printf(“\n%.2f-%.2f”,x,y,x-y);break;
case`*`:printf(“\n%.2f-%.2f”,x,y,x*y);break;
case`/`:printf(“\n%.2f-%.2f”,x,y,x/y);break;
case`/`:if(y==0)
{printf(“error!”);break;}
printf(“\n%.2f-%.2f”,x,y,x/y);break;
default:printf(“operatorisinvalid”);}}
2.#include“math.h”
main()
{intm,k,i,n;
for(m=3;m<=100;m+=2)
{k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)break;
if(i>=k+1)
{printf(“%d”,m);
n++;}
}}
3.#include“stdio.h”
#defineROW3
#defineCOL4
main()
{inti,j,a[ROW][COL],a[ROW][COL];
for(i=0;i<=ROW;i++)
for(j=0;j<=COL;j++)
scanf(“%d”,&a[i][j]);
for(i=0;i<=ROW;i++)
for(j=0;j<=COL;j++)
b[j][i]=a[i][j];
for(i=0;i<=ROW;i++)
for(j=0;j<=COL;j++)
printf(“%5d”,b[i][j]);}}
總結(jié)
以上是生活随笔為你收集整理的float型y取值在1.0c语言表达式,2011年全国计算机二级C语言模拟试题及答案(14)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 联发科天玑9000跑分实测首发!对比骁龙
- 下一篇: 兔子野鸡49只100条腿c语言,家禽生产