《C程序设计》复习.docx

上传人:b****5 文档编号:6994953 上传时间:2023-01-15 格式:DOCX 页数:10 大小:19.05KB
下载 相关 举报
《C程序设计》复习.docx_第1页
第1页 / 共10页
《C程序设计》复习.docx_第2页
第2页 / 共10页
《C程序设计》复习.docx_第3页
第3页 / 共10页
《C程序设计》复习.docx_第4页
第4页 / 共10页
《C程序设计》复习.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

《C程序设计》复习.docx

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

《C程序设计》复习.docx

《C程序设计》复习

《C程序设计》复习

一、单项选择

1.以下四个选项中,是合法的转义字符的选项是。

A)’\n’B)’\369’C)’\X3h’D)’\\r’

2.以下四个选项中,不是合法的整型常量的选项是。

A)369B)OX38C)127e6D)O38

3.表达式2<7&&8>4-!

0的值是。

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

4.下列关于do…while语句和while语句的叙述中错误的是。

A)do…while语句先执行循环中的语句,然后再判断表达式

B)while语句是先进行判断,满足条件才去执行循环体

C)while语句至少要执行一次循环语句

D)do…while语句循环至少要执行一次循环语句

5.下列关于break语句和continue语句的叙述中错误的是。

A)break语句用来退出循环体

B)continue语句用来退出本次循环,提前进入下次循环的判定

C)break语句和continue语句都可以用在while、do…while、for循环体中

D)在循环语句中break语句不能和if语句连在一起使用

6.下面代表换行功能的转义字符是。

A)\tB)\nC)\rD)\b

7.使用字符串处理函数时,应该包含的头文件是。

A)stdio.hB)math.hC)string.hD)conio.h

8.若定义一个整型数组inta[10],则该数组第6个元素为。

A)a[6]B)a[7]C)a[5]D)a[8]

9.所有的编译系统都规定一个字符变量在内在中占个字节。

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

10.以下对字符数组的初始化不正确的是。

A)charc[]={”china”};B)charc[]={‘c’,‘h’,‘i’,‘n’,‘a’};

C)charc[]=”china”;D)charc[]=china;

11.若charstr[10]={″Computer″},则printf(″%d″,strlen(str))输出的结果是。

A)7B)8C)9D)10

12.C语言程序的基本单位是。

A)字符B)语句C)程序行D)函数

13.C程序进行编译的基本单位是。

A)源程序文件B)语句C)程序行D)函数

14.C语言中规定函数的返回值类型是由。

A)return语句中的表达式类型决定

B)调用该函数时的主调函数类型所决定

C)在定义该函数时所指定的函数类型所决定

D)调用该函数时系统临时决定

二、填空题

1.上机运行一个C程序必须经过编辑、编译、和执行四个步骤。

2.设a=3,b=4,c=5,则逻辑表达式a||b+c&&b-c的值为。

3.设a=3,b=4,c=5,则逻辑表达式!

(a>b)&&!

c||1的值为。

4.C语言中的浮点型变量分为单精度、和长双精度。

5.C语言中表达式5/3的结果为。

6.C语言中表达式7%4的结果为。

7.C语言中,在函数调用时使用的参数,称为实际参数,在函数定义时函数头中列出的参数,称为。

8.程序的三种基本结构是顺序、和循环。

9.设a=4,则执行语句a+=3;后a的值为。

10.设a=4,则执行语句a-=3;后a的值为。

11.C语言程序都是从名为的函数开始执行的。

12.在C语言中,是以作为一个字符串的结束标记的。

三、判断题

1.函数是C程序的基本单位,C语言的这种特点使得容易实现程序的模块化。

()

2.’\0x41’这个转义字符代表大写字母“A”。

()

3.在C语言程序中,写012与写12是一样的含义。

()

4.在C语言中,数值也可以参加逻辑运算。

非0数值都表示逻辑真,因此结果是1。

至于逻辑假,无论是参与逻辑运算时还是求得的运算结果,都以数值0来表示。

()

5.若用双引号括住空格符,就是一个“空字符串”。

()

6.当一个运算对象左右两边的运算符优先级相同时,就要考虑对这个运算对象是采用自左向右的结合顺序进行运算,还是采用自右向左的结合顺序进行运算。

()

7.在switch的case语句里,必须出现break语句。

()

8.break只能出现在switch语句和各种循环语句中。

()

9.continue语句只能出现在各种循环语句中。

()

10.复合语句中最后一条语句的语句结束符分号“;”可以省略。

()

11.在数组中,每一个元素在内存里占用的单元数都是相同的。

()

12.数组中的每一个元素都是相同数据类型的变量。

()

四、读程修改题

1.从键盘输入一个小写字母,要求改用大写字母输出,将空缺的语句补充完整。

#include

voidmain()

{

charc;

c=getchar();

_________________;

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

}

答:

c=c-32

2.写出下面程序输出的结果。

#include

voidmain()

{

inti,j;

i=3;

j=++i;

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

}

答:

i=4,j=4

3.要正确输出a的值,请将下面程序中空缺的语句补充完整。

#include

voidmain()

{

inta=10;

int*p;

;

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

}

答:

p=&a

4.输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。

然后输出最后得到的字符。

请用条件表达式将空缺的语句补充完整。

#include

voidmain()

{charch;

scanf("%c",&ch);

;

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

}

答:

ch=(ch>='A'&&ch<='Z')?

(ch+32):

ch

5.修改以下程序,要求当score>100或score<0时必须提示重新输入,直到输入正确值为止。

请写出具体的修改方案。

#include

voidmain()

{floatscore;

printf("inputscore:

");

scanf("%f",&score);

switch((int)(score/10))

{

case10:

case9:

printf("grade:

A\n");break;

case8:

printf("grade:

B\n");break;

case7:

printf("grade:

C\n");break;

case6:

printf("grade:

D\n");break;

case5:

case4:

case3:

case2:

case1:

case0:

printf("grade:

E\n");

}

}

答:

可在canf("%f",&score);语句之后插入以下语句:

while(score>100||score<0)

{

printf("输入的分数应介于0-100之间,请重新输入:

");

scanf("%f",&score);

}

6.将下面程序改为用while语句实现。

#include

voidmain()

{

intcock,rabbit;

for(cock=0;cock<=100;cock++)

{rabbit=100-cock;

if(cock*2+rabbit*4==300)

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

}

}

答:

#include

voidmain()

{

intcock,rabbit;

cock=0;

while(cock<=100)

{rabbit=100-cock;

if(cock*2+rabbit*4==300)

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

cock++;

}

}

7.修改以下程序,要求通过指针变量输入和输出数组中各元素的值。

#include

voidmain()

{

inta[3],i;

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

scanf("%d",&a[i]);

printf("\n");

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

printf("%d",a[i]);

}

答:

#include

voidmain()

{

inta[3],i;

int*p;

p=a;

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

scanf("%d",&p[i]);

printf("\n");

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

printf("%d",p[i]);

}

五、程序设计题

1.输入一个华氏温度,要求输出摄氏温度。

公式为c=5/9(F-32),输出要求有文字说明,取2位小数。

答:

参考代码如下:

#include

voidmain()

{floatc,f;

printf("请输入一个华氏温度:

");

scanf("%f",&f);

c=(5.0/9.0)*(f-32);/*注意5和9要用实型表示,否则5/9值为0*/

printf("摄氏温度为:

%5.2f\n",c);

}

2.随机输入某一年份,判断是否是闰年。

(表示闰年的条件:

①能被4整除,但不能被100整除。

②能被400整除)。

答:

参考代码如下:

#include

voidmain()

{

intyear;

printf("请输入任一年份:

");

scanf("%d",&year);

if((year%4==0&&year%100!

=0)||year%400==0)

printf("%d是闰年!

\n",year);

else

printf("%d不是闰年!

\n",year);

}

3.假如你刚到某所中学参加工作,在新学期开学之初,该中学的校长委托你对刚入校的新生进行快速分班。

已知条件:

共有380名新生,新生入校成绩册已知。

分班要求:

依据"总分"由高到低进行"S"形分班(不考虑总分相同的情况,即总分相同的依据先后仍按原次序排序),共分6个班。

根据以上陈述,按以下要求编程实现。

(1)输入学生的任一名次,输出该学生的所在的班级。

(2)程序尽可能有一定的通用性,即分班的数目随机确定。

(3)程序能按“若要再次执行请按'Y'或'y',否则按其他任一键退出”提示信息循环执行。

答:

参考代码如下:

#include

#include

voidmain()

{

intm,n,k;

charc;

do

{

printf("请输入分班的数目:

");

scanf("%d",&n);

printf("输入学生的名次:

");

scanf("%d",&m);

k=m%(2*n);

if(k>n)printf("该生所在的班级为%d班\n",2*n+1-k);

elseif(k>=1)printf("该生所在的班级为%d班\n",k);

elseprintf("该生所在的班级为%d班\n",1);

printf("若要再次执行请按\'Y\'或\'y\',否则按其他任一键退出。

");

c=getche();

printf("\n");

}while(c=='y'||c=='Y');

}

4.一共有100匹马,110袋大米,每匹大马驮3袋,每匹中马驮2袋,每匹小马驮1袋,如果这些马一次将所有的大米都驮走,求需要大马、中马、小马的匹数,列出所有可能的解。

答:

参考代码如下:

#include

voidmain()

{

inti,j,k;

printf("Allthepossibleanswerare:

\n");

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

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

{k=100-i-j;

if(i*3+j*2+k==110)

printf("bighorse:

%d,middlehorse:

%d,littlehorse:

%d\n",i,j,k);

}

}

《C程序设计》复习_参考答案

一、单项选择

1.A2.D3.A4.C5.D6.B7.C8.C

9.A10.D11.B12.D13.A14.C

二、填空题

1.组建(或连接)2.13.14.双精度5.16.37.形式参数

8.选择9.710.111.main12.’\0’

三、判断题

1.√2.×3.×4.√5.×6.√7.×8.√

9.√10.×11.√12.√

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

当前位置:首页 > PPT模板 > 动物植物

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

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