C语言程序设计练习题.docx

上传人:b****6 文档编号:5382707 上传时间:2022-12-15 格式:DOCX 页数:9 大小:18.05KB
下载 相关 举报
C语言程序设计练习题.docx_第1页
第1页 / 共9页
C语言程序设计练习题.docx_第2页
第2页 / 共9页
C语言程序设计练习题.docx_第3页
第3页 / 共9页
C语言程序设计练习题.docx_第4页
第4页 / 共9页
C语言程序设计练习题.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C语言程序设计练习题.docx

《C语言程序设计练习题.docx》由会员分享,可在线阅读,更多相关《C语言程序设计练习题.docx(9页珍藏版)》请在冰豆网上搜索。

C语言程序设计练习题.docx

C语言程序设计练习题

C语言程序设计练习题

(1)有如下程序

main()

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

printf(“%f\n”,y);

}

该程序的输出结果是()

A)0.000000B)0.250000C)0.500000D)1.000000

(2)有如下程序

main()

{inti,sum;

for(i=1;i<=3;sum++)sum+=i;

printf(“%d\n”,sum);

}

该程序的执行结果是()

A)6B)3C)死循环D)0

(3)有如下程序

main()

{intx=23;

do

{printf(“%d”,x--);}

while(!

x);

}

该程序的执行结果是()

A)321B)23C)不输出任何内容D)陷入死循环

(4)有如下程序

intrunc(inta,intb)

{return(a+b);}

main()

{intx=2,y=5,z=8,r;

r=func(func(x,y),z);

printf(“%d\n”,r);

}

该程序的输出的结果是()

A)12B)13C)14D)15

(5)有如下程序段

int*p,a=10,b=1;

p=&a;a=*p+b;

执行该程序段后,a的值为()

A)12B)11C)10D)编译出错

(6)有如下程序

longfib(intn)

{if(n>2)return(fib(n-1)+fib(n-2));

elsereturn

(2);

}

main()

{printf(“%d\n”,fib(3));

该程序的输出结果是()

A2B4C6D8

(7)有如下程序段

inta=14,b=15,x;

charc=’A’;

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

执行该程序段后,x的值为()

A}tureB}falseC}0D}1

(8)有如下说明

inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

则数值为9的表达式是()

A)*P+9B)*(P+8)C)*P+=9D)P+8

(9)若有以下的定义:

intt[3][2];能正确表示t数组元素首地址的表达式是()

A}&t[3][2]B}t[3]C}t[1]D}t[0]

(10)有如下定义

structperson

{charname[9];

intage;};

structpersonclass[10]={“Johu”,17,“Paul”,19,“Mary”,18,“Adam”,16};

根据上述定义,能输出字母M的语句是()

A)prinft(“%c\n”,class[3].mane);

B)printf(“%c\n”,class[3].name[0]);

C)prinft(“%c\n”,class[2].name[1]);

D)printf(“%c\n”,class[2].name[0]);

(11)以下函数值的类型是()

fun(floatx)

{floaty;

y=3*x-4;

returny;

}

A)intB)不确定C)voidD)float

(12)以下数组定义中不正确的是()

A)inta[2][3];

B)intb[][3]={0,1,2,3};

C)intc[100][100]={0};

D)intd[3][]={{1,2},{1,2,3},{1,2,3,4}};

(13)以下程序的输出结果是()

main()

{inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);

}

A}0650B}1470C}5430D}输出值不定

(14)以下程序的输出结果是()

main()

{charst[20]="hello\0\t\\\n";

printf(%d%d\n",strlen(st),sizeof(st));

}

A}99B}920C}1320D}2020

(15)以下程序的输出结果是()

main()

{inta,b;

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

{if(b>=10)break;

if(b%3==1)

{b+=3;continue;}

}

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

}

A}101B}3C}5D}4

(16)以下程序的输出结果是()

inta,b;

voidfun()

{a=100;b=200;}

main()

{inta=5,b=7;

fun();

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

}

A}100200B}57C}200100D}75

(17)以下程序的输出结果是()

#defineM(x,y,z)x*y+z

main()

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

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

}

A}19B}17C}15D}12

(18)以下程序运行后的输出结果是()。

main()

{inti=5,j=0;

do

{j=j+i;i--;

while(i>2);

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

}

(19)设有以下程序:

main()

{intn1,n2;

scanf("%d",&n2);

while(n2!

=0)

{n1=n2%10;

n2=n2/10;

printf("%d",n1);

}

}

程序运行后,如果从键盘上输入1298;则输出结果为()。

(20)以下程序输出的最后一个值是()。

intff(intn)

{staticintf=l;

f=f*n;

returnf;

}

main()

{inti;

for(i=1;i<=5;i++)printf("%d\n",ff(i));

}

(21)以下函数的功能是:

求x的y次方,请填空。

doublefun(doublex,inty)

{inti;

doublez;

for(i=1,z=x;i

returnz;

}

(22)设有以下程序:

main()

{inta,b,k=4,m=6,*p1=&k,*p2=&m;

a=pl==&m;

b=(*p1)/(*p2)+7;

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

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

(23)以下程序的输出结果是()

A)0B)29C)31D)无定值

fun(intx,inty,intz)

{z=x*x+y*y;}

main()

{inta=31;

fun(5,2,a);

printf("%d",a);

}

(24)下列程序段的输出结果是()

A)2143B)1212

C)1234D)2112

voidfun(int*x,int*y)

{printf("%d%d",*x,*y);*x=3;*y=4;}

main()

{intx=1,y=2;

fun(&y,&x);

printf("%d%d",x,y);

}

(25)下列程序的运行结果是()

A)63B)36C)编译出错D)00

voidfun(int*a,int*b)

{int*k;

k=a;a=b;b=k;

}

main()

{inta=3,b=6,*x=&a,*y=&b;

fun(x,y);

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

}

(26)下面程序的输出结果是()

A)0B)1C)10D)9

main()

{inta[]={1,2,3,4,5,6,7,8,9,0,},*p;

p=a;

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

}

(27)以下程序的输出结果是()

A)20B)21C)22D)23

main()

{inti,k,a[10],p[3];

k=5;

for(i=0;i<10;i++)a[i]=i;

for(i=0;i<3;i++)p[i]=a[i*(i+1)];

for(i=0;i<3;i++)k+=p[i]*2;

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

}

(28)以下程序的输出结果是()

A)1,5,9B)1,4,7C)3,5,7D)3,6,9

main()

{inti,x[3][3]={1,2,3,4,5,6,7,8,9};

for(i=0;i<3;i++)printf("%d,",x[i][2-i]);

}

(29)以下程序的输出结果是()

A)18B)19C)20D)21

main()

{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

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

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

s+=a[i][j];

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

}

(30)以下程序的输出结果是()

A)1B)2C)3D)4

longfun(intn)

{longs;

if(n==1||n==2)s=2;

elses=n-fun(n-1);

returns;

}

main()

{printf("%ld\n",fun(3));}

(31)以下程序的输出结果是()

A)16B)2C)9D)1

#defineSQR(X)X*X

main()

{inta=16,k=2,m=1;

a/=SQR(k+m)/SQR(k+m);

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

}

(32)下面程序的功能是:

计算1到10(包括10)的奇数之和及偶数之和,请填空。

main()

{inta,b,c,i;

a=c=0;

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

{a+=i;

_______;

c+=b;

}

printf("偶数之和=%d\n",a);

printf("奇数之和=%d\n",c-11);

}

(33)下面程序的功能是:

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

main()

{inti,j;

for(i=0;________;i++)

{j=i*10+6;

if(________)continue;

printf("%d",j);

}

}

(34)以下程序的功能是:

从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。

请填空。

main()

{floatx[1000],sum=0.0,ave,a;

intn=0,i;

printf("Entermark:

\n");scanf("%f",&a);

while(a>=0.0&&n<1000)

{sum+=_______;

x[n]=a;

n++;scanf("%f",&a);

}

ave=;

printf("Output:

\n");

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

for(i=0;i

if(___________)

printf("%4.2f\n",x[i]);

}

(35)下列程序的输出结果是()

A)5B)6C)7D)8

structabc

{inta,b,c;};

main()

{structabcs[2]={{1,2,3},{4,5,6}};intt;

t=s[0].a+s[1].b;

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

}

(36)以下程序的输出结果是()

main()

{inta=0,i;

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

{switch(i)

{case0:

case3:

a+=2;

case1:

case2:

a+=3;

default:

a+=5;

}

}

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

}

A)31B)13C)10D)20

(37)以下程序的输出结果是()

main()

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

d=!

a&&!

b||!

c;

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

}

A)1B)0C)非0的数D)-1

(38)以下程序的输出结果是()

main()

{inti=0,a=0;

while(i<20)

{for(;;)

{if((i%10)==0)break;

elsei--;

}

i+=11;a+=i;

}

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

}

A)21B)32C)33D)11

(39)以下程序的输出结果是()

intf()

{staticinti=0;

ints=1;

s+=i;i++;

returns;

}

main()

{inti,a=0;

for(i=0;i<5;i++)a+=f();

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

}

A)20B)24C)5D)15

(40)以下程序段的输出结果是()

chars[]="\\141\141abc\t";

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

A)9B)12C)13D)14

(41)以下程序的输出结果是()

main()

{charch[3][5]={"AAAA","BBB","CC"};

printf("\"%s\"\n",ch[1]);

}

A)"AAAA"B)"BBB"C)"BBBCC"D)"CC"

(42)以下程序的输出结果是()

f(intb[],intm,intn)

{inti,s=0;

for(i=m;i

s+=b[i];

returns;

}

main()

{intx,a[]={1,2,3,4,5,6,7,8,9};

x=f(a,3,7);

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

}

A}30B}18C}22D}15

(43)以下程序的输出结果是()

f(intb[],intm,intn)

{inti,s=0;

for(i=m;i

b[i]=b[i-1]+b[i+1];

returns;

}

main()

{intx,a[]={1,2,3,4,5,6,7,8,9};

x=f(a,3,7);

printf("%d\n",a[5]);

}

A}6B}12C}21D}43

答案:

(1)C

(2)C(3)B(4)D(5)B

(6)B(7)D(8)B(9)D(10)D

(11)A(12)D(13)A(14)B(15)D

(16)B(17)D

(18)12(19)8921(20)120

(21)z=z*x;(22)07

(23)C(24)A(25)B(26)C(27)B

(28)C(29)A(30)A(31)B

(32)b=i+1

(33)i<10i%3!

=0

(34)asum/nx[i]

(35)B(36)A(37)A(38)B(39)D

(40)A(41)B(42)C(43)C

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

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1