C程序设计教程期末复习练习一cdoc.docx

上传人:b****1 文档编号:2866253 上传时间:2023-05-04 格式:DOCX 页数:10 大小:73.73KB
下载 相关 举报
C程序设计教程期末复习练习一cdoc.docx_第1页
第1页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第2页
第2页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第3页
第3页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第4页
第4页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第5页
第5页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第6页
第6页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第7页
第7页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第8页
第8页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第9页
第9页 / 共10页
C程序设计教程期末复习练习一cdoc.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C程序设计教程期末复习练习一cdoc.docx

《C程序设计教程期末复习练习一cdoc.docx》由会员分享,可在线阅读,更多相关《C程序设计教程期末复习练习一cdoc.docx(10页珍藏版)》请在冰点文库上搜索。

C程序设计教程期末复习练习一cdoc.docx

C程序设计教程期末复习练习一cdoc

期末复习练习一

1.

单项选择题(每小题1分,共20分)

因为定型为整形

(0与机器有关(D)语法有错

4、执行下列程序段后,a值为Aa二1;b二0;

辻((a++>++b)?

a(++:

b--)a+二b;

(A)2(B)3(C)4(D)55、下列程序段执行后s值为Cinti二1,s二0;

do{if(!

(i%2))continue;s+二i;}whi.le(卄i<10);

⑷1(B)45(C)25(D)以上均不是

6、对于inta,则表达式l〈p〈二5值是B

(A)0(B)1(C)不定(D)表达式语法有错

7.C语言源程序的基本单位是(B)o

(A)过程(B)函数(C)子程序(D)标识符

&下列程序的输出结果是(C)o

main()

{inta二7,b二5;

printf(M%d\n,r,b=b/a);

}

⑷5(B)1(C)0(D)不确定值

11.假设变量a,b均为整型,表达式(a=5,b=2,a>b?

a++:

b++,a+b)的值是(B)。

(A)7(B)8(C)9(D)2

12.设a为int型变量,执行下列赋值语句后,a的取值分别是(B)。

a二125.534;a二(int)125.521%4;a=5<<2;

(A)125,31,1(B)125,1,20(0125,31,20(D)125.534,2,20intk=10;while(k=0)k=k-l;

(A)循环执行一次(B)循环是无限循环

(0循环体语句一次也不执行(D)循环体语句执行一次

14.以下程序的输出结果为(A)ointi;

voidprt()

{for(i=5;i<8;i++)printf("%c",'*');

printf(n\tw);

main()

{for(i=5;i<=8;i++)prt();

}

***(D)*

(A)***(B)************(C)***

**

15.在C语言程序中,以下说法正确的是(B)o

(A)函数的定义可以嵌套,但函数的调用不可以嵌套

(B)函数的定义不可以嵌套,但函数的调用可以嵌套

(0函数的定义和函数的调用都不可以嵌套

(D)函数的定义和函数的调用都可以嵌套

16.以下函数调用语句中含有(A)个实参。

func((el,e2),(e3,e4,e5));

⑷2(B)3(C)5(D)语法错误

17.以下程序的输出结果为(A)o

#defineADD(x)x*x

main()

{inta=4,b=6,c=7,d=ADD(a+b)*c;

printf("d=%dn,d);

}

(A)d=70(B)d=80(C)d=140(D)d=700

18.已知职工记录描述如下,在TurboC中,系统为变量w分配(C)

字节的空间。

structworker

{intno;charname[20];charsex;union{intday;intmonth;intyear;}birth;

}w;

(A)29(B)20(C)25(D)6

19.设有以下定义,值为5的枚举常量是(A)o

20.

fri,sat}w;

enumweek{sun,mon=4,tue,wed,thu,

21.正确的赋值语句是(设chara[5],*p=a;)(A)o

⑷p二"abed";(B)a=nabcdM;(C)*p="abcd";(D)*a=,rabcdH;

二、填空题(每空1分,共10分)

1、判断一个字符X是否是小写字母或数字的逻辑判断表达式是:

(x>=48&&x<=57||x>=97&&x<=122

2、用下列for循环将大写字母逆序输出(即从Z到A),其语句应为:

for(i=0;i<26;i++)printf("%c”,90-i);

3、5〈〈3十进制的值是404、若有定义:

intm=5,y=2;则执行表达式y+二y-二m*二y后的y值是

-16

5、在C语言中,表示逻辑“真”值用1表示。

6、

x,y,z均为整型变量,请写出描述“x或y等于z”的表达式

x=z丨丨y==zo

7、continue只能出现在循环语句中。

8、若已知a=l,b二2,则表达式!

a〈b的值为1。

9、C语言的基本数据类型分为o

10、已知字母'A'的ASCII码值为十进制数65,且ch为字符型,则执行语句chiA'+'6'」0‘后,ch的值为_G_。

三、程序分析题[阅读下述程序,写出执行结果

1、ttdefineX5#defineYX+l

ftdefineZY*X/2

main()

{inta;a二Y;

printf(nZ=%d,a=%d\n,r,Z,a);

}

执行结果为:

Z二7,a=6

2.unsignedfun6(unsignednum)

{unsignedk=l;

do

{k*=num%10;num/二10;}

while(num);

returnk;

}

main()

{unsignedn二26;

printf(Mfun=%d\nw,fun6(n));

}

执行结果为:

fun=12.

13.main()

{intp[7]二{11,13,14,15,16,17,18};

inti二0,j二0;

wh订e(i<7&&讥i]%2=l)j+二p[i++];

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

}执行结果为:

4.main()

{inta[4][4]二{{1,2,3,4},{5,6,7,8},{11,12,13,14},

{15,16,17,18}};

inti=0,j二0,s=0;

wh订e(i卄〈4)

{if(i—21|i=4)continue;

j二0;

do{s+=a[i][j];}while(j<4);

}

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

n二24

}执行结果为:

5.#definePRINTABprintf(°%d,%d\n\a,b);#definePRINTXYprintf(M%d,%d\nM,x,y);voidswap(intx,inty)

{intt;

PRINTXY

t二x;x二y;y二t;

PRINTXY

}

main()

{inta=3,b=4;

PRINTAB

swap(a,b);

PRINTAB

}执行结果为:

3.4

3a

4,33,4

6.main()

{inta[]-{1,2,3,4,5};

int*p=a;

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

printf(w%d\nw,*p++);

printfC%d\nM,(*p)++);

printf(H%d\n,r,^*p);

}

执行结果为:

2

2

3

5

四、聲唐瘗充题(每空1分,共10分)[阅读下列程序,在处填入畫当内容,使程序完整]

I.试求出1000以内的“完全数”o(提示:

如果一个数恰好等于它的因子之和(因子包括1,不包括数本身),则称该数为“完全数”。

如:

6的因子是1、2、3,而6=1+2+3,则6是个“完全数”。

main()

intn,s;

(1)inta;

for(n二1;

(2)n〈1000;n++)

{

for(s=0,a=l;a<=n/2;(3)a++)

if(!

(n%a))(4)s+二a;

if()printf(n%4d,r,n);

}

}

2.用“冒泡法”对输入的10个字符排序后按从小到大的次序输出。

#defineN10

charstr[N];

main()

{

inti,flag;

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

scanf("%c",&str[i]);

sort(

(1)str);

for(i二0;;i++)printf("%c",str[i]);

printf("\n");

}

sort(str)

charstr[N];

{inti,j;

chart;

for(j=l;j

for(i=0;i

if(str[i]>)

{t二str[i];

(4)str[i]二str[i+1]

(5)str[i+l]二t;

}

五、编程题(每题10分,共30分)

1.打印具有abcd=(ab+cd)2性质的全部四位数。

(参考答案)

main()

{intn,x,y;

for(n二1000;n〈二9999;n++)

{x二n/100;y=n%100;

if(n—(x+y)*(x+y))printf(“%d\n”,n);

2.出。

}

编写主函数,实现输入两个一般整数,完成两个数交换后再输

(参考答案)

voidmain()

{

intx,y,z;

printf("Entertwonumbersxy:

”);scanf("%d%d”,&x,&y);

z二x;

x二y;

x,y);

输出n行数字三角图形,例如,输入

y二z;

printf("x=%d,y=%d”,

3.写一个程序,输入n,n=4盼,输出以卞陵形:

1

121

12321

1234321

(参考答案)

Voidmain()inti,j,n;

printf("Entern:

”);

scanf("%d”,n);

for(i=0;i

for(j=0;j

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

printf('%5d,,j+1);for(j=0;j

printf("\n");

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

当前位置:首页 > 法律文书 > 调解书

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

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