《C语言程序设计》习题集 下载本文

前言

C语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,C语言正在被迅速地推广和普及。

课后做些练习是有必要的,本习题集通过大量的典型习题,循序渐进地引导学生巩固各章的知识点。根据最新教学大纲,我们编排了13章的单元习题,结合各章的课时数,确定其所需的篇幅。学生可根据教师的进度完成相应习题。任课教师可以根据需要收取学生所做的试卷检查教学效果,并作为平时成绩的一个依据(分值老师自己把握)。

C语言是电子信息类专业重要的专业基础课,任课教师和学生要引起足够的重视。因为C语言是一个比较通用的高级编程语言,很多编程语言都与之相关,作为学生的第一门计算机语言课,对它学习的好坏将影响后续所有与编程相关的课程以及学生参与项目的能力。

学习C语言的较好方法就是做适量的习题和大量的编程实践。前者是为了巩固基础知识,后者则是对基础知识的灵活运用,只有当我们能够使用C语言畅通无阻地让计算机执行我们所想要做的工作时,我们才能最大限度地发挥计算机的优势,使之真正成为我们强有力的工具。

目录

第一章 C语言概述 ··················································································································· 1 第二章 程序的灵魂——算法 ··································································································· 3 第三章 数据类型、运算符与表达式 ························································································ 4 第四章 最简单的C程序设计 ··································································································· 8 第五章 选择结构程序设计 ····································································································· 11 第六章 循环控制 ···················································································································· 16 第七章 数组 ···························································································································· 21 第八章 函数 ···························································································································· 27 第九章 预处理命令 ················································································································· 33 第十章 指针 ···························································································································· 35 第十一章 结构体与共用体 ····································································································· 41 第十二章 位运算 ···················································································································· 47 第十三章 文件 ························································································································ 49

《C语言程序设计》习题集

第一章 C语言概述

一、选择题

1、以下叙述中正确的是( )

A)C程序中注释部分可以出现在程序中任意合适的地方 B)花括号“{”和“}”只能作为函数体的定界符

C)构成C程序的基本单位是函数,所有函数名都可以由用户命名 D)分号是C语句之间的分隔符,不是语句的一部分 2、以下叙述中正确的是( ) A)C语言比其他语言高级

B)C语言可以不用编译就能被计算机识别执行

C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D)C语言出现得最晚,具有其他语言的一切优点 3、在一个C程序中( )

A) main函数必须出现在所有函数之前 C) main函数必须出现在所有函数之后

B) main函数可以在任何地方出现 D) main函数必须出现在固定位置

4、以下叙述中正确的( )

A) 构成C程序的基本单位是函数 B) 可以在一个函数中定义另一个函数 C) void main()函数必须放在其它函数之前

D) 所有被调用的函数一定要在调用之前进行定义 5、下列叙述中正确的是( ) A) C语言编译时不检查语法

B) C语言的子程序有过程和函数两种 C) C语言的函数可以嵌套定义 D) C语言所有函数都是外部函数

6、一个C程序的执行是从( )

A)本程序的main函数开始,到main函数结束

B)本程序文件的第一个函数开始,到本程序文件的最后一个函数 C)本程序的main函数开始,到本程序文件的最后一个函数 D)本程序文件的第一个函数开始,到main函数结束 7、以下叙述正确的是( )

A) 在C程序中,main函数必须位于程序的最前面 B) C程序的每行中只能写一条语句 C) C语言本身没有输入输出语句

D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误 8、以下叙述不正确的是( )

A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main函数 C)C程序的基本组成单位是函数

D)在C程序中,注释说明只能位于一条语句的后面 9、以下叙述正确的是( )

A)可以把define和if定义为用户标识符

- 1 -

《C语言程序设计》习题集

B)可以把define定义为用户标识符,但不能把if定义为用户标识符 C)可以把if定义为用户标识符,但不能把define定义不用户标识符 D)define和if都不能定义为用户标识符

二、填空题

1、C源程序的基本单位是 。 2、一个C源程序至少包含一个 。

3、在C语言中,输入函数由库函数 完成,输出函数由库函数 完成。 三、编程题

1、编写一个简单的C程序介绍,输出以下信息:

* * * * * * * * * * * * * * * * * * * * * * * * * * *

Welcome to C Programme

* * * * * * * * * * * * * * * * * * * * * * * * * * *

2、编写一个C程序,输入整数a,b两个值,输出两个整数之差。 3、编写一个C程序,输入a、b、c 三个值,输出其中最小者。

- 2 -

《C语言程序设计》习题集

第二章 程序的灵魂——算法

一、选择题

1、以下不能正确计算代数式1sin2(1)值的C语言表达式是( )

32

A)1/3*sin(1/2)*sin(1/2) B)sin(0.5)*sin(0.5)/3

C)pow(sin(0.5),2)/3

D)1/3.0*pow(sin(1.0/2),2)

2、算法具有五个特性,以下选项中不属于算法特性的是( ) A)有穷性 B)简洁性 C)可行性 D)确定性

3、一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是( A) 有零个或多个输入 B) 有零个或多个输出 C) 有穷性 D) 可行性 4、与数学式子

3xn对应的C语言表达式是( )

2x?1A) 3*x^n(2*x-1)

B) 3*x*n/(2*x-1)

C) 3*pow(x,n)*(1/(2*x-1))

D) 3*pow(n,x)/(2*x-1)

二、填空题

1、在程序中要指定数据的类型和数据的组织形式,也就是 。 2、算法是对 的描述。

3、计算机算法可以分为 和 。 4、循环结构可分为 和 。 三、编程题

1、依次将10个数输入,要求将其中最小的数打印出来,并画出其流程图。 2、求6!的算法并用N-S流程图表示。

3、写出判定2010-2500年中属于闰年的算法,并画出其流程图。 4、写出将1-500之间的素数打印出来的算法,并画出其流程图。 5、用C语言表示两个m和n的最大公约数,并画出其流程图。

6、用C语言表示求 ?100 即(1+2+3+...+100),并画出其流程图。

nn?1

- 3 -

)