C语言操作.docx

上传人:b****6 文档编号:16146198 上传时间:2023-07-10 格式:DOCX 页数:42 大小:28.58KB
下载 相关 举报
C语言操作.docx_第1页
第1页 / 共42页
C语言操作.docx_第2页
第2页 / 共42页
C语言操作.docx_第3页
第3页 / 共42页
C语言操作.docx_第4页
第4页 / 共42页
C语言操作.docx_第5页
第5页 / 共42页
C语言操作.docx_第6页
第6页 / 共42页
C语言操作.docx_第7页
第7页 / 共42页
C语言操作.docx_第8页
第8页 / 共42页
C语言操作.docx_第9页
第9页 / 共42页
C语言操作.docx_第10页
第10页 / 共42页
C语言操作.docx_第11页
第11页 / 共42页
C语言操作.docx_第12页
第12页 / 共42页
C语言操作.docx_第13页
第13页 / 共42页
C语言操作.docx_第14页
第14页 / 共42页
C语言操作.docx_第15页
第15页 / 共42页
C语言操作.docx_第16页
第16页 / 共42页
C语言操作.docx_第17页
第17页 / 共42页
C语言操作.docx_第18页
第18页 / 共42页
C语言操作.docx_第19页
第19页 / 共42页
C语言操作.docx_第20页
第20页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C语言操作.docx

《C语言操作.docx》由会员分享,可在线阅读,更多相关《C语言操作.docx(42页珍藏版)》请在冰点文库上搜索。

C语言操作.docx

C语言操作

一、选择题

1、对于字符串“08\\10\\04\n”;以下说法正确的是:

字符串在内存中占据10个字节

2、有以下程序

#include

voidmain()

{inti=0,s=0;

do{

if(i%2){i++;continue;}

i++;

s+=i;

}while(i<7);

printf("%d\n",s);

}

执行后输出的结果是__16____。

4、若以下选项中的变量已正确定义,则正确的赋值语句是_x3=0x12_____。

5、有如下程序段

inta=14,b=15,x;

charc='A';

x=(a&&b)&&(c<'B');

执行该程序段后,x的值为___1___。

8、有以下程序段

intk=0;

while(k=1)k++;

while循环执行的次数是_无限次_____。

14、已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。

以下不能将变量c的大写字母转换为对应小写字母的语句是c=('A'+c)%26-'a'

16、以下选项中,当x为大于1的奇数时,值为0的表达式是x%2==0

25.有以下程序

#include

voidmain()

{inta=15,b=21,m=0;

switch(a%3)

{case0:

m++;break;

case1:

m++;

switch(b%2)

{default:

m++;

case0:

m++;break;

}

}

printf("%d\n",m);

}程序运行后的输出结果是___1。

26.#include

voidmain()

{

inta=0,b=0;

a=10;/*给a赋值*/

b=20;/*给b赋值*/

printf("a+b=%d\n",a+b);/*输出计算结果*/

}

程序运行后的输出结果是a+b=30

27.有以下程序

#include

voidmain()

{inta;charc=10;

floatf=100.0;doublex;

a=f/=c*=(x=6.5);

printf("%d%d%3.1f%3.1f\n",a,c,f,x);

}

程序运行后的输出结果是_1651.56.5_____。

31.设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是_x=(int)(x*100+0.5)/100.0;_____。

33.设有定义:

inta;floatb;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876543.0<回车>,a和b的值分别是87和6.000000

34.设x、y、t均为int型变量,则执行语句:

x=y=3;t=++x||++y;后,y的值为___3___。

(前面为真后面不用算)

36.若有charc;则正确的赋值表达式是c='\101'

39.以下叙述中错误的是C程序中,+、-,*、/、%号是算术运算符,可用于整型和实型数的运算

40.有定义语句:

inta=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是

_if(a<3)x=3;

if(a<2)x=2;

if(a<1)x=1;____2_。

41.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是_2.0_。

42.以下的for循环:

for(x=0,y=0;(y!

=123)&&(x<4);x++)

循环4次

43.能正确表示a和b同时为正或同时为负的逻辑表达式是__a*b>0____。

44.以下不合法的数值常量是8.0E0.5(要是整数)

47.以下符合C语言语法的实型常量是_.5E-3_____。

48.有以下程序

#include

voidmain()

{intk=5;

while(--k)printf("%d",k-=3);

printf("\n");

}

执行后有输出结果是1

49.以下选项中非法的表达式是_x+1=x+1_____。

52.设a、b和c都是int型变量,且a=3、b=4、c=5,则下面的表达式中,值为0的表达式是_!

((a

c||1)_____。

53.阅读以下程序

#include

voidmain()

{intx;

scanf("%d",&x);

if(x--<5)printf("%d\n",x);

elseprintf("%d\n",x++);

}

程序运行后,如果从键盘上输入5,则输出结果是__4___。

54.设有定义:

longx=-123456L;,则以下能够正确输出变量x值的语句是__printf("x=%ld\n",x);____。

55.当执行以下程序时,输入1234567890<回车>,则其中while循环将执行0次。

#include

voidmain()

{charch;

while((ch=getchar())=='0')printf("#");

}

56.若有代数式

(其中e代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是sqrt(fabs(pow(n,x)+exp(x)))

59.下列定义变量的语句中错误的是floatUS$;

60.以下选项中,值为1的表达式是1-'\0'

61.若变量均已正确定义并赋值,以下合法的C语言赋值语句是x=y==5;

64.以下程序中,while循环的循环次数是__死循环,不能确定次数____。

#include

voidmain()

{inti=0;

while(i<10)

{if(i<1)continue;

if(i==5)break;

i++;

}

......

}

66.已知intx=12,y=3;执行下述程序后,变量x的值是_程序运行有错误___。

do

{x/=y--;

}while(x>y);

printf("%d\n",x);}

71.有以下程序段

intj;floaty;

scanf("%2d%f",&j,&y);

当执行上述程序段,从键盘上输入555667777后,y的值为566.0

72.有以下程序段

intn=0,p;

do{scanf("%d",&p);n++;}while(p!

=12345&&n<3);

此处do-while循环的结束条件是_p的值等于12345或者n的值大于等于3_____。

(反面)

76.请读程序:

#include

main()

{

inta,b;

for(a=1,b=1;a<=100;a++){

if(b>=20)break;

if(b%3==1){b+=3;continue;}

b-=5;

}

printf("%d\n",a);

}

上面程序的输出结果是__8____。

79.有一函数

┌1x>0

y=┤0x=0

└-1x<0

以下程序段中不能根据x的值正确计算出y的值的是_y=0;if(x>=0)if(x>0)y=1;elsey=-1;_____。

82.有以下程序

#include

voidmain()

{inti,s=0;

for(i=1;i<10;i+=2)s+=i+1;

printf("%d\n",s);

}

程序执行后的输出结果是_自然数1~10中偶数之和_____。

83.若x是int型变量,且有下面的程序片段

for(x=3;x<6;x++)printf((x%2)?

("**%d"):

("##%d\n"),x);

上面程序片段的输出结果是__④____。

④**3##4

**5

86.以下程序的输出结果是_20_____。

#include

voidmain()

{intn=4;

while(n--)printf("%d",--n);

}

88.有以下程序

#include

voidmain()

{inti,j,x=0;

for(i=0;i<2;i++)

{x++;

for(j=0;j<=3;j++)

{if(j%2)continue;

x++;

}

x++;

}

printf("x=%d\n",x);

}

程序执行后的输出结果是x=8

94.以下关于逻辑运算符两侧运算对象的叙述中正确的是可以是任意合法的表达式

96.以下关于long、int和short类型数据占用内存大小的叙述中正确的是由C语言编译系统决定

98.有以下程序

#include

voidmain()

{inta=0,b=0,c=0,d=0;

if(a=1)b=1;c=2;

elsed=3;

printf("%d,%d,%d,%d\n",a,b,c,d);

}

程序输出编译有错

100.以下程序的输出结果是d=20。

main()

{inta=0,b=1,c=0,d=20;

if(a)d=d-10;

elseif(!

b)

if(!

c)d=15;

elsed=25;

printf("d=%d\n",d);

}

102.能正确表示“当x的取值在(-∞,-2)和[2,+∞)范围内为真,否则为假”的表达式是((x<-2)||(x>=2))

104.有以下程序

#include

voidmain()

{charc1,c2,c3,c4,c5,c6;

scanf("%c%c%c%c",&c1,&c2,&c3,&c4);

c5=getchar();c6=getchar();

putchar(c1);putchar(c2);

printf("%c%c\n",c5,c6);

}

程序运行后,若从键盘输入(从第1列开始)

123<回车>

45678<回车>

则输出结果是1245

105.有以下程序

#include

voidmain()

{ints=0,a=1,n;

scanf("%d",&n);

do

{s+=1;a=a-2;}

while(a!

=n);

printf("%d\n",s);

}

若要使程序的输出值为2,则应该从键盘给n输入的值是__-3____。

106.要求通过while循环不断读入字符,当读入字母N时结束循环。

若变量已正确定义,以下正确的程序段是while((ch=getchar())!

='N')printf("%c",ch);

107.假设定义的全部变量都是整型,则表达式“k=3,h=7,h++,(k++)+h”的值是(11)。

二、填空题

1、若已知a=10,b=15,则表达式(a==10)&&(b==10)的运算结果为0。

2、执行下面程序时,输出结果是(a=2,b=4)。

#include

main()

{inta=2,b=1;

do

{switch(a)

{case1:

b=1;break;

case2:

b=2;break;

default:

b=0;}

b=a+b;

}while(!

b);

printf("a=%d,b=%d",a,b);}

3、有以下程序

#include

voidmain()

{intt=1,i=5;

for(;i>=0;i--)t*=i;

printf("%d\n",t);

}

执行后输出结果是_0___。

4、以下程序运行后的输出结果是__1___。

#include

voidmain()

{

inta=1,b=2,c=3;

if(c=a)printf("%d\n",c);

elseprintf("%d\n",b);

}

5、已知字母A的ASCII码为65。

以下程序运行后的输出结果是_67G____。

#include

voidmain()

{

chara,b;

a='A'+'5'-'3';

b=a+'6'-'2';

printf("%d%c\n",a,b);

}

6、有如下程序

#include

voidmain()

{inta=2,b=-1,c=2;

if(a

if(b<0)c=0;

elsec++;

printf("%d\n",c);

}

则输出结果为是

(2)

7、以下程序的输出结果为

(2)

#include

voidmain()

{

inta=10,b=20,m=0;

switch(a%3)

{

case0:

m++;break;

case1:

m++;

switch(b%2)

{

case0:

m++;break;

default:

m++;}

}

printf("%d\n",m);

}

8、以下程序的功能是:

将输入的正整数按逆序输出。

例如:

若输入135则输出531。

请填空。

#include

main()

{intn,s;

printf("Enteranumber:

");scanf("%d",&n);

printf("Output:

");

do

{s=n%10;printf("%d",s);n=n/10;}

while(n!

=0);

printf("\n");

}

9、有如下程序

#include

voidmain()

{

intx=23;

do

{printf("%d",x--);

}

while(!

x);

}

则输出结果为(23)

10.以下程序的输出结果是ACE。

#include

voidmain()

{inti;

for(i='a';i<'f';i++,i++)printf("%c",i-'a'+'A');

printf("\n");

}

11.求s=1-1/2+1/3-1/4+…-1/100

main()

{intk,n;floats=0;

for(k=1;k<=100;k++)

if(k%2)s+=1.0/k;/*应用分支实现符号一正一负*/

elses-=1.0/k;

printf("s=%9.6f",s);

}

12.#include

voidmain()

{

inti;

for(i=1;i<=5;i++)

{

switch(i%2)

{

case0:

i++;printf("?

");break;

case1:

i+=2;printf("*");

default:

printf("$");

}

}

}

程序的输出结果为:

__*$?

_______

13.下面程序的输出是(k=11,k=13,k=b)

#include

voidmain()

{

intk=11;

printf("k=%d,k=%o,k=%x\n",k,k,k);

}

16.以下程序运行后的输出结果是_4599____。

#include

voidmain()

{

inta=3,b=4,c=5,t=99;

if(b

if(a

printf("%d%d%d\n",a,b,c);

}

17.执行下面程序时,输出结果是(x=6)。

#include

main()

{inti,j,x=0;

for(i=0;i<3;i++)

{x++;

for(j=0;j<-4;j++)

{if(j%3)continue;

x++;}

x++;}

printf("x=%d\n",x);}

18.阅读如下程序并写出运行结果。

004

#include

voidmain()

{

inti,x=-1,y=4;

i=(++x<0)&&!

(y--<=0);

printf("%d%d%d\n",i,x,y);

}

19.有以下程序段,且变量已正确定义和赋值

for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));

printf("s=%f\n\n",s);

请填空,使下面程序段的功能与之完全相同

s=1.0;k=1;

while(k<=n){s=s+1.0/(k*(k+1));_k++_____;}

printf("s=%f\n\n",s);

21.以下程序运行后的输出结果是__1___。

#include

voidmain()

{

inta=1,b=2,c=3;

if(c=a)printf("%d\n",c);

elseprintf("%d\n",b);

}

22.以下程序运行后的输出结果是__88___。

#include

voidmain()

{intx=0210;printf("%x\n",x);}

23.以下程序的功能是:

输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。

#include

voidmain()

{

inti,j;

for(i=0;i<10;i++)

{

j=i*10+6;

if(_j%3___)continue;

printf("%d",j);

}

}

27.#include

voidmain()

{

inta,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7)

{

n=n*a;

s=s+n;

++count;

}

printf("%d",s);

}

程序的输出结果为:

___254_______

28.以下程序的输出结果是54321。

#include

voidmain()

{intn=12345,d;

while(n!

=0){d=n%10;printf("%d",d);n/=10;}

}

30.已知在ASCII字符编码中,字母A的编码序号为65,程序输出结果是(65,89)

#include

voidmain()

{charstr1='A',str2='Y';printf("%d,%d\n",str1,str2);}

31.执行以下程序时输入1234567,则输出结果是1234。

#include

voidmain()

{inta=1,b;

scanf("%2d%2d",&a,&b);printf("%d%d",a,b);

}

33.给定“a”的ASCII码为97,以下程序的输出结果是(N110)

#include

voidmain()

{intm,n;

m='m'+3-2;

n='M'+'3'-'2';

printf("%c,%d",n,m);

}

34.若有以下程序

#include

voidmain()

{intp,a=5;

if(p=a!

=0)

printf("%d\n",p);

else

printf("%d\n",p+2);

}

执行后输出结果是__1___。

35.在C语言中,为了结束do-while语句构成的循环,while后一对圆括号中表达式的值应该为:

___0_________

36.给定程序求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。

#include

main()

{inta,n,count=1;

longsn=0,tn=0;

printf("pleaseinputaandn:

\n");

scanf("%d%d",&a,&n);

printf("a=%d,n=%d\n",a,n);

while(count<=n)

{tn+=a;

sn+=tn;

tn*=__10____;

count++;

}

printf("a+aa+...=%ld\n",sn);

}

38.以下程序运行后的输出结果是1。

#include

voidmain()

{intx,a=1,b=2,c=3,d=4;

x=(a

a:

b;

x=(x

x:

c;

x=(d>x)?

x:

d;

printf("%d\n",x);

}

40.执行下面程序时,输出结果是

(1)。

#include

main()

{intm=23,n=7;

while(m!

=n)

{while(m>n)

m-=n;

while(n>m)

n-=m;}

printf("%d\n",m);

}

41.以下程序运行后的输出结果是10,11。

#include

voidmain()

{

intm=011,n=11;

printf("%d%d\n",++m,n++);

}

42.阅读如下程序并写出运行结果。

5,4,1

#include

voidmain()

{

intx=3,y=6,z=0;

while(x++!

=(y-=1))

{

z+=1;if(y

}

printf("%d,%d,%d\n",x,y,z);

}

43.以下程序的功能是计算:

s=1+12+123+1234+12345。

请填空。

#include

voidmain()

{

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2