第2章C简单程序设计-
答案第二章 C语言程序设计的初步知识
第二章 C语言程序设计的初步知识一、选择题1.在C 语言中,下列类型属于构造类型的是 D 。
(0级)A)整型B)字符型C)实型D)数组类型2.在C 语言中,下列类型属于构造类型的是D 。
(0级)A)空类型B)字符型C)实型D)共用体类型3.在C 语言中,下列类型属于构造类型的是 D 。
(0级)A)整型B)指针类型C)实型D)结构体类型4.在C 语言中,下列类型属于基本类型的是 A 。
(0级)A)整型、实型、字符型B)空类型、枚举型C)结构体类型、实型D)数组类型、实型5.下列类型属于基本类型的是 C 。
(0级)A)结构体类型和整型B)结构体类型、数组、指针、空类型C)实型D)空类型和枚举类型6.下列字符串属于标识符的是 A 。
(0级)A)INT B)5_student C)2ong D)!DF7.下列字符串属于标识符的是 A 。
(0级)A)_WL B)3_3333 C)int D)LINE 38.下列字符串不属于标识符的是 D 。
(0级)A)sum B)average C).day_night D)M.D.JOHN9.下列字符串不属于标识符的是 D 。
(0级)A)total B)lutos_1_2_3 C)_night D)$ 12310.下列字符串不属于标识符的是D 。
(0级)A)_above B)all C)_end D)# dfg11.C语言中不能用来表示整常数的进制是 D 。
(0级)A)十进制B)十六进制C)八进制D)二进制12.C语言中能用来表示整常数的进制是 A 。
(0级)A)十进制、八进制、十六进制B)十二进制、十进制C)六进制、八进制D)二进制、十进制13.在C语言中,回车换行符是 A 。
(0级)A)\n B)\t C)\v D)\b14.在C语言中,退格符是 D 。
(0级)A)\n B)\t C)\v D)\b15.在C语言中,反斜杠符是 D 。
(0级)A)\n B)\t C)\v D)\ \16.在ASCII码表中可以看到每个小写字母的ASCII码比它相应的大写字母的ASCII 码 A 。
C语言程序设计教案第2章4 -6
(3)关系或逻辑表达式的值只有两个:真(非零)和假(零)。
(4)分析复杂表达式时,应先找优先级别最高的运算符,同时,注意”()”的优先级别很高,它往往可以改变表达式的运算次序。通过分析复杂表达的运算逻辑,推导出短路原则。
(5)编写一个输出复杂表达式的值及每个参与变量的值的程序。预估程序结果,然后与实验结果对比,从而深入理解短路原则及表达式的运算规律。
【问题】ppt中的程序有哪些错误
【实践】基于强制类型范围缩放数据处理技术的成绩分档程序的设计与实现
授课阶段总结
本节内容以实践为主,以当前所学的知识点,学生可以组织起一个逻辑上相对完整的程序,所以本小节以程序设计思维的训练为重点内容。首先,引导学生设计一个可以进行人机交互的界面—编写一个计算器的菜单,通过选择进行计算,把第一章的计算语句copy到适当的位置(增量开发)。然后,运用本章的知识点,设计具有一定的容错能力和设计技巧(强制类型转换与归一化处理)的学生成绩分档程序。两个例子都用到了本章所介绍的if和switch嵌套句型。
2.4 应用实例(1学时)
教学内容
(1)计算器程序设计。
(2)强制类型转换。首先讲解数据类型之间的转换规则,然后讲解转换的方法及用途。
(3)学生成绩档案管理—成绩等级划分。
讲解思路
(1)本小节主讲设计思想,所以每一个例题都必须有流程图来表达设计思想,通过讲解流程图帮学生梳理思路。然后,把对编程实现时用到技巧及难点进行讲解。
(2)掌握switch多路选择语句,在解决问题时,能够正确选择switch和if语句。
(3)掌握选择语句的流程图的算法描述方法
重点:if选择结构和switch选择结构。
C语言程序设计(谭浩强版)第二章
不应是中断程序的执行,而应是返回一个
表示错误或错误性质的值,以便在更高的
抽象层次上进行处理。
算法设计的原则
4.高效率与低存储量需求
通常,效率指的是算法执行时间; 存储量指的是算法执行过程中所需 的最大存储空间, 两者都与问题的规模有关。
算法设计的原则
算法的时间复杂度
第二章 程序的灵魂——算法
2.1 算法的概念 2.2 算法的简单举例
2.3 算法的特性 2.4 怎样表示一个算法 2.5 结构化程序设计方法
算法的概念
计算机应用: 提取数学模型—设计算法— 编程—测试—应用
程序设计=数据结构+算法
数据结构:对数据的描述 算法:对操作的描述 除此之外程序设计还包括:程序设计方法, 和程序设计语言
怎样表示一个算法
例4的伪代码表示法如下 开始 读入整数n 置sum的初值为0 置k的初值为1 执行下面的操作: 如果k为奇数,置item=1/k 如果k为偶数,置item=-1/k sum=sum+item 直到k>n 打印sum的值 结束
算法设计的原则
算法设计的原则
设计算法时,通常应考虑达到以下目标: 1.正确性 2.可读性 3.健壮性 4.高效率与低存储量需求
从算法中选取一种对于所研究的问题 来说是 基本操作 的原操作,以该基 本操作 在算法中重复执行的次数 作 为算法运行时间的衡量准则。
结构化程序设计方法
采用结构化算法写成的计算机程序是结构 化程序。要编写出结构化程序,经常采用 的方法是结构化程序设计方法。这种方法 的基本思路是: 把给定的问题按层次(纵方向)、分阶段 (横方向)分解为一系列易于编程解决的 小问题,然后对应着这些分解的小问题, 设计结构化的算法,最后采用语言将算法 描述出来。这样一种程序设计方法就是结 构化程序设计方法。
c语言与程序设计-第2章课后习题参考答案
2.1 下列哪些是词法记号?关键字(是)注释空白符八进制常量(是)三字符序列字符串常量(是)括号(是)2.2 C编译器可将下列每一个源字符串分解为哪些记号?(不必考虑记号组合是否合法)(1)x+++y x, ++, +, y(2)-0xabL -, 0xabL(3) 2.89E+12L 2.89E+12L(4)"String+\"FOO\"" " String+ \"FOO\""(5)x**2 x, *, *, 2(6)"X??/" "X??/"(7)a?b a, ?, b(8)x--+=y x, --, +=, y(9)intx=+10 intx, =, +, 10(10)"String""FOO" "String", "FOO"(这道题当时改的时候有几个小题改得有错误,注意!)2.3 下列哪些不是标识符,为什么?标识符由字母、数字和下划线组成,但首字符必须是字母或下划线。
4th 不是,以数字开头;sizeof 不是(标准C的关键字)_limit 是_is2 是xYshould 是x*y 不是,* 非法o_no_o_no 是temp-2 不是,- 非法isn't 不是,' 非法enum 不是(标准C的关键字。
注:关键字也称为保留字,是被系统赋予特定含义并有专门用途的标识符。
关键字不能作为普通标识符,但可以作为宏名。
所有预处理均发生在识别这些关键字之前。
)2.4 在下列表示中,哪些是合法常数,哪些是非法常数?对于合法常数,指出其类型;对于非法常数,说明其错误原因。
2L 合法,long长整型''' 不合法,单引号组中的单引号前需要转义字符.12 合法,double双精度浮点型0x1ag 不合法,g不是16进制数中的符号,也不表示任何类型33333 合法,int整形"a" 合法,字符串常量"" 合法,字符串常量0.L 合法,long double长双精度浮点型E20 不合法,缺少尾数部分0377UL 合法,unsigned long无符号长整型'\18' 不合法,存在非8进制位'\0xa' 不合法,不符合十六进制字符码表示规则\xhh0x9cfU 合法,unsigned int无符号整形'\45' 合法,char字符型1.E-5 合法,double双精度浮点型'\0' 合法,char字符型3.F 合法,float浮点型"3'4"" 不合法,缺少转义符'"' 合法,char字符型(P35,双引号作为字符常量时既可用图形符号也可用转义序列表示)'\a' 合法,char字符型2.6 以下的变量声明语句中有什么错误?(1)int a; b = 5; 第一个分号改为逗号int a, b=5;(2)doubel h; 关键字错误double h;(3)int x = 2.3; 类型错误float x = 2.3;(4)const long y; 需要赋初值const long y = 0;(5)float a = 2.5*g; g未定义变量int g = 1; float a = 2.5*g;(6)int a = b = 2; b未定义变量int a = 2, b = 2;2.7 设变量说明为:int a = 1, b = 2, c = 3, d;double x = 2.0; y = 7.7;请给出下列表达式的值。
第二章C语言基础-语句-编写简单的C程序
C 语 言 程 序 设 计
putchar函数
调用格式为: putchar(表达式); 功能:将指定表达式的值所对应的字符输出到标准输出设备上
参数 字符变量 字符常量 数值常量 转义序列 函数 putchar(c) putchar(‘#') putchar('5') putchar('\n') 效果 显示字符变量 c 的内容 显示字符# 显示字符# 显示数字 5 在光标位置插入回车
关键是如何分离个位、十位、百位数字? 关键是如何分离个位、十位、百位数字?
ቤተ መጻሕፍቲ ባይዱ
153 153 % 10 = 3 153 / 100 = 1 153 - 1*100 = 53 53 / 10 = 5
C 语 言 程 序 设 计
#include <stdio.h> main() { int x, b0, b1, b2, sum; x = 153; b2 = x / 100; /*计算百位数字 计算百位数字*/ 计算百位数字 b1 = (x - b2 * 100) / 10; /*计算十位数字 计算十位数字*/ 计算十位数字 b0 = x % 10; /*计算个位数字 计算个位数字*/ 计算个位数字 sum = b2 + b1 + b0; printf("b2=%d, b1=%d, b0=%d, sum=%d\n", b2, b1, b0, sum); }
C 语 言 程 序 设 计
任务三
#include <stdio.h> void main() { int n1; char n2; float n3; scanf("%d%c%f",&n1,&n2,&n3); printf("n1=%f,n2=%c,n3=%f\n",n1,n2); } (1)键盘如何输入? )键盘如何输入? 如何输入? (2)修改 )修改scanf(“%d%f%c”,&n1,&n3,&n2);如何输入? “ ” 如何输入
C语言程序设计教程第2章程序流程
流程图
算法
确定
程序结构
变量类型
程序语句
(7)调试
调试
C语言程序设计
第二章 程序设计和程序结构
良好的程序编写风格会大大缩 短调试过程,附录4介绍了C语言程 序的一般书写风格,附录11介绍了 一些常见的错误。
C语言程序设计
第二章 程序设计和程序结构
2.1.2 算法
在实际的编程过程中要注意:
1、避免拿起题目就开始写程序的 2、应该先设计出合适的算法
第二章 程序设计和程序结构
本章概述
2.3程序结构 2.1程序设计与算法 2.4流程图及程序例子 2.2流程图
C语言程序设计
第二章 程序设计和程序结构
本章概述
• 本章主要介绍了C语言的程序结构、 流程图的绘制和程序设计的过程。 • 学习目标: • 1、理解程序的开发、设计过程 • 2、掌握C语言程序结构
C语言程序设计
第二章 程序设计和程序结构
其中最后一行的“Press any key to
continue”是VC6.0自动添加在每个
程序运行结果后面的一句提示信息,它
表示当程序执行结束时,操作者可以按
任意键返回到编辑界面。在后面的程序 运行结果中,将不再给出这一信息。
C语言程序设计
第二章 程序设计和程序结构
scanf("%d",&num1);
printf("Input the 2nd integer number: "); scanf("%d",&num2); sum=num1+num2; printf("sum=%d\n",sum); }
C语言程序设计
C语言程序设计 第2章 顺序结构与分支结构程序设计
main() { char op;float x,y;
scanf("%f%c%f",&x,&op,&y); switch (op) { case '+' : printf("=%f\n",x+y); break;
case '-' : printf("=%f\n",x-y); break; case '*' : printf("=%f\n",x*y); break; case '/' : if (y!=0.0)
200,0,0
空语句
空语句是只有分号 ;的语句。示什么操作也不做。 从语法上讲,空语句也是一条语句。 在程序设计中,若某处在语法上需要一条语句,而实际上不需要 执行任何操作时就可以使用它。 例如,在设计循环结构时,有时用到空语句。
int i,s=0; for(i=1;i<=10;s=s+i++);
main() { int a;
scanf("%d",&a); switch(a) { case 3+8:printf("a==11");break; case 90: printf("a==90");break; case 'a': printf("a==97");break; case a>100:printf("a>100");break; default:printf("default"); } }
printf("%c\n",c); }
第二章 C语言程序设计
例:整型数据的溢出。 main( ) { int a, b; a=32767; b=a+1;
printf(“%d,%d”,a,b);
}
返回
整型变量的定义
[unsigned][short][long] int <变量名1>, <变量名2>,……<变量名n>;
表达式1,表达式2……表达式n
说明:
1、逗号运算符的结合性为从左到右
2、所有运算符中,逗号运算符的优先级最低
练习题
执行下列语句后,a和b的值 分别为
int a, b; a=1+(b=2+7%-4-’A’)
练习题
执行下列语句后,a和b的值 分别为 -59,-60
int a, b; a=1+(b=2+7%-4-’A’)
练习题
一个C语言的源程序中,
(A)必须有一个主函数
。
(B)可以有多个主函数
(C)必须有主函数和其他函数
(D)可以没有主函数
练习题
1、编程实现,输入一个数,输出其 绝对值。 2、编程实现,输入a,b,c三个数, 输出其中最大者。
题 1、
Void Main()
{
int a, result; /*定义变量*/ scanf(“please input a number:%d”, &a); if (a>=0) result=a; else result=-a;
3、类型转换
例:
void main( )
{ float x, y;
C语言程序设计 第2章 数据类型
2.2常量和变量 变量名与变量值的关系:
2.2常量和变量
变量的使用:先定义后使用
变量定义的一般形式:
数据类型 变量名1,变量名2,…,变量名n;
2.2常量和变量
➢ 凡未被事先定义的,系统不把它认作变量名,这就 能保证程序中变量名使用的正确
例:varname,在使用的时候误写成vaname
➢ 在定义变量时要指定变量的类型,在编译时就能为 变量分配相应的存储单元
5
2.2常量和变量
甘草 三七 干姜 葛根
枸杞 人参 陈皮 地黄
山药 当归 谷芽 黄连
贴上标签 加以区分
用标识符给变量起名字
2.2常量和变量 变量命名规则
➢ 只能由字母(a~z,A~Z)、数字(0~9)和下划线(_)构 成
➢ 第一个字符不能为数字 ➢ 不能与关键字同名
例:a9,_a, A_num √ 9a, a*num,int ×
控制语句:控制语句用于控制程序的流程。 C语言提供三类控制语句: ➢ 选择语句 ➢ 循环语句 ➢ 转移语句。 控制语句会在第三章和第四章详细介绍。
2.7 表达式与语句
复合语句: 复合语句由一对大括号括起来的一 条或多条语句组成。 例:{
turnOn(0,3); turnOn(0,4); turnOn(0,5); turnOn(1,4); }
2.7 表达式与语句
表达式语句:表达式末尾加上“;”就构成一条 表达式语句。 例:
s = 3.14 * r * r; 就是一条赋值表达式语句。表达式语句最后的 分号是语句中必不可少的一部分。
2.7 表达式与语句
函数调用语句:函数调用语句由函数调用加分 号构成。 例:
turnOn(1,1);
第2章 简单程序设计(C++版)_第五节 数据输入输出
例2.8 利用getchar函数接收键盘输入。 #include <cstdio> #include <iostream> using namespace std; int main( ) { char ch; ch=getchar(); //读入字符 cout<<"input="<<ch<<endl; }
一、字符输入函数getchar
getchar函数是接收从键盘输入的单个字符数据。它是一个无参
函数,其语法格式为: getchar(); 【说明】 1)通常把输入的字符赋予一个字符变量,构成赋值语句。例如: char ch; ch=getchar(); 2) getchar函数只能接受单个字符,输入数字也按字符处理。 3)输入多于一个字符时,只接收第一个字符。 4) getchar函数等待用户输入,直到按回车键才结束,可用于暂 停程序的运行,直到输入一个回车键。system(“pause”); 5)如果在程序中连续有两个以上getchar()函数,应该一次性输 入所需字符,最后再按回车键,否则会把回车作为一个字符传给后 面的getchar()函数。
f e
用于输入十进制整数 以无符号十进制形式输入十进制整 数 用于输入八进制整数 用于输入十六进制整数 用于输入单个字符 用于输入字符串(非空格开始,空 格结束,字符串变量以′\0′结尾) 用于输入float型实数(小数或指数 均可) 与f相同(可与f互换)
表2-7 scanf函数的附加格式说明符 附加格式 l(字母) h 说 明
例如,对如下程序段 int i=1; long j=123; printf("%d,%2d,%03d,%1d,%-4ld,%05ld",i,i,i,j,j,j); 输出:1, 1,001,123,123 ,00123
C语言程序设计-第2章 简单c程序设计
2.1.3 C语言关键字 • 在C语言中,有些字符串在系统中有特定的含 义与名称,在程序中不能用于其它目的,我 们将这些特殊字符串称为关键字,或称为C语 言保留字。 • C语言关键字共32个
auto double int struct break else long switch case enum char extern const float short unsigned contin ue for signe d void default goto sizeof do if staic
• 变量声明(定义): 语法:变量声明 变量表; 举例: int x,y,z;(多个变量用“,”号隔 开,但必须以“;”结束。(在C语言程序中所有 标点符号必须在英文格式下输入) • 变量的初始化 变量定义后,就可以给变量赋值,这个过程叫 变量的初始化。也可以在变量定义同时进行赋值。
变量类型
原因
2.2.2 常量与变量
1.常量
所谓常量,指程序执行中其值不变的量。C语言中,常 量分为普通常量和符号常量。 普通常量分为数值常量,如128,835.6;字符常量用单引 号,如’a’,S’;字符串常量用双引号表示,如 “Hello”,”world”;
2.变量
其值可以改变的量称为变量。一个变量应该有一个 名字,在内存中占据一定的存储单元。变量定义必须放在 变量使用之前。一般放在函数体的开头部分。变量名和变 量值是两个不同的概念。
C语言程序设计
——第2章
简单C程序设计
本章主要内容提示
C语言标识符命名规则
C语言关键字
C语言常量与变量 常用表达式与优先级 输入输出函数
本章学习目标
• • • • • •
知识目标 掌握C语言标识符命名规则 熟记C语言关键字 正确理解C语言常量与变量 掌握C语言数据类型及转换 掌握常用表达式与优先级 熟练使用输入输出函数 能力目标 • 正确定义常量与变量 • 能根据要求正确输入数 据、输出结果 • 分析问题并根据要求正 确编写简单程序
c语言程序设计-第2章_算法
C程序设计(第三版)
例2.7 将例2.2的算 法用流程图表示。打 印50名 学生中成绩在 80分以上者的学号和 成绩。
C程序设计(第三版)
如果如果包括 这个输入数据 的部分,流程 图为
C程序设计(第三版)
例2.8 将例 2.3判定闰 年的算法用 流程图表示
用流程图表示算法要比 用文字描述算法逻辑清 晰、易于理解。
完整的程序设计应该是:
数据结构+算法+程序设计方法+语言工具
C程序设计(第三版)
2.1 算法的概念
广义地说,为解决一个问题而采取的方 法和步骤,就称为“算法”。 对同一个问题,可有不同的解题方法和步骤 例: 求
n
n 1
100
• 方法1:1+2,+3,+4,一直加到100 加99次 • 方法2:100+(1+99)+(2+98)+…+(49 +51)+50 = 100 + 49×100 +50 加51次
C程序设计(第三版)
2.4 算法的表示
可以用不同的方法表示算法,常用的有: –自然语言 –传统流程图 –结构化流程图 –伪代码 –PAD图
C程序设计(第三版)
2.4.1 用自然语言表示算法 自然语言就是人们日常使用的语言,可 以是汉语或英语或其它语言。用自然语言 表示通俗易懂,但文字冗长,容易出现“ 歧义性”。自然语言表示的含义往往不大 严格,要根据上下文才能判断其正确含义 ,描述包含分支和循环的算法时也不很方 便。因此,除了那些很简单的问题外,一 般不用自然语言描述算法。
S2:如果≥80,则打印和,否则不打印。 S3:i+1 → i S4:如果i≤50,返回S2,继续执行。否则算法结束
C语言程序设计第2章-1数据类型、运算符和表达式
2、 C 语言的运算符的优先级与结合性
3、表达式:由操作数和运算符组成的序列。
5
精品文档
⒉ 真值: 带符号位的机器数对应的数值称为机器数的真值。 (10100011)2= -35
⒊ 无符号数:当计算机字长的所有二进位都用来表示(biǎoshì)数值时,称 为无符号数。
2.2.2 原码、反码和补码
⒈ 原码
整数 X 的原码指:其数符位 0 表示正,1 表示负,其数值部分
就是 X 的绝对值的二进制表示。
2.1 常用 的进位制 (chánɡ yònɡ)
2.1.1 二进制、八进制和十六进制(shíliùjìn zhì)数
3
精品文档
2.1.2十、二进制、八进制和十六进制数之间的换算
⒈ 二、八、十六进制数 → 十进制数的换算采用按权展开法。
(2AB.F)16 = 2χ162+10χ161+11χ160+15χ16-1 = 683.93 ⒉ 十进制数 → 二进制数的换算整数部分(bù fen)采用除以二取余直到商
19
精品文档
2.5.1 算术运算符与算术表达式
⒈ 基本的算术运算符:
14
精品文档
3.字符常量
字符常量是用单撇号括起来的单个字符或转义字符,
如: ‘a’, ‘9’, ‘&’, ‘\n’, ‘\’’, ‘\101’。
字符常量的值为该字符的ASCII码值,如 ‘a’值为97, ‘\n’
《C语言程序设计》课件-第2章用C语言编写程序
input x: 2.5 f(2.50)=0.4
input x: 0 f(0.00)=0.0
软件测试的基本思想
if(x != 0) y = 1/x;
else y = 0;
input x: 2.5 f(2.50)=0.4
input x: 0 f(0.00)=0.0
软件测试
精心设计一批测试用例 [输入数据,预期输出结果] ,然后分 别用这些测试用例运行程序,看程序的实际运行结果与预 期输出结果是否一致。
double x, y;
Enter x (x>=0): 9.5 f(9.500000)=12.67
Enter x (x>=0): 15 f(15.000000)=20.00
printf("Enter x (x>=0):\n"); /* 输入提示 */
数据必须输入吗?
scanf("%lf", &x);
数据输2入.3:.4格式格化式输入化函输数入sca函nf(数) scanf()
#include <stdio.h>
scanf("%lf", &x);
scanf(格式控制字符串, 输入参数1, …, 输入参数n);
变量地址 用双引号括起来,表示输入的格式
scanf-格式控制字符串
格式控制字符串:
• 格式控制说明: 按指定的格式输入数据, %…
数据输出2.:2.格4 式格化式输出化函输数 出prin函tf()数printf()
#include <stdio.h>
printf("Hello World! \n"); printf("fahr = %d, celsius = %d\n", fahr, celsius);
第2章 简单的C#程序设计 习题
第2章简单的C#程序设计一.选择题1.C#中程序的入口方法是【】方法。
A) main B) Main C) begin D) Program 2.假设变量x的值为25,要输出x的值,下列正确的语句是【】。
A) System.Console.writeline(“x”);B) System.Console.WriteLine(“x”);C) System.Console.WriteLine(“x={0}”,x);D) System.Console.WriteLine(“x={x}”); 3.要退出应用程序的执行,应执行下列的【】语句。
A) Application.Exit(); B) Application.Exit;C) Application.Close(); D) Application.Close;4.关于C#程序的书写,下列不正确的说法是【】。
A) 区分大小写B) 一行可以写多条语句C) 一条语句可以写成多行D) 一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法。
5.公共语言运行库即【】。
A) CRL B) CLR C) CRR D) CLS6..NET平台是一个新的开发框架,【】是.NET的核心部分。
A) C# B) .NET Framework C) D) 公共语言运行库7.C#应用程序项目文件的扩展名是【】。
A) csproj B) cs C) sln D) suo8.C#应用程序解决方案文件的扩展名是【】。
A) csproj B) cs C) sln D) suo9.运行C#程序可以通过按【】键实现。
A) F5B) Alt+F5 C) Ctrl+F5 D) Alt+Ctrl+F5 10.C#语言中类模块代码文件的扩展名是【】。
A) csproj B) cs C) sln D) suo11.构建桌面应用程序需要.NET提供的类库是【】。
A) B) Windows Form C) XML D) 12.C#中导入某一命名空间的关键字是【】。
C语言程序设计第二章
2.2常量和变量
变量的类型
2.3 整型数据
2.3.1整型常量 整型常量即整常数。在C语言中,整型常量可以用十进制、八 进制、十六进制3种形式表示。 1.十进制整数 由0~9共10个数码组成。如5234,-78,0等。注意:5234不能 写成5,234。 2.八进制整数 八进制整数必须以数字o开头,组成八进制的数码为0~7。如 o123,o101,o645,o763等。 3.十六进制整数 十六进制整数以0x或0X开头(0为数字),组成十六进制的数码为 0~9,A~F(a~f)。如0x99A,0X97C,0x59ff等。
基本类型 实型 字符类型 (char) 枚举类型 (enum) 数组类型([]) 结构体类型 (struct) 共用体类型 (union) 文件类型 (FILE)
单精度型 (float) 双单精度型 (double)
符号长整型 (unsigned long)
构造类型
C语言提供的数据类型如右所 示:
2.3 整型数据
3.整型变量的定义 整型变量的定义的格式如下: 类型标识 变量名1,变量名2,变量名3…… 类型标识符可以是int、short、long、unsigned,或是它们的组合,例 如: int x,y; //指定变量x、y为整型变量 long c,d; //指定变量c、d为长整型变量 unsigned age,hight; //指定变量age,hight为无符号整型变量 变量的定义,一般放在一个函数开头的声明部分。 4.整型变量的赋值 可以将一个整型常量或整型变量赋值给整型变量,例如: int x=456;
2.4 实型数据
2.4.1实型常量 在C语言中,实型表示实数的集合,实型常量又称为实数。实 型常量只能用十进制形式表示,不能用八进制或十六进制形式表示。 实型常量有两种表示形式 1.十进制小数形式 十进制小数形式由数码0~ 9和小数点组成。如0.123,.123, 0.0,0.1,-267.8230,0.,.0等。 2.十进制指数形式 由十进制数码,“e”或“E”(代表×10)组成。如1e5, 139.5E2,-1.99e-3(代表1×105,139.5×102,-1.99×10-3)等。 格式如下: 小数或整数e(或E)+(或-)整数
C语言程序设计第二章
2.2 理论知识
运行结果:
2.2 理论知识
常量和变量 直接常量
字符串常量 字符串常量是用一对双引号括起来的零个或多个字符
如"","Hello,world!","123"等
双引号仅起定界作用,本身并不是字符串中的内容
2.2 理论知识
常量和变量 直接常量
字符串常量 字符串的长度 指一个字符串中所包含的字符个数 C语言规定在存储字符串常量时,由系统在字符串的末 尾自动加一个'\0'作为结8.539815
2.2 理论知识
符号常量的两个好处
1. 修改程序方便 2. 见名知意,便于理解程序
符号常量的使用
1. 其值在它的作用域内不能改变,也不能再被赋值 2. 符号常量名用大写,变量名用小写,以示区别
2.2 理论知识
举例:
#define PI 3.1415
void main() { int PI; PI=3.1415; PI=3.14159; }
指针类型 构造类型 空类型
数组类型
结构体类型
共用体类型
2.2 理论知识
C语言的基本数据类型 整数类型
数据类型 有符号整型
短整型 长整型
int a,b,sum; a=32768;
数据类型符 int
short long [int] [int]
占用字节数 2
2 4
取
值
范
围
-215~(215-1) 即-32768~32767
2.2 理论知识
常量和变量 变量的赋值
在定义变量时赋值 float data1=1.5,data2=2.6;
“先定义后赋值
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
☺else与上方最近的 未配对的if相配对
判断三个程序哪个正确?
if(x>=0)
if(x>0)
y=1;
else
y=0;
else
30
y=-1;
if(x<0) y=-1;
else if(x==0) y=0;
else y=1;
y=0; if(x>=0)
if(x>0) y=1;
else y=-1;
21
7.位运算
☺ 逻辑位运算符:~(单目)、&、|、^ ☺ 移位运算符:<<、>>
<<时移掉的位被丢弃,左边移出的空位补0; >>时移掉的位被丢弃,右边移出的空位补0或符号位 例:int a=0xffffffff; a=a>>2;cout<<a;
unsigned char x=0133,y=0xff; z=x^y;
default:
<语句序列n+1>
}
31
switch例题
☺输入月份,输出是哪个季节? ☺要求用switch语句完成
春:3、4、5 夏:6、7、8 秋:9、10、11 冬:12、1、2
C++语言程序设计基 础
信工学院
中国地质大学(北京)
1
第2章 C++简单程序设计
☺2.1 C++语言概述 ☺2.2 基本数据类型和表达式 ☺2.3 数据的输入与输出 ☺2.4 算法的基本控制结构 ☺2.5 自定义数据类型
2
2.1 C++语言概述
☺C++的产生
20世纪60年代英国剑桥大学学者开发BCPL 1970年美国Bell实验室提出B语言 1972年Bell实验室对B语言改进推出C语言 1980年AT&T贝尔实验室的Bjarne
cout<<year<<" is a leap year.\n"; else
cout<<year<<" is not a leap year.\n"; return 0; 29 }
if-else的配对关系
if(P 1) if(P 2) 语句1;
else 语句2;
–1 (x<0)
y= 0 (x=0)
a+=3 → a=a+3、x*=y+8 → x=x*(y+8)
思考:
int a=12; a+=a-=a*a;
16
3.逗号运算符
☺d1,d2,d3,d4
最后一个表达式的值就是逗号表达式的值 float x(10.5f),y(1.8f),z(0); z=(x+=5, y+=x+0.2); z=(z=8, x=5, y=3);
一般表示 无符号数据
练习题:在C++语言中,029是一个[ ]。
A)八进制数;B)十进制数;C)十六进制数;D)非法数
9
2、实型常量
☺ 只有十进制表示
一般形式实数
整数和小数部分可省其一,但不能都省 如1.3,.13,13.,0.0
指数形式实数
由尾数、指数和字母e组成 E前后都要有数字,且E后的指数必须为整数 判断:e2,2.1e-5,2.1e3.5,-5.1e2,e
switch语句
以case中的常量表达式值为入口标号,由 此开始顺序执行,直到遇到break或switch 的}退出switch语句。
switch (<整型表达式>)
{
case <整常型表达式1>: <语句序列1>
case <整常型表达式2>: <语句序列2>
......
case <整常型表达式n>: <语句序列n>
定整个逻辑表达式的值时,
后面的子表达式就不再计 --x>=5&&++y>18;
算。
x++>=0||--y>100;
19
5.条件运算符
☺ d1?d2:d3(右结合)
int x=2,y=0,z; z=((y=0)?++x:y++); z=(y!=5?x+1:y++); z=((y=5)?x+1:++y);
13
2.2.4 符号常量
☺将一个变量声明为一个常量 ☺ const <数据类型> <变量名称>=<表达式>; ☺ const <数据类型> <变量名称>(<表达式>);
☺ <数据类型> const <变量名称>=<表达式>; ☺ <数据类型> const <变量名称>(<表达式>); ☺ const int MAX=10; ☺ int const PI(3.14);
24
2.3 数据的输入与输出
☺#include<iostream> ☺输出:
cout<< <表达式1> << <表达式2> <<…
int a=3,b=4; cout<<"a="<<a<<",b="<<b<<endl;
☺输入: cin>> <变量1> >> <变量2> >>…
int a,b; cin>>a>>b;
long double 空类型void 用于函数和指针
2.2.2 常量
☺ 在程序运行期间其值不发生变化的数据。
☺ 1、整型常量
十进制整数:如123,0,-456 八进制整数(以0开头):如012 十六进制整数(以0X开头):如0x12 长整型用L作后缀; 无符号型用U作后缀; 无符号长整型用UL或LU均可。
‘\ddd’:用三位八进制数表示一个字符常量,如' \101' ‘\xhh’:两位十六进制数表示一个字符常量,如'\x41' 练习题:
"abc\n"在内存中占几个字节?"abc\\n"呢? 字符串"\\\"ABC\"\\"在内存中占几个字节?
11
4、字符串常量
☺由双引号括起的字符序列(不一定是C++ 字符集中的字符,只要C++编译器支持即 可)
25
2.3.3 简单的I/O格式控制
☺ dec:设置数制为十进制 ☺ hex:设置数制为十六进制
cout<<hex<<17<<endl;
☺ oct:设置数制为八进制 #include<iomanip> ☺ setw(int):设置输出场宽
cout<<setw(4)<<17<<endl;
26
2.4 算法的基本控制结构
if(3) cout<<"ok!\n";
<语句n>;
分号是分支语句中内嵌语句所 要求的。
else
<语句n+1>;
28
练习:判断某一年是否闰年
#include <iostream> using namespace std; int main() {
int year; cout<<"Please input year:"; cin>>year; if((year%4==0&&year%100!=0)||(year%400==0))
思考: 若有(exp)?a++:b--,则能完全与 (exp)等价 的是[ ]。 A)(exp==0) B)(exp!=0) C)(exp==1) D)(exp!=1)
20
6.sizeof运算符
☺sizeof(<类型或变量名>)
返回变量或数据类型在内存中所占的字节数 double z(0);
int k; k=sizeof(float); k=-1*sizeof(z); k=sizeof(10.2);
下一个标准为C++11,2019年10月发布
4
-4-
2.1.3 C++程序实例
/*第一个C++程序
作者:CPP
版本:1.0*/
#include <iostream>
//文件包含命令
using namespace std;
int main()
//主函数头
{
//主函数体
cout<<"Hello!"<<endl;
Stroustrup博士创建C++语言
3
C++的历史
☺几十年来,许多编程语言如流星般闪过, 而C++一直占据着世界顶级编程语言的宝 座。针对PC机、智能手机和MP3等嵌入式 设备,以及其它众多计算机环境,C++语 言始终是不错的选择。
☺C++的标准不断更新
目前使用的是ANSI/ISO C++(ISO/IEC 1482:2019),2019年发布
浮点型常量缺省为double,加后缀f表示float,加l 表示long double