第2章+基本数据类型与输入输出
数据类型与简单输入输出
数 据 类 型 与 简 单 输 入 输 出
6
C
语 2.1.3实数类型
言 程
实数类型的数据简称实型数据,有时又称为浮点型数
序 据,实型可分为单精度型和双精度型两种,其中:
设 计
(1)单精度型:用float表示;
(2)双精度型:用double表示。
第 在一般系统中,Turbo C所支持float型数据在内存中
编分译dp配ra程it指na序t定=f根((字dpa“据rda+节i变atbn的ta)量ta*内=f=1定((存%.a“义2单df+;为\a元bn其t)”a*,=d1a%.ct2af;)\;n”,data);
…...
}}
内存
2字节
随机17 数
C
语 4. 变量的赋值
言
程 可以用赋值运算符“=”将一个表达式的值赋给一个变量。
言 程
沃思(N. Wirth)公式:
序 设
数据结构 + 算法 = 程序
计
数据是程序处理的对象,程序的主要任务就是对数据
第 2
进行加工、处理,而计算机中的数据包括数值型数据和非
章 数值型数据,如我们知道在数学中的整数、实数就是数值
数 据
型的数据,计算机能够处理的文字、声音、图像等就是非
类 数值型数据。
➢ 八进制整型常量:以0为前缀,后跟数字0~7表示,如
第 0123,011。
2 章
➢ 十六进制整型常量:由0x或0X开头,后跟0~9,a~f,A~F表
数 示.如0x123,0Xff。
据
类 注意:
型 与
在程序中是根据前缀来区分各种进制数的,一定要前缀正确;
简 八进制与十六进制一般只表示正数;
《C语言程序设计》02 数据类型及输入输出函数
#include < stdio.h > 或
关键字 包含函数的头文件 #include ” stdio.h ”
区别
#include < stdio.h > 与 #include ” stdio.h ”
(1)#include<stdio.h>格式来引用标准库的头文件, 编译器将从标准库目录开始搜索。 (2)#include”stdio.h”格式来引用非标准库的头文 件,编译器将从用户的工作目录开始搜索。
{
short a , b ; //同时定义两个短整型变量a和b
a = 32767;
//为a变量赋值
b=a+1;
printf(" a = %d , b = %d \n" , a ,b );
}
我们倒水倒满了水就流出来了,那计算机呢?
实型
• 实型也称为浮点型,例如:3.14,-8.9等带有小数
部分的数值数据就称为浮点数
类型
说明
字节数
有效数字
float
单精度浮点型 取值范围:3.4E-38~3.4E+38
4
double
双精度浮点型 取值范围:1.7E-08~1.7E+308
8
long double
长双精度实型 取值范围:1.7E-08~1.7E+308
8
6~7 15~16 15~16
#include <stdio.h>
实型数据精度示例
void main()
{
float a;
double b;
a=55555.55555555F;
//float类型数值一般需要添加后缀”F”或”f”
第二章数据类型和输入输出
功能
响铃 换行 制表符(横向跳格) 竖向跳格 退格 回车 反斜杠字符“\” 双引号 单引号 1~3位八进制数 1~2位十六进制数
第二章数据类型和输入输出
24
[示例]
► 在内存中,字符数据以ASCII码存储,即以整数 表示,所以C++中字符数据和整型数据之间可以 相互赋值,只要注意其表示的范围合理。
26
2.3.5 布尔常量
►用关键字false和true来表示,它们与布尔 型含义相同。
■ ture → 1 ■ false → 0
第二章数据类型和输入输出
27
►2.1 计算机内的数据表示 ►2.2 基本数据类型 ►2.3 字面常量 ►2.4 变量 ►2.5 标识符常量 ►2.6 基本输入输出
第二章数据类型和输入输出
28
2.4 变量
► 变量是指在程序执行中其
值可以改变的量。
内存地址
► 变量的作用是存取程序中
需要处理的数据,它“对
应”于某个内存空间。 变量 a
► 变量有3个基本要素
的地址
■ 合法的变量名
■ 变量的数据类型
■ 变量的数值
……
存储单元 (1Byte)
变量 a 的数值
12
……
第二章数据类型和输入输出 内存空间
return 0; }
第二章数据类型和输入输出
20
2.3.2 实数常量
►实数即浮点数
►十进制数和指数两种表示形式
■ 十进制数形式由整数部分和小数部分组成(必 须有小数点),如0.123,.234,0.0。
■ 指数形式,科学计数法(E或e前必须有数字,
且指数必须是整数),如123e5或123E5都表 示123×105。
C语言系列教程——基本数据类型与输入输出
C语言系列教程——基本数据类型与输入输出第2章基本数据类型与输入输出程序中最基本的元素是数据类型。
确定了数据类型,才能确定变量的空间大小和其上的操作。
C++的数据类型检查与控制机制,奠定了C++今天的地位。
C++还提供了L/O流机制,完成对输入输出的操作管理。
在过程化程序设计中,prinff和scanf是对流的一个适当补充。
学习本章后,要求搞清数据类型与变量、常量的关系,掌握各种常量的性质和定义,学会I/O流的使用,了解pfinff和scanf输入输出的作用。
2.1 字符集与保留字每种语言都使用一组字符来构造有意义的语句。
C++程序是用下列字符所组成的字26个小写字母:abcdefghijklmnopqrstuvwxyz26个大写字母:ABCDEFGHIJKLMNOPQRSTUVWXYZ10个数字:0 1 2 3 4 5 6 7 8 9其他符号 + - * / = , . _ : ; ? \ " ' ~ | ! # % & ( ) [ ] { } < > (空格)C++中,保留字也称关键字。
它是预先定义好的标识符,这些标识符对C++编译程序有着特殊的含义。
表2-1列出了C++的保留字。
ANSIC规定有32个保留字,表中用黑正体字表示;ANSIC++在此基础上补充了29个保留字,表中用黑斜体字表示。
本书不作介绍的表中用白体字表示。
为了使语言能更好地适应软件开发环境,BC或VC对保留字进行了扩充,在表中用白斜体字表示。
VC与BC对关键字的扩充内容是不同的,这里只是常用的和共同扩充的几个。
表2-1 C++保留字auto break case charconst continue default dodouble else enum externfloat for goto ifint long register returnshort signed sizeof staticstruct switch typedef unionunsigned void volatile whilebool catch class const_castdelete dynamic_cast explicit falsefriend inline mutable namespacenew operator private protectedpublic reinterpret_cast static_casttemplate thisthrow truetry typeid typename usingvirtual wchar_tasm cdecl far hugeinterrupt near pascal exportexcept fastcall saveregs stdcallseg syscall fortran thread在程序中用到的其他名字(标识符)不能与C/C++的关键字有相同的拼法和大小写。
第2章基本数据类型及输入输出
2.整型变量的分类 除了使用基本类型符为int定义整型变量之外,在int前 还可以加上各种修饰符,根据数值的范围将变量定义为以下 3类整型变量: (1)基本整型,用int定义。 (2)短整型,用short int定义或short定义。 (3)长整型,用long int定义或long定义。 其中,每一类又分为无符号(unsigned)和有符号(signed) 两种情况。一般定义变量时不加unsigned和signed,C语言 默认类型是signed。因此,有以下6类整型变量: (1)有符号基本整型 [signed] int (2)无符号基本整型 unsigned int (3)有符号短整型 [signed] short [int] (4)无符号短整型 unsigned short [int] (5)有符号长整型 [signed] long [int] (6)无符号长整型 unsigned long [int]
【例题2.3】 以十进制形式输出八进制整数和十六进制整数 /* file2_3.c */ #include <stdio.h> void main ( ) { printf("\n %d %d %d %d %d",-021,0x134,0xADE,056,0x23); }
2.3.2整型变量 1.整型数据在内存中的存放形式 虽然编写程序时可以使用十进制、八进制和十六进 制的数据,但是,所有数据在内存中都是以二进 制形式存放的。如果定义了一个整型变量num: int num=12; 则十进制数12的二进制形式为1100,在IBM PC系 列机上使用的C编译系统,每一个整型变量在内 存中占2个字节(16bit)。
3、一般标识符(用户标识符) 用户自己定义的变量名、常量名和函数名等。 一般标识符由字母、数字和下划线组成,且第一个位置只 能取字母或下划线。 在C语言中构成自定义的标识符必须符合下列语法规则: (1) 标识符必须以字母(a~z或A~Z)或下划线( _ )开头。 (2) 在第一个字符之后,可以是字母、数字(0~9)和下 划线组成的字符序列,这个序列可以是空串。 (3) C语言中大小写字母是具有不同含义的,即代表不同 的标识符。 (4) 在不同的系统中标识符字符的有效位数不同。 (5) 标识符不能使用系统的保留字。
第2章 数据类型和输入输出
整型类型标识符:int
类型修饰符:long, short, signed , unsigned c++规定: char <= short int <= int <= long int
13
2.2 基本数据类型
1、整型int
第二章 数据类型和输入输出
徐素锦
本章主要内容
2.1 字符集与保留字 2.2 基本数据类型 2.3 变量定义 2.4 常量 2.5 常量定义 2.6 I/O控制流 2.7 printf与scanf 作业
2
学习目标:
熟悉C++的关键字 理解定义数据类型的意义,逐步掌握基本 数据类型 弄清数据类型与变量、常量的关系 掌握变量的定义和使用方法 掌握各种字面量的性质和定义 掌握C++的输入输出方法 了解printf和scanf输出输入的使用方法
在32位编译器中: short int、signed short int、unsigned short int
15 8 7 0
有符号短整型占用两个字节存储空间 -215~215-1(-32768~32767)
int、signed int、unsigned int long int、signed long int、unsigned long int
系统默认为signed int ,在数字后加u, U或l, L可以表 示unsigned int和long int。 123,123L,658u
30
2.4 字面量
[示例]
在16位计算机上输出: size of int is 2 在32位计算机上输出: size of int is 4
C语言第2章数据类型与简单输入输出
2.1 C语言的数据类型
一个程序应包括数据结构和算法。 数据结构是在程序中要指定数据的类型和数据的组织形式。 算法是如何对数据结构进行处理达到编程者的目的的想法, 由于每个人的想法不一样,所以程序代码有可能不相同, 但最后都能达到自己的目的。根据不同的编程语言,程 序的概念可以这样表示: 程序=算法+数据结构+程序设计方法+语言环境
“\\123\101”共有5个字符占6个字节, 其中\\、\101分别代表一个Βιβλιοθήκη 符,输出为\123A2.2常量
例2.1 字符型常量与整型常量混合使用实例。 要求编程输出字符“#”以及其ASCII码值,求'a'+1的值和输出其 ASCII字符,输出整数65以及该数字所对应的ASCII字符。
main() { printf("%c , %d \n" , '#' , '#' ) ; printf("%c , %d \n", 'a'+1, 'a'+1 ) ; printf("%c , %d \n" , 65 , 65 ) ; } 运行结果如下:
2.2常量
例2.2宏定义的使用 #define PI 3.14159 /*宏定义命令定义PI 为3.14159*/ main() { float s,r; /*s,r定义为实型变量用来存放实型数据*/ r=5; /*5赋值给r*/ s=PI*r*r; printf("s=%f\n",s); } 运行结果为:
不同类型的数据代表不同的 数据表示形式 合法的取值范围 占用内存空间大小 可参与的运算种类
第二章基本数据类型与输入输出
• bool类型仅适用于C++,C语言中没有该 类型
浮点型 3-1
• 在十进制数中,通常一个浮点数可以用 科学计数法表示,如-306.5写成 0.3065103 其中指数3为阶或阶码,之所以称之为浮 点数,因为它也可以表示成 或 3.065102 0.300651,04 小数点可以左右“浮动”。
型又可细分为: 无符号整型: unsigned int 无符号短整型: unsigned short 无符号长整型: unsigned long
整型 ( int Types ) 5-4
• 整型数表示范围
– 编译器的机器字长总是与整型的位长有关.如: 32位编译器的整型数一定为32位长
整型字面值分八进制,十进制和十六进制不同表示 .如:
• C++数据类型分为两大类:
– 基本数据类型:整型、字符型、浮点型 – 非基本数据类型: 数组
结构 联合 枚举 指针 类 (Class) 空类型(Void)
数制
• 十进制数
十进制由0~9十个数字组成,运算规则是逢十进一。
• 二进制数 二进制的基数是2,所使用的数字只有:0和1。运算规 则是逢 二进一。
• 不能将单个字符的字符串常量赋给字符 变量。
– 如 char c;
c = “a” //error
• 枚举常量— 是一种用于表示各个枚举值 的符号常量。
• 枚举常量通过建立枚举类型来定义。
– 如 enum COLOR{RED,BLUE,GREEN}
• 在内存中,枚举常量对应表示为一个整 型数,第一个枚举值的默认值是0。但不 能将整数赋给枚举型变量。
《新概念C语言能力教程》第2章基本数据类型
• 其中的l(long)和h(short)称为长度修饰符,是附加的格式说明符。
格式字符串与数据类型
• unsigned short a = -1u; • 语句printf("%hu", a);中格式字符串hu(无符号短整型)准确地匹配了变量a
printf函数的输出结果不会是22亿。这条语句有逻辑错误。
分析下面语句的输出结果。
• printf("%lu", 2200000000); • printf("%ld", -1); • printf("%lu", -1u); • printf("%hd", -1); • printf("%hu", -1u); • printf("%hu", -2);
编码和解码
• 现实世界中的数据转换成由0和1组成的二进制串,计算机才能存储和处理。 由数据得到01串称为编码;由01串得到数据称为解码。
• 每类数据都各有特点,只用一种编码规则统一编码是不现实的。不同类型的 数据如整数和小数,采用了不同的编码规则。
• 多种编码规则导致不同数据的编码结果可能相同,因此,只有确定了编码规 则,才能正确解码。
功的识别的16。 • 当用户输入32789↙时,全部识别成功,但短整型变量m的实际值不会是
的类型,printf函数正确地输出变量a的实际值65535。 • 语句printf("%hd", a);中格式字符串hd(短整型)与变量a的类型不匹配,
第二章数据类型及其输入输出
3、对变量名的要求。
变量名要做到“见名知意”,不要使用简单的字符作变量名, 以增加程序的可读性。
变量名一般用小写字母表示,长度与所用系统有关(<8,<32)。 一般建议不大于8个字符。
① 1 i j3 应写成1/3+i+j*j*j。 3
② a b e f 应写成(a+b)/(c+d)*e+f。 cd
(2) C语言的表达式只能使用C语言中合法的运算符和操作数, 对 有些操作必须调用库函数完成, 而且运算符不能省略。
例如:
#include< math.h>
① πr2应写成3.14159*r*r。
2、实型变量
类型
(内存中字节数)
float double long double
(4字节) (8字节) (16字节)
有效数字
6~7位 15~16位 18~19位
定义方法:
(单精度) float 变量名 (双精度) double 变量名
3、字符型变量
① 定义方法: char 变量名列表 char c1,c2,c3;
本节重点
数据类型 常量与变量 不同类型的数据的输入输出
引入——数据类型
1、数据是程序处理的基本对象。 2、程序中数据分为变量或常量。 3、每个变量或常量都有确定的数据类型。 4、每种数据类型都有确定的存储长度、取值范围及允许的操作。 5、程序中所有数据必须指定其数据类型。
数据类型
基本数据类型
例:unsigned long int a,b;
基本数据类型与输入输出
2.2 基本数据类型—sizeof操作符
01
03
05
02
04
06
变量名的命名原则:
2.3 变量定义—命名变量名
2.3 变量定义—命名变量名
请判断下列变量名是否合法: way_cool RightOn NumberOfStudent case 9iOralce A lot Sin
√
√
√
x
x
x
x
常量,是常数或代表固定不变值的名字,常量定义,使用“const”修饰符: const 数据类型 变量1=初始化值1,[变量2=初始化值2,…];
定义成常量后,程序只能读取该常量的值,不能修改该常量,不能放在赋值语句的左边;
常量在程序运行前就应该知道其值,常量定义中的初始化值可以是一个常量表达式,如: const int size = 300*sizeof(int);//正确
定点数形式,由数字和小数点组成(注意必须有小数点),如0.123,.3415,0.0;
指数形式,如123e5表示123*105;
在C++中,一个实型常数如果没有任何说明,表示double型,要表示float型,必须在实数后面加上f或F,如34.5f、34.5、34.5l分别代表float型、double型、double型数;
练习
给出下面程序输出的结果: #include <iostream.h> void main( ) { int a; char ch; ch='a' ; ch++; a=ch; cout<<a; }
第二章 基本数据类型与输入输出
单击此处添加副标题
202X/XX/XX
第02章 基本数据类型与输入输出
2.4 变量(续) 变量(
(3)typedef 用typedef为一个已有的类型名提供一个别名。 typedef为一个已有的类型名提供一个别名 为一个已有的类型名提供一个别名。 语法形式: typedef 已有类型名 新类型名; 新类型名; 语法形式: 例:typedef double profit; INT a; // 等价int a; 等价int 注意: 注意: typedef没有实际定义一个新的数据类型, typedef没有实际定义一个新的数据类型,而为一个已 没有实际定义一个新的数据类型 有的类型名提供一个别名。 有的类型名提供一个别名。 //定义 //定义double 的别名 定义double typedef int INT,integer; //定义int的两个别名 //定义 的两个别名 定义int
2.5 I/O流控制 I/O流控制
1、I/O书写格式 I/O书写格式 cin格式 格式: ☆ 标准输入流 cin格式: cin >> variable < >> variable...> ; variable...> 其中,符号“>>”叫做抽取运算符 叫做抽取运算符, 其中,符号“>>”叫做抽取运算符,它的作用是从输入流 cin (缺省为控制台)中获取一个与变量 variable 之类型相 缺省为控制台) 匹配的值, variable。 匹配的值,并将该值赋给变量 variable。 例: cin >> i; cin >> x >> y >> z; 注意后一种用法:在响应串联方式的输入时, 注意后一种用法:在响应串联方式的输入时,所输入 的各数值必须用空白字符(空格键、 键或回车键) 的各数值必须用空白字符(空格键、Tab 键或回车键)分隔 开来。 开来。
02第02章 基本数据类型及输入输出
§2.3基本数据类型(Fundamental data type)
程序中数据分为变量或常量,每个变量或常量都有确 定的数据类型。 数据类型
基本数据类型 非基本数据类型 数 组 指 针 空类型 结 构 联 合 枚 举 类 type[ ] type * void struct union enum class
功能 置基数为10 置基数为16 置基数为8 设置填充字符为c 设显示小数精度为n位 设域宽为n个字符 左对齐 十六进制数大写输出
……………………………………………………….
例1、设置输出宽度
cout << setw(8) << 10 << 20 << endl; 输出结果是: _ _ _ _ _ _1020 若数值10和20均按照宽度8输出,则 cout << setw(8) << 10 << setw(8) << 20 << endl; 输出结果是: _ _ _ _ _ _ 10_ _ _ _ _ _20 如果一个值的位数大于setw(n)确定的宽度位 数,则按原宽度输出 。 float amount = 4.53671; count << setw(4) <<amount <<endl; 输出结果是: 4.53671
整
型
int char wchar_t float double
单字符型 字符型 宽字符型
实 型
单精度型 双精度型
bool
逻辑型
类型修饰符 Short long
signed
unsigned
§2.4变量定义(Variable declaration)
第二讲 基本数据类型与输入输出
printf()
printf(格式控制字符串,输出项1,输出项2, );
%d用来输出10进制整数,可以有长度修饰。 %o和%x分别用来以8进制和16进制输出,此时均为 unsigned。 %u用来以无符号10进制整数方式输出。 %c用来以字符方式输出。 %s用来以字符串格式输出。 %f用来以小数方式输出。 %e用来以指数方式输出。
变量
变量是指程序在运行时其值可改变的量。每个变量由 一个变量名惟一标识,同时,每个变量又具有一个特定的 数据类型。不同类型的变量在内存中占有存储单元的个数 不同。
[修饰符]
数据类型
变量名; [//注释]
注意: 变量名的命名规则; 定义变量时必须指明它的数据类型,否则会导致编译错误。 数据类型决定了变量占用存储空间的大小、数值范围,以 及作用于其上的操作。 变量的初始化 int buffer (1024);(显式和隐式赋值) 变量使用之前一定要定义或说明 。
字符串常量
1. 字符串常量是由一对双引号括起来的零个或多个字 符序列。 2. 字符串可以写在多行上,不过在这种情况下必须用 反斜线‘\’表示下一行字符是这一行字符的延续。 3. 字符串常量实际上是一个字符数组,组成数组的 字符除显示给出的外,还包括字符结尾处标识字 符串结束的符号‘\0’,所以字符串“abc”实际上 包含4个字符:‘a’、‘b’、‘c’和‘\0’。 4. 需要注意的是‘a’和“a”的区别,‘a’是一个字符 常量,在内存中占一个字节的存储单元,而“a” 是一个字符串常量,在内存中占两个字节,除了 存储‘a’以外,还要存储字符串结尾符‘\0’。
常量
常量是指在程序运行过程中其值不能改变的量。 字符型常量通常用一对单引号括起一个字符来表 示,例如:‘f ’,‘8’,‘ ’ (空格符)和‘*’ 等。 字符串常量是由一对双引号括起来的零个或多个 字符序列。 “abc”实际上包含4个字符:‘a’、 ‘b’、‘c’和‘\0’。 ‘a’和“a”的区别 符号常量 #define pi 3.14
基本数据类型与输入输出.
(3)分隔符:空格或回车 (4)回车作用 ①通知 cin 已输入一行数据, cin 可从输入行提取输入数 据,依次赋给变量; ②用作输入数据间的分隔符。
当cin遇到回车键时,若仍有变量没有得到数据,则继续等待 用户输入新的一行数据。当cin遇到回车键时,输入行中的 数据没有提取完,则可给其它变量赋值。
第二章 基本数据类型与输入输出
•变量
1.定义
程序执行过程中,值可以改变的量称为变量 。
2. 变量命名规则
6book #abc s4.6 if //不能以数字开头 //不能使用符号# //不能使用小数点 //if为关键字,不能用作标识符
注意: (1)大、小写字母是不同的标识符。例如BOOK和book被认为是两个 不同的标识符; (2)有效标识符长度为1~247。当一个标识符的长度超过247个字符 时,其前面的247个字符有效,而其后的字符无效; (3)应用能表示标识符含义的英文单词(或其缩写)或汉语拼音来命 名标识符。例如,用Average表示平均值。
• 3.字符常量
用单引号括起来的单个字符称为字符型常量。 'a','x','D','?','$',' ','3' 注意: (1)字符常量只能为单个字符,用单引号括起来。 (2)字符常量在机内是用ASCII码表示。 (3)字符常量表示形式 ① 普通字符(显示字符):'a','A','#',' ','0' ② 转义字符: (a)以“\”开头后跟ASCII码(八进制或十六进制)表示一个 字符。表示形式为: \ddd:表示三位八进制数,如:'\101',表示字符' A'; \xhh:表示两位十六进制数。如:'\x41',表示字符' A'。 (b)以“\”开头后跟一个字符常用来表示一些控制字符。例 如:'\n'可以用来表示换行符。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
字符串常量
使用一对双引号括起来的字符序列。 如: ―china‖、‖class 4‖、‖$12.5‖
29
字符常量与字符串常量的区别: 字符常量使用单引号括起来,字符串常量使用双引 号 字符常量是一个字符,字符串常量可以含一个或多 个字符
30
部分预定义的数学函数
#include <cmath> sin(x),cos(x),tan(x) log(x),log10(x) exp(x),pow(x,y) sqrt(x) ceil(x),floor(x) fabs(x)
bc Z.Wan
_0123 month
P#d a>b
7
a
声明变量 例如:
int a; double d; char ch;
d
ch
8
变量赋值
给变量赋值,就是把数据存储到变量中。 radius 变量赋值使用赋值号:= 如:float radius;
例如: scanf("%f",&radius); int a,b,c; printf("Enter three integers:"); scanf("%d%d%d",&a,&b,&c); scanf("%d,%d,%d",&a,&b,&c); scanf("a=%d,b=&d,c=%d",&a,&b,&c);
32
练习
求三角形面积,结果保留两位小数:
s = (a+b+c)/2 A = √ s ( s – a )( s – b )( s – c )
边长a,b,c从屏幕读入。
exp2_3.cpp
33
作业
一年期定期存款利率为3%,让用户输入存款金额 ,然后输出一年后用户可获得的总额。 要求将存款利率设为常量。 已知一元二次方程ax2+bx+c=0,从键盘输入a、b、 c的值后,计算并输出两个根的值,结果保留两位 小数。(输入的系数需满足delt>=0)
11
/*计算圆的面积*/ #include<iostream> using namespace std; void main() { float radius,area; radius=3.5; area=3.14*radius*radius; printf("radius=%f, area=%f\n―,radius,area); }
17
/*用户从键盘输入半径,计算相应的圆的周长、面积、球体的体积。*/
#include<iostream> using namespace std; #define PI 3.1415 void main() { double r,s,c,v; printf("Enter the radius:―); scanf(―%lf‖,&r);
14
例子1:计算圆的面积,圆的半径要求用户从键盘 输入。 例子2:计算两个整数的和,整数要求从键盘输入 。
例子3:要求用户从键盘输入半径,然后计算相应 的圆的周长、面积、球体的体积。
15
常量的引入
常量是程序运行过程中其值不变的数据。
2.常量的类型
整型常量: 21, 0, -12
实型常量: 1.2, -3.4
第2章 基本数据类型与输入输出
程序设计基础课程组
深圳大学计算机与软件学院
学习内容
本章学习内容
数据类型:整型数据、实型数据和字符型数据 常量与变量 基本输入/输出
1
学习目的
理解数据类型与常量、变量的关系; 掌握I/O流的使用;
掌握printf和scanf函数的使用。
2
问题1:计算一个圆的面积 步骤
12
例子
分别计算两个整数的和、差、积、商、余数。 步骤
定义变量 — 给变量赋值 — 计算 — 输出结果
—
13
使用scanf输入
格式输入函数scanf() scanf()函数的功能是按指定的输入格式从键盘 接受用户的输入信息。该函数的一般形式 scanf(“格式控制”,地址1,地址2,……)
获取并记录下圆的半径 r 使用公式 s=π * r *r 计算圆的面积 输出s的值
r、s是需要存储下来的不确定的值 r 与 s 可能取什么值?
3
变量
变量
— —
变量是指在程序运行过程中其值可以发生变化的量。 变量在内存中按照数据类型占用一定的存储单元。
声明变量的格式
数据类型 变量名称;
4
数据类型
整型 实型(浮点型)
基本类型
int 单精度型 float
4B 4B
字符型 枚举类型
数据类型 构造类型 数组类型 结构体类型 共用体类型
双精度型 double 8B char 1B
指针类型 空类型
5
变量的命名规则
使用C++规定字符集中的字符
52个大小写英文字母: a-z, A-Z 数字: 0-9 其他符号:+ - * / = ? #\ % & ( ) [ ] {}< >
27
转义字符的使用
void main() { int a=1,b=2,c=3; printf("%c\n",'\a'); printf("%d\t%d\t%d\n",a,b,c); printf("I say:\"I am a student.\"\n"); printf("%c\n",'\101'); printf("%c\n",'\141'); }
int 整型 double 双精度浮点类型 float 单精度浮点类型 char 字符 修饰符 short, long; signed, unsigned
22
%d %lf %f %c
int—整型
格式控制:%d short int、long int 、unsigned int 、unsigned short、unsi gned long 整型常量 十进制:12、10001、-32768 八进制:012、0111、010007 十六进制:0X12、0X111、0XEF 后缀:986u、0XFEDU、12l 、 0123L、999lu
//定义的同时赋值 ╳ 常量不能被再次赋值
19
/*用户从键盘输入半径,计算相应的圆的周长、面积、球体的体积。*/
#include<iostream> using namespace std; void main() { const double PI=3.1415; double r,s,c,v; printf("Enter the radius:―); scanf(―%lf‖,&r);
//定义常量并赋值
s=PI*r*r; c=2*PI*r; v=4/3.0*PI*r*r*r; printf(―r=%lf,s=%lf,c=%lf,v=%lf\n‖,r,s,c,v);
20
}
scnaf,printf
scanf 输入 键盘
运算/操作 变量
printf 输出
显示器
21
基本数据类型
数据类型----就是说明数据的性质、表示形式、占据多 少存储空间、表示的范围、能够进行的运算。(page14)
(\ddd为Ascii码的八进制)或‘\xhh' (十六进制)
‗\n‘ , ‗\157‘ , ‗\x6F‘ – 转义字符(使用‖\‖ 开头) '\0' — NULL
字符型变量的输入输出
字符与其ASCII码值对应 字符参加算术运算是其码值参见运算。
25
ASCII码表(7位)
高三位 b6b5b4 低四位 b 3 b 2 b 1b0
随机数
radius
radius=2.5;
2.5
或:float radius=2.5;
9
//声明变量同时赋值
变量赋值
注意:变量必须先赋值,再使用 变量可以重复被赋值 radius=3.75; radius=10.34; radius=9.9;
radius
2.5
radius
10.34
radius
9.9
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 000 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 001 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 010 SP ! “ # $ % & ‘ ( ) * + , . / 011 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 100 @ A B C D E F G H I J K L M N O 101 P Q R S T U V W X Y Z [ \ ] ^ _ 110 、 a b c d e f g h i j k l m n o 111 p q r s t u v w x y z { | } ~ DEL
字符常量: ‗a‘, ‘Z‘ 字符串常量: ―Shen Zhen‖ 3.符号常量 程序中多处使用某个常量,可将它定义为符号常量。此 时可用符号常量来替代常量。