c程序设计基础09
c语言《程序设计基础》课后习题参考答案与解析
c语言《程序设计基础》课后习题参考答案与解析1. 习题一:编写一个C程序,输出“Hello World!”。
解析:这是一个非常简单的C程序,只需要使用printf函数输出所需的字符串即可。
```c#include <stdio.h>int main() {printf("Hello World!");return 0;}```2. 习题二:编写一个C程序,计算两个整数的和并输出结果。
解析:这个程序需要使用scanf函数从用户输入中读取两个整数,并使用printf函数输出它们的和。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入第一个整数:");scanf("%d", &num1);printf("请输入第二个整数:");scanf("%d", &num2);sum = num1 + num2;printf("两个整数的和为:%d", sum);return 0;}```3. 习题三:编写一个C程序,判断一个数是奇数还是偶数并输出结果。
解析:这个程序需要使用scanf函数读取用户输入的整数,并使用if-else语句判断该数的奇偶性,然后使用printf函数输出结果。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("该数是偶数");} else {printf("该数是奇数");}return 0;}```4. 习题四:编写一个C程序,判断一个年份是否为闰年并输出结果。
C语言程序设计基础知识
THANKS
感谢观看
06
C语言常见错误和调试
C语言常见的错误类型
语法错误
逻辑错误
运行时错误
段错误
由于代码中存在语法错误, 导致编译器无法解析代码。 常见的问题包括括号不匹配
、缺少分号等。
逻辑错误是指代码在执行过 程中出现了预期之外的结果。 这类错误通常是由于算法错 误、条件语句错误或循环结
构错误引起的。
运行时错误是指在程序执行 过程中出现的错误,如数组 越界、空指针引用等。这类 错误通常是由于程序员的疏 忽或对C语言特性的不熟悉导
致的。
段错误是指程序试图访问的 内存区域不存在或不可访问, 导致程序崩溃。这类错误通 常是由于内存泄漏、数组越
界等原因引起的。
调试技巧和方法
使用调试器
调试器可以帮助程序员逐步执行代码,查看变量 的值和执行路径,从而定位问题所在。常用的C语 言调试器包括GDB和LLDB。
使用断点和单步执行
通过在调试器中设置断点,可以暂停程序的执行 ,并逐步执行代码,观察变量的变化和执行路径 。单步执行可以帮助程序员逐行检查代码,确保 代码按照预期执行。
打印输出
在关键位置添加打印语句,输出变量的值和执行 路径,帮助程序员定位问题。这种方法虽然简单 ,但对于快速定位问题非常有效。
检查内存泄漏和越界
使用内存检测工具可以帮助程序员发现内存泄漏 和数组越界等问题。这些工具可以在程序运行时 检测内存问题,并提供详细的报告和堆栈跟踪信 息。
代码优化和重构
• 优化算法:通过优化算法,可以提高程序的执行效率。选择合适的算法和数据 结构可以大大减少程序的运行时间和空间复杂度。
• 减少函数调用:过多的函数调用会增加程序的开销,可以通过减少函数调用次 数来提高程序的性能。例如,可以将一些计算密集型的操作移到循环外部,避 免重复计算。
c语言《程序设计基础》课后习题参考答案与解析
c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。
b) 一个C程序中至少应包括一个 main函数。
c) 在C语言中,输出操作是有库函数 printf( )函数完成。
二、单选题1、A2、C3、B解析:第1题答案:A 。
因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。
且到main函数结束。
第2题答案:C 。
因为 main函数没有限制必须位于程序的最前面。
C程序书写自由,一行内可写几个语句。
在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。
不过C语言本身并没有输入输出语句,输入输出是由函数完成的。
第3题答案:B。
因为一个C语言程序是由若干个函数组成的。
但至少包含一个main 函数,且main函数的位置不限。
三、编程题1、编写一个输出“Welcome to C!”信息的小程序。
解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。
海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。
*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。
*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。
C语言习题答案1-7章
程序设计基础(C语言版)习题第01章绪论一.选择题1.以下叙述中正确的是________。
A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整参考答案:D【解析】程序设计通常分为问题建模、算法设计、编写代码和编译调试四个阶段。
所以选项A)、B)、C)说法都不完整。
2.以下关于简单程序设计的步骤和顺序的说法中正确的是。
A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构参考答案:B【解析】设计一个能解决实际问题的计算机程序需要经过以下几个过程:①建立模型。
②算法设计:给出解决问题的步骤,即算法。
③算法表达:选择一种表达算法的工具,对算法进行清晰的表达。
④编写程序:选择一种程序设计语言,把以上算法程序化,这称为编写程序。
⑤程序调试:对编写好的程序进行调试,修改程序中的错误。
⑥程序文档编写与程序维护。
综上所述,B)选项是符合上述描述的,其他选项不恰当。
3.以下叙述中正确的是________。
A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句C)简单C语句必须以分号结束D)C语句必须在一行内写完参考答案:C【解析】函数是C程序的基本组成单位;C语言书写风格很自由,不但一行可以写多个语句,还可以将一个语句写在多行中。
故本题答案为C)。
4.以下叙述中正确的是。
A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句C)C程序书写格式自由,一个语句可以写在多行上D)用C语言编写的程序只能放在一个程序文件中参考答案:C【解析】在C语言中,注释可以加在程序中的任何位置,选项A)错误。
c语言程序设计基础教程课后答案
c语言程序设计基础教程课后答案C语言程序设计基础教程课后答案第一章:C语言概述1. 简述C语言的特点。
- C语言是一种结构化编程语言,具有高效、灵活、功能强大等特点。
- 它支持多种编程范式,如过程式编程、结构化编程、面向对象编程等。
- C语言具有较低的抽象级别,接近硬件,因此执行效率较高。
2. C语言的发展历史。
- C语言在1972年由丹尼斯·里奇(Dennis Ritchie)在贝尔实验室开发。
- 它最初是作为UNIX操作系统的系统编程语言而设计的。
第二章:C语言环境和基本语法1. 如何设置C语言的开发环境?- 选择一个C语言编译器,如GCC、MSVC等。
- 安装编译器并配置环境变量,以便在命令行中直接调用编译器。
2. C语言的基本语法结构是什么?- C语言的基本结构包括预处理指令、函数定义、变量声明和语句。
第三章:数据类型、运算符和表达式1. C语言中的基本数据类型有哪些?- 整型(int)、字符型(char)、浮点型(float和double)等。
2. 运算符的分类及其用法。
- 算术运算符:+、-、*、/、%等。
- 赋值运算符:=、+=、-=等。
- 比较运算符:==、!=、>、<等。
- 逻辑运算符:&&、||、!等。
第四章:控制语句1. 条件语句的用法。
- if语句用于基于条件执行代码块。
- switch语句用于多条件选择。
2. 循环语句的用法。
- while循环用于在满足条件时重复执行代码块。
- for循环用于已知迭代次数的循环。
- do-while循环先执行代码块再判断条件。
第五章:数组和字符串1. 数组的基本概念和使用。
- 数组是相同数据类型的元素集合,存储在连续的内存位置。
- 声明数组:int arr[10]; 表示一个包含10个整数的数组。
2. 字符串的表示和操作。
- 在C语言中,字符串是以空字符('\0')结尾的字符数组。
- 使用标准库函数如strcpy、strlen等操作字符串。
C语言程序设计基础知识要点
01.C程序根本构造一、C语言的特点:1、C语言源程序的根本组成单位是函数;一个C程序可由假设干个函数组成,其中必须有且仅有一个以main命名的主函数,其余的函数名称可由编程者自行设定。
,2、C程序的执行总是由main()函数的第一个可执行语句开场,到main〔〕函数的最后一个可执行的语句完毕;而其他函数都是在main〔〕函数开场执行以后,通过其他函数的调用才得以运行。
3、C语言系统提供了丰富的库函数,用户在程序中需要调用某个库函数时,必须用#include编译预处理命令将描述该库函数的头文件包含进去。
二、C程序的书写格式:1、语句可从分开放在任意多行内;如:printf(“To C,〞);printf(“ or not to C:〞);与printf(“To C , or not to C:〞);是等价的2、一行中可以有假设干个语句;如:a=123;b=345;3、每个语句和数据定义的最后必须有一个分号;三、C语言程序的运行:1、编译(pile):将C源程序文件翻译成能被计算机识别的二进制形式的“目标〞文件;编译时,编译器将检查源程序每一条语句的语法错误。
2、建造(Bulid):C语言程序例如:显示“Hello〞#include<stdio.h>int main(void){printf(“Hello.\n〞);return 0;}说明:#include<stdio.h> 是必不可少的,它包含了C语言标准输入输出库的相关信息;printf函数来自〞标准输入输出库〞,可以产生格式化输出;\n 告诉printf函数执行完信息显示后要进展换行操作;return 0 说明程序终止时会向操作系统返回值0;{ }来标出main〔〕函数的起始和完毕。
02.数据类型一、C语言的特点:1、C语言源程序的根本组成单位是函数;一个C程序可由假设干个函数组成,其中必须有且仅有一个以main命名的主函数,其余的函数名称可由编程者自行设定。
陈应祖c语言程序设计基础教程
陈应祖c语言程序设计基础教程
陈应祖C语言程序设计基础教程提供了一个全面的学习C语言编程的指导。
本教程将帮助初学者掌握C语言的基本概念、语法和编程技巧。
在陈应祖C语言程序设计基础教程中,学习者将首先了解C语言的基本构造
和数据类型。
教程详细介绍了整型、浮点型、字符型等不同的数据类型,以及如何声明和使用它们。
此外,教程还解释了变量、常量和运算符的概念,并提供了许多实例帮助学习者理解这些概念。
接下来,教程将引导学习者学习如何使用控制语句和循环结构来编写C语言程序。
学习者将了解if语句、switch语句和循环语句(如for循环、while循环和do-while循环)的用法和语法。
陈应祖在教程中提供了大量的例子和练习题,以帮助
学习者加深对这些语句和结构的理解和应用。
此外,陈应祖C语言程序设计基础教程还介绍了函数的概念和使用。
学习者将学习如何声明函数、调用函数和传递参数。
教程详细阐述了函数的定义和返回值类型,并提供了一些实例演示如何编写和使用函数。
教程的最后一部分介绍了C语言的指针和数组。
学习者将学习指针的基本概念和用法,以及如何在程序中使用指针进行内存操作。
教程还详细解释了数组的概念和使用方法,并介绍了如何在函数中传递数组和使用多维数组。
总的来说,陈应祖C语言程序设计基础教程是一个循序渐进的学习资源,适合初学者入门C语言编程。
通过学习这个教程,学习者将建立起扎实的C语言基础,并能够编写简单的C语言程序。
无论是对于计算机科学专业的学生,还是对于对
编程有兴趣的个人,本教程都是一个非常有价值的学习资料。
《C语言程序设计》基本知识点
《C语言程序设计》基本知识点《C语言程序设计》是计算机专业的基础课程之一,本文将介绍C语言程序设计的基本知识点,包括语法、数据类型、运算符、控制语句、函数、数组、指针等,并对每个知识点进行详细的解释。
一、语法1.注释:C语言支持单行注释(以“//”开头)和多行注释(以“/*”开头,以“*/”结尾)。
2.标识符:用于给变量、函数、结构体等命名的名称,规则包括必须以字母或下划线开头,可以包含字母、数字和下划线,长度不超过31个字符。
3.分号:用于分隔语句,每条语句的最后都需要加上分号。
二、数据类型1. 基本数据类型:包括整型(int)、浮点型(float/double)、字符型(char)及空类型(void)。
2. 修饰符:用于修改基本数据类型,包括长短修饰符(long/short)、无符号修饰符(unsigned)和有符号修饰符(signed)。
3.枚举类型:用于定义一组常量。
4.转义字符:用于表示一些特殊字符,包括换行符(\n)、制表符(\t)等。
三、运算符1.算术运算符:包括加法(+)、减法(-)、乘法(*)、除法(/)和取模运算(%)。
2.关系运算符:用于比较两个值的大小,包括等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)和小于等于(<=)。
3.逻辑运算符:用于连接多个条件,包括与(&&)、或(,)和非(!)。
4.位运算符:对二进制位进行操作,包括与(&)、或(,)、异或(^)、左移(<<)和右移(>>)。
四、控制语句1. 条件语句:包括if语句和switch语句,用于根据条件执行不同的代码块。
2. 循环语句:包括for循环、while循环和do-while循环,用于重复执行一段代码。
3. 分支语句:用于改变程序的执行路径,包括break语句和continue语句。
五、函数1.函数定义:由返回类型、函数名、参数列表和函数体组成。
《C语言程序设计基础》课程教学大纲
《C语言程序设计基础》课程教学大纲一、课程性质、地位和任务《C语言程序设计基础》是计算机类、电子信息类、自动化类等专业必修的基础课程。
C语言具有简洁、类型丰富、结构完整、表达力强、直接操作内存单元、适用于模块化结构等特点,由于它的显著优点,C语言成为许多学校学生学习编程的入门课程。
并且是数据结构、Java、python、单片机等课程的先导课程。
课程的主要任务是引导学生进入精彩的计算机世界,掌握程序设计思维、过程和技巧。
培养学生动手解决问题的能力和创新精神。
二、教学目标及要求通过理论和实践教学,使学生较好地掌握程序设计的基本知识和结构化编程的思想和方法;能够独立或者与其他人合作编写较为复杂的程序;具备初步的程序设计能力,能够灵活运用模块化思想将复杂问题逐步分解,并且编写出相应的程序解决问题。
三、教学内容及安排第一章 C语言概述(2学时)教学目标:掌握C程序的基本结构、熟悉C语言集成开发环境、了解C语言学习方法。
教学内容:1 程序与程序设计语言2 C语言概述3 C语言学习方法4 C语言集成开发环境5 项目介绍6 C语言程序基本结构第二章数据类型、运算符和表达式(4学时)教学目标:掌握数据类型的概念、基本数据类型、变量的定义与使用。
教学内容:1数据类型概述2 常量与变量3 基本数据类型4 运算符、表达式与语句5不同数据类型之间的转换第三章选择结构(4学时)教学目标:掌握关系、逻辑表达式的用法,掌握选择语句的用法。
教学内容:1 关系运算符与关系表达式2 逻辑运算符与逻辑表达式3 if语句4 switch语句5 案例分析第四章循环结构(4学时)教学目标:掌握程序设计中循环的四个要素,掌握for,while,do-while语句的用法,了解break,continue在循环语句中的作用。
教学内容:1 循环结构简介2 while语句3 do-while语句4 for语句5 break语句6 continue语句7嵌套语句8应用举例第五章数组(4学时)教学目标:理解数组的概念,掌握数组的定义和引用。
C语言程序设计基础
C语言程序设计基础C语言程序设计基础一( 程序设计基础1. C程序基本单位是函数2. C程序只有一个主函数main(),其余都是子函数3. C程序必须包含标准库函数的头文件stdio.h4. C程序从主函数main()开始执行5. C语言区分字母大小写,程序使用英文小写字母书写。
一般符号常量或特殊用途使用大写字母。
二( 标示符、常量、变量1. 标示符(1).规则:由字母、数字和下划线三种字符组成,且第一个字符必须是字母或下划线。
(2).注意:标示符区分大小写,习惯上变量名用小写字母表示,符号常量一般使用大写字母表示。
关键字是具有特殊意义的标示符,已被C语言自身使用,不能用作变量名、常量名、函数名等。
2(常量).整形常量:包括正整数、负数和零。
(1十进制:0~9八进制:0~7,前缀必须是数字0十六进制:0~9、a~f(A~F),前缀是0x(2).实型常量:即浮点型表示方式:小数形式:指数形式:规定E之前必须有数字,后面指数必须是整数 (3).字符常量:括在一对单引号中的一个字符——一个字节转义字符常量:以一个“\”开头的字符序列(4).字符串常量:括在一对双引号中的字符序列——两个字节储存时,系统在每个字符串尾自动加上一个‘\0’作为字符串结束标志 (5).符号常量:用一个标示符表示的常量使用前必须先定义。
符号常量一般使用大写字母。
3(变量(1).整形变量:用补码表示(2).实整形:即浮点型Float:4个字节Double:8个字节(3).字符型变量:1个字节‘A’65 ‘a’ 97 ‘0’48三( 运算符、表达式1(算数运算符和表达式:双目优先级:()、++、--、*、/、%、=、-%:参与运算的值必须是整数,且求余结果的符号与被除数相同。
注意:两个整数相除,结果可能是浮点数,但输出是整数若运算符两边数据类型不一致,系统按自低向高自动进行数据类型转换2(赋值运算符和表达式=左边必须是变量*=、/=、%=、<<=、>>=、&=、^=、|= 复合赋值运算符:+=、-+、3(自增、自减运算符和表达式:单目++i 先加后用 i++ 先用后加--I 先减后用 i—先用后减4(关系运算符和表达式:非0为真,0为假优先级:>、<、>=、<=、==、~=5(逻辑运算符和表达式&&:遇0则0||:遇1则1~:求反,单目优先级:~、&&、||6(条件运算符和表达式:唯一的三目先运算条件,为真,计算表达式1,为假,计算表达式27(逗号运算符和表达式:级别最低最后一个表达式的值就是该括号表达式的值 8(其他数据长度运算:sizeof(<数据说明符>/<变量名>)——求所占字节数取地址运算符:&<变量名>——求其变量地址括号运算符:()优先级最高数组表达运算符:[]——表数组元素的个数优先级最高优先级:自增、自减>算术>关系>逻辑>条件>赋值>逗号四( 基本语句和输入输出语句1(数据输入(1).标准格式输入函数scanf()(2).字符输入函数getchar()(3).字符串输入函数gets()2(数据输出(1).标准格式输出函数printf()(2).字符输出函数putchar()(3).字符串输出函数puts()。
C语言程序设计基础
(e)
是 c>max
否
cmax
空
(f)
输入a、b、c
S2.1 是
a>b
否
amax bmax
S2
是 c>max
cmax
空
否
S2.2
输出max
(g)
21
2.2 数据类型
数据类型决定了数据对象旳存储形式、取值范围以及能进行
旳运算。在C语言中,数据类型一般涉及基本数据类型、构造
数据类型、指针类型和空类型等四大类。
(3) N-S图(盒图)
针对流程图存在旳缺陷,I. Nassi和B. Shneiderman提出 了构造化程序设计旳流程图,称为N-S图,更能体现构 造化程序设计旳思想。推荐使用N-S图。
N-S图完全去掉了流程线,算法旳全部处理环节都写在 一种大矩形框内(表达简朴、符合构造化思想)(象堆 积木)
构造化程序设计旳三种基本构造 ——顺序构造、选择构造、循环构造
1n n≤10 n+ss
n+1n
输出s
17
2.1 算法与程序设计环节
一、算法及其表达
(3) N-S图(盒图)
将 求10个任意整数中旳最 大数 用N-S图进行描述。
输入max 1n
n<10 输入x
T x>max? F
xmax n+1n
输出max
18
2.1 算法与程序设计环节
二、程序设计环节
根据实际问题设计应用程序大致要经过下列四个环节: ➢分析问题 ➢画流程图或N-S图 ➢编写程序 ➢运营并调试程序
一种程序应涉及两个方面旳内容:
• 对数据旳描述:数据构造(data structure) • 对操作旳描述:算法(algorithm)
C语言程序设计入门
基本内容
C语言简介 最简单的C程序 程序设计基本过程 C程序的运行环境 本章小结
C语言简介
➢ C语言就是世界上最流行、使用最广泛得高级程序设计语
言之一。它既具有高级语言得特点,又具有汇编语言得特点。
➢ 1972-1973年由美国贝尔实验室得D、M、Ritchie 与Ken
Thompson推出得具有很好移植性得与多种数据类型得C语言。
“ Win32 Console Application ” ;
在右上图中得Location 栏中填入所建工程得位置,在
Project 栏中填入工程名字,然后点击“OK”;
在左下图中单击Finish,在右下图中单击OK;
在左下图得显示中选择“”,在右下图得File中选择 “ C++
Source File ” ,在File框中填入文件名,并单击OK;
将上述程序代码在计算机上运行,得到得正确结果 就是5050,若程序有错误,包括编译错误与逻辑错误, 都不能得到正确得结果。
运行维护
运行维护就是程序设计得后援。其根本任务就是对已投入 使用得计算机应用程序系统进行有效监控,及时发现与解决它 在运行过程中所出现得各种问题,并根据用户得要求对它进行 调整与修改,以适应新情况、满足新要求。
释;一种就是以“/*”开始,以“*/”结束得块式注释。
例2:求两个整数得乘积
#include <stdio、h> int main() {
int a,b,sum; asc=a5n;f(b"=%9;d%d",&a,&b); sum=a * b; printf("a*b=%d\n",a,b,sum); return 0; }
C语言程序设计基础教程习题答案
习题答案第1章1.1 填空题1.1.1 应用程序ONEFUNC.C中只有一个函数,这个函数的名称是__main 。
1.1.2 一个函数由__函数头__和__函数体__两部分组成。
1.1.3 在C语言中,输入操作是由库函数__scanf 完成的,输出操作是由库函数_printf_完成的。
1.1.4 通过文字编辑建立的源程序文件的扩展名是_.c__;编译后生成目标程序文件,扩展名是__.obj__;连接后生成可执行程序文件,扩展名是_.exe_;运行得到结果。
1.1.5 C语言程序的基本单位或者模块是__函数__。
1.1.6 C语言程序的语句结束符是_;___。
1.1.7 编写一个C程序,上机运行要经过的步骤:______________________________。
1.1.8 在一个C语言源程序中,注释部分两侧的分界符分别为_/*__和__*/__。
1.1.9 C语言中的标识符只能由三种字符组成,它们是字母、数字和下划线。
且第一个字符必须为字母或下划线。
1.1.10 C语言中的标识符可分为关键字、预定义标识符和用户标识符3类。
1.2 选择题1.2.1 一个C程序的执行是从( A )。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束1.2.2 以下叙述不正确的是(C)。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C) 在C程序中,注释说明只能位于一条语句的后面D) C程序的基本组成单位是函数1.2.3 C语言规定:在一个源程序中,main函数的位置( C )。
A)必须在程序的开头B)必须在系统调用的库函数的后面C)可以在程序的任意位置D)必须在程序的最后1.2.4 C编译程序是(A)。
A)将C源程序编译成目标程序的程序B)一组机器语言指令C) 将C源程序编译成应用软件D) C程序的机器语言版本1.2.5 要把高级语言编写的源程序转换为目标程序,需要使用(D)。
2009-20010学年第2学期《C语言程序设计基础》考试题(A)
2009-20010学年第2学期期末考试试题(A)卷课程名称《程序设计基础(C语言)》任课教师签名集体出题教师签名姬涛审题教师签名吕涛考试方式(闭)卷适用专业本部非计算机本科考试时间(120 )分钟一、单项选择题(每题1分共30分)请将单项选择题答案填在下面表格中:A) 2x33 B) _2X C) x.y D) #x22.下列浮点数的表示中不正确的是▁▁▁A) 107. B) 12E5 C) e5 D) 12e53.下列不正确的转义字符是▁▁▁A)'\\' B)‘\"’ C) '\n' D) '\091'4.下列运算符中优先级最低的是。
A) 算术运算符 B)关系运算符 C)赋值运算符 D)逗号运算符5.若有以下定义和语句,则输出结果是▁▁▁int u=010,v=0x10,w=10;printf(“%d,%d,%d\n”,u,v,w);A)8,16,10 B)10,10,10 C)8,8,10 D)8,10,10 6单精度数x=2.0,y=3.0,下列表达式中y的值为7.0的是▁▁▁▁▁A) y/=x*27/4 B) y+=x+2.0C) y-=x+8.0 D) y*=x-3.07.有整型变量x,双精度变量y=3.5,表达式:x=(double)(y*3+((int)y%4))执行后,x的值为▁▁▁A) 11 B) 11.5 C) 13 D) 13.58. 设有int a=3; 则表达式(a++ * 1/2) 的值是▁▁▁▁▁▁A)1 B)1.0 C)1.5 D)29. 下面程序的输出是。
#include <stdio.h>void main( ){ int x=0,y=1,z;z=(x++<=0)&&(!(y--<=0));printf("%d %d %d\n", x,y,z);}A) 0 0 1 B) 0 1 1C) 1 0 1 D) 1 1 110. 已知小写字母a的ASCII码为97,大写字母A的ASCII码为65,若有以下定义和语句则输出结果是char c1='b',c2='d';printf("%d,%c\n",c2-c1,c2-'a'+’A’);A)2,d B)2,DC)3,D D)输出结果不确定11.若从键盘上输入3,则程序的输出结果是。
C程序设计基本知识
C程序设计基本知识C语言是计算机高级语言。
它作为系统描述语言,可以用来编写系统软件和应用软件。
它是一种兼备一般高级语言和低级语言优点的语言。
C程序的编译系统一般是Visual C++6.0 这种编译系统既可编译C语言编写的程序,也可以编译C++语言编写的程序。
所以要在建立程序文件时将后缀写成“.c”一个程序应包括两方面的内容,一是对数据的描述即数据结构,二是对操作的描述即操作步骤,又称算法。
C语言程序算法有3种基本结构,即为顺序结构,选择结构和循环结构。
下面举个简单的例子介绍一下C语言程序。
例输入以下信息#include<stdio.h>viod main()//求两数之和的函数{int a,b,sum;//声明整型变量a,b,suma=123;//以下为C语句执行部分b=456;sum=a+b;printf("sum is%d\n",sum);}本程序的功能是求a与b的和值。
右边有“//”的部分是注释部分,是为了程序的可读性而特意加上的,不会对程序的编译和运行起任何作用。
由以上可看出:1C程序至少且仅有一个main函数(即主函数)。
由于函数是C程序的基本单位,所以调用的函数可以是库函数里的,也可以自己编写。
2 由于至少要调用main函数,则在函数最开始要加上“#include<stdio.h>”3 函数由函数名和函数体构成。
函数体即是有“{}”括起来的部分,包括声明部分和执行部分。
且必须先声明后使用。
4 每个语句和声明后必须有“;”以上为C语言程序最基本的要求,还有关于数据类型和算法的介绍将在以下部分加以解释。
1 基本数据类型1.1常量与变量在运行过程中,不能被改变的量成为常量。
如数字常量:2;-10;-3.7 字符常量:’a’;’2’符号常量 #define PI 3.14159 字符串常量:“a”;“2”变量代表内存中具有特定属性的一个存储单元,它用来存放变量的值,在程序运行期间,这些值是可以改变的。
C语言程序设计教程课件:C语言程序设计基础
C语言程序设计基础
安装结束后,在Windows“开始”菜单的“程序”子菜 单中就会出现Microsoft Visual C++ 6.0菜单项。在需要使用 Visual C++时,只需从电脑上选择“开始”→“程 序”→“Microsoft Visual C++ 6.0”→“Visual C++6.0”(也 可以从桌面快捷方式或其他方式进入)即可启动Visual C++ 6.0。启动后,此时屏幕会短暂显示Visual C++6.0的版权页, 随即显示Visual C++6.0的主窗口(如图1-1所示)。
C语言程序设计基础
3.预定义标识符 预定义标识符是一类具有特殊含义的标识符,用于标识 库函数名和编译预处理命令。系统允许用户把这些标识符另 做他用,但这将使这些标识符失去系统规定的原意。为了避 免误解,建议不要将这些预定义标识符另做他用。 C语言中常见的预定义标识符有以下几种。 (1) 编译预处理命令,包括define, ifdef, ifndef, endif, include, line, if, else等。 (2) 标准库函数,包括数学函数sqrt, fabs, sin, pow等,还 有输入/输出函数scanf, printf, getchar, putchar, gets, puts等。
C语言程序设计基础
c语言程序设计基础知识点
c语言程序设计基础知识点《C语言程序设计基础知识点》一、C语言简介C语言是一种计算机编程语言,它具有高效、简洁、面向对象能力,并且拥有十分易学的特性。
它是一种编译语言,源代码经过编译器编译以后生成一个可执行的可重用的程序文件,它是一种优秀的软件开发语言。
C语言的主要特点:1、C语言是编译型语言,编译速度快、程序执行速度快;2、C语言易学易用,是众多程序语言中最容易学习的;3、C语言灵活性强,可以调用很多库函数,可以实现大型程序;4、C语言提供了大量内建标准库,能够提高开发效率,程序也更容易被其他程序员理解;5、C语言有完备的程序设计实践经验,能够实现复杂的设计任务;6、C语言丰富的程序库,广泛应用于科学计算和数据处理方面;7、C语言应用广泛,在各种系统设计程序和各种应用程序中都有使用;8、C语言拥有小型机和微处理器的优势,可以实现简单的驱动和控制程序。
二、C语言基础知识1、C语言的基本概念C语言特点C语言的特点是它具有灵活性和易用性。
它是功能强大的程序设计语言,可用于开发几乎任何程序,包括图像处理、科学计算等应用程序,也是一种优秀的软件开发语言。
C语言结构C语言是以函数为基础的程序设计语言,所有的C程序都必须有一个主函数,也就是main函数。
该函数是程序的入口,它定义了程序的实行步骤。
C语言变量变量是程序中使用的一类名称,它在程序运行的过程中扮演着重要的角色,是程序执行的基础。
C语言中定义变量的语法和语句有着严格的规定,在定义变量时必须先声明变量的类型,再对变量进行定义和初始化操作。
C语言指针指针是C语言最重要的特性之一,它可以用来访问内存中的内容,是编程的一种很有效的手段。
指针也是C语言中比较难以理解的概念,因为指针比较容易出错,操作指针容易出错,因此在使用指针时要特别小心。
C语言关键字关键字是C语言中最基本的元素,它有着固定的含义,而且不能被改变,关键字有助于C语言表达式更清楚地被理解,最重要的是,它可以将模糊的表达式转换成一个明确的概念。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
char a='z'; char b='e'; char c='n'; char d='g'; char e='c'; char f='o'; char g='b'; char h='r'; char i='a';
描述完整信息 时,变量定义 太多,使用不 方便
Z
E
N
G
C
O
B
R
A
字符串
字符数组是存放字符型数据的数组,其中每个数组元素存放的值都是单 个字符. 字符串是程序设计中必不 可少的一种数据类型,它 是由若干个字符组成的, 并且用双引号括起来表示. 在有效字符后,最后一个 字符是结束标记('\0').
张 三
\0
中文常用汉字太多,没有办法象英 文那样用一个字节即256个数字就 能描述所有英文所需要的字母,数 字,符号等
所以计算机中的中文通常是采用2个字 节即64K个数字,来描述中文的一些常 用汉字,数字,符号等.
字符串与字符数组
在C语言中没有专门的字符串变量,通常用一个字符数 组来存放一个字符串 字符数组和字符串的区别是:字符串的末尾有一个空字 符 '\0' 手工加入一个空字符 字符串可按如下方式声明并初始化: char name[15]={ 'z', 'e', 'n', 'g', 'c', 'o','b','r','a' '\0'}; char name[15] = "zengcobra"; char password[ ] = "12345678";
字符数组示例(二)
#include "stdio.h" void main() { char s1[40]; printf("%s","请输入员工姓名,回车键结束\n"); 请输入员工姓名,回车键结束 请输入员工姓名 scanf("%s",s1); //经过相应的计算得到员工的工资,这里假设为. 经过相应的计算得到员工的工资,这里假设为. 经过相应的计算得到员工的工资 printf("%s","员工姓名:"); 员工姓名: 员工姓名 printf("%s",s1); printf("%s","\n员工工资:"); 员工工资: 员工工资 printf("%.2f",3000.0); return 0; } /*控制输出,仅输出两位小数*/ 控制输出,仅输出两位小数 控制输出
字符串结束符
H
e
l
l
o
W o
r
l
d
\0
中文字符串
Z E N G C O B R A \0
英文可以用一个字节即 256个数字就能描述所 有英文所需要的字母, 数字,符号等
九个英文字母所占据的 9个字节加上1个字符串 结束标记'\0',共10个 字节. 两个汉字所占据的4个字 节加上1个字符串结束标 记'\0',共5个字节
第十章
预处理命令
回顾
函数的作用 函数的声明格式和各部分作用 函数中的实参和形参的区别 函数的调用
目标
字符信息在计算机中的描述 字符信息的存储方式 字符信息的处理函数
字符串
字符变量可 以存储字符
char a='Y'; char a='N';
字符型数组可以存放若 干个字符,这些字符合 在一起代表一个完整的 语义,如员工的名字, 而这一组字符就被称作 为字符串 字符串. 字符串
字符串处理函数(二)
strcpy(字符数组,字符串) strcpy(字符数组,字符串) 字符数组 将一个字符串中的所有字符复制到另一个字符串中
目的字符串的长度必须事先定义 好,而且还要足够大.像这样的 定义是不行的:
即便在目的字符数组声明时指定 了长度,也要保证长度足够大, 能容纳得了原字符串.否则就会 出现运行时错误.
printf("连接之后的字符串:%s\n",s1); 连接之后的字符串: 连接之后的字符串 }
字符串处理函数(三)
字符串连接函数使用时,重要的一点是作为第一个参数的字符 数组要足够大,大到能够存放连接后产生的新字符串,否则将 产生编译错误:array bounds overflow,表明数组越界.即声 明的数组无法存储连接的字符串.同时也要注意数组声明时, 长度为两个代连接字符串有效字符个数的基础上加1
size_t实际上是在string.h头文件中定义的 unsigned无符号整数类型,意味着函数的返回 值即所求得的字符串的长度为非负数.
strlen示例(一)
#include "stdio.h" #include "string.h" int main() { char s1[]="zengcobra"; char s2[]={'z','e','n','g','c','o','b','r','a'}; char s3[]={'z','e','n','g','c','o','b','r','a','\0'};
size_t length=strlen("zengcobra"); printf("字符串zengcobra的长度:%d\n",length); length=strlen(s1); printf("用字符串初始化数组的长度:%d\n",length);
strlen示例(二)
length=strlen(s2); printf("用单个字符依次初始化数组中元素的数组长度:%d\n",length); length=strlen(s3); strlen函数计算字符串长度时,类似 printf("用单个字符依次初始化数组中元素,并手动加上字符串结束标记的数 于我们使用%s格式控制符输出数组 组长度:%d\n",length); 中的字符串,它不会事先计算数组 中字符串的长度,只是单纯的依次 getchar(); 读取数组中的元素,直到遇到字符 return 0; 串结束标记 }
二维字符数组示例(二)
scanf("%s",poem[length]); if(poem[length][0]=='#') break; } printf("\n\n %s\n",poem[0]); printf(" ---%s\n",poem[1]); /*判断第length行的第0个元素是不是为#, 如果是则退出*/
格式描述串中使用转意 字符%s,代表输入的 是字符串
字符串处理函数(一)
与字符串有关的内置函数在头文件string.h中定义 要使用标准库字符串处理函数,程序前应该包含: #include <string.h>
size_t类型 strlen(字符串) size_t类型 strlen(字符串) 测试指定字符串的长度除字符串结束标记外的所有字 符的个数.
字符串处理函数(二)
strcpy(字符数组,字符串) strcpy(字符数组,字符串) 字符数组 #include "stdio.h" #include "string.h" void main() 第二个参数作为原字符串可以是字符串,也可 以是包含字符串的字符数组;第一个参数作为 { 目的地只能是存储字符串的字符数组. char source[]="zengcobra"; char destin[40]; strcpy(destin,source); //必须事先指定数组的长度 必须事先指定数组的长度 //将原数组中的内容写入到目的数组中 将原数组中的内容写入到目的数组中 将一个字符串中的所有字符复制到另一个字符串中
比如第一个字符串为"zengcobra "包含10个有效字符,而第二个字符 串"is a nice guy"包含13个有效字符,那么数组长度必须要设定为24个元 素.否则就会出现运行时错误:
二维字符数组
知道了二维数组作为一个整体,能够存储更大的数据量,并且 代表更加复杂的语义.其实二维数组比较多的应用是在字符串 的应用中.我们可以通过二维字符数组来表示若干个具备整体 意义的字符串. 悄 正 我 作 悄 如 轻 别 的 我 轻 西 我 轻 的 天 走 轻 招 的 了 的 手 云 , 来 , 彩 . ;
我们可以认为每一句诗作为一个一维字符数组,然后将四个一维 数组合并在一起形成一个二维数组,数组中的每一行就是一句诗
二维字符数组示例(一)
#include "stdio.h" int main() { char poem[10][40]; int length; printf("请输入诗的名字\n"); scanf("%s",poem[0]); printf("请输入作者的名字\n"); scanf("%s",poem[1]); printf("请输入诗句,每输入一句请敲击回车键,结束请敲击#键\n"); for(length=2;length<10;length++) { //利用scanf函数,对二维数组中的一行赋值