第2章基本数据类型及输入输出1_第1页
第2章基本数据类型及输入输出1_第2页
第2章基本数据类型及输入输出1_第3页
第2章基本数据类型及输入输出1_第4页
第2章基本数据类型及输入输出1_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2讲基本数据类型课程回顾:C语言是什么?C语言的简介?开发C语言程序的4个步骤是什么?学习内容:C语言的标识符数据值数据的表示文字数据的表示常量与变量各类数据间的混合运算数据与格式的输入输出2.1C的数据类型计算机程序是由指令和数据组成。整型字符型实型(浮点型)枚举类型单精度型双精度型数组类型结构体类型共用体类型构造类型基本类型指针类型空类型数据类型数据在内存中的存放2.2标识符、常量和变量2.2.1标识符C语言中的标识符可以分为下述3类:

1.关键字2.编译预处理的命令单词3.一般标识符(用户标识符)一般标识符的命名规则:(1)标识符必须以字母(a~z或A~Z)或下划线(_)开头。

(2)在第一个字符之后,可以是字母、数字(0~9)和下划线组成的字符序列,这个序列可以是空串。

(3)C语言中大小写字母是具有不同含义的,即代表不同的标识符。

(4)在不同的系统中标识符字符的有效位数不同。

(5)标识符不能使用系统的保留字。练习:1、以下属于合法关键字的是()A、LongB、charC、doubelD、DO2、以下变量名正确的是()A、2aB、_2aC、-a2D、+a23、请问常量Pi就是PI的说法对吗?2.2.2常量和符号常量1.一般常量在程序运行过程中,其值不能被改变的量称为常量。如:

整型常量:10,0,-6实型常量:2.6,-5.6字符常量:‘a’,‘c’字符串常量:“c”、“china”、“ILoveyou!”

请问‘Goodmorning!’对吗?2.符号常量用一个标识符代表一个常量,称为“符号常量”。格式为:

#define标识符常量其中,#define是宏定义命令的专用定义符;标识符是由用户命名的符号常量名,一般大写;常量可以是数值常量或字符常量。例如:

#definePI3.1415926【例题1.3】已知圆半径radius,求圆的面积area。#include<stdio.h>#definePI3.1415926voidmain(){

intradius;floatPI;floatarea;radius=10;area=PI*radius*radius;

printf("area=%f",area);}

注意:宏定义过的常量不能重新赋值。2.2.3变量在程序执行过程中,其值可以改变的量称为变量,其实际为计算机内存单元。1.变量名变量名与标识符的命名规则相同。例如,以下变量名哪些合法:

area,?exam,i,j,#define,_score,x1,y1,2math,x+y2.变量的定义在C语言中,要求所有用到的变量必须“先定义后使用”。ij变量定义的一般形式为:数据类型

变量名1,变量名2,变量名3……,变量名n;例如:

intnumber;3.变量的定义与初始化赋值

(1)先定义变量,再给变量赋初值。如:

int

a,b,c;a=3;b=4;c=5;(2)C语言允许在定义变量的同时进行初始化。如:

intnumber=100;

numbernumber100(3)也可以对被定义的变量的部分变量进行初始化。如:

int

num,stu=20,wid;(4)如果对几个变量赋予的初值相同,都为5,应写成:

inta=5,b=5,c=5;

表示a、b、c的初值都是5。不能写成inta=b=c=5;(5)每个内存单元都有一个唯一的地址,称为内存地址。内存地址用&符号表示。

如:&number的值为2001(number)2001100【例题1.4】变量的定义。#include<stdio.h>voidmain(){

intnumber=100;floatweight=100.0,height;height=1.80;

printf("number=%d,weight=%f,height=%f\n",number,weight,height);

printf("number的地址是:%ld\n",&number);}2.3整型数据2.3.1整型常量整型常量即整常数,由一个或多个数字组成,可以带正负号。在C语言中,有八进制、十六进制和十进制三种。

(1)八进制整数。以0(零)开头的数表示八进制数。数码取值为0~7。如0134表示八进制数134,即(134)8,其值为:1×82+3×81+4×80,等于十进制数92。-021表示八进制数-21,即十进制数-17。

(2)十六进制整数。以0x或0X开头的数是十六进制数。其数码取值为:0~9,A~F或a~f。如0x134,代表十六进制数134,即(134)16=1×162+3×161+4×160=308。(3)十进制整数。没有前缀,其数码取值为:0~9。如:123,-500,0。【例题1.5】以十进制形式输出八进制整数和十六进制整数.#include<stdio.h>voidmain(){

printf("\n%d%d

%d

%d%d",-021,0x134,0xADE,056,-0x23);}2.3.2整型常量的类型在C语言中,在一个整型常量后加一个后缀符号,可指明整型常量的数据类型。

(1)在一个整型常量后面加一个字母l或L,则认为是长(long

int)整型常量。例如:123L、432L、0L等。

(2)在一个整型常量后面加一个字母u或U,则认为是无符号

(unsignedint)整型常量。例如:54000u,表示十进制无符号整数54000。

(3)在一个整型常量后面加一个字母ul或UL,则认为是无符号

(unsignedlong)长整型常量。例如:897000UL,表示十进制无符号长整数897000。2.3.3整型变量1.整型数据在内存中的存放形式虽然编写程序时可以使用十进制、八进制和十六进制的数据,但是,所有数据在内存中都是以二进制形式存放的,更准确的说应该存放的是二进制的补码。如:intnum=12;实际上计算机内存里存放的是十进制数12的二进制形式1100的补码,在IBMPC系列机上使用的C编译系统,每一个整型变量在内存中占2个字节(16bit)。2.整型变量的分类除了使用基本类型符int定义整型变量外,在int前还可以加上各种修饰符,根据数值的范围将变量定义为以下3类整型变量:(1)基本整型,用int定义。(2)短整型,用shortint定义或short定义。(3)长整型,用longint定义或long定义。其中,每一类又分为无符号(unsigned)和有符号(signed)两种情况。一般定义变量时不加unsigned和signed,C语言默认类型是signed。因此,有以下6类整型变量:(1)有符号基本整型[signed]int

(2)无符号基本整型unsignedint(3)有符号短整型[signed]short[int](4)无符号短整型unsignedshort[int](5)有符号长整型[signed]long[int](6)无符号长整型unsignedlong[int]3.整型变量的定义

C规定在程序中所有用到的变量都必须在程序中定义,即“强制类型定义”。例如:

int

num,score;

unsignedshortx,y;

longi,j;对变量的定义,一般是放在一个函数的开头部分的声明部分(也可以放在函数中某一分程序内,但作用域只限它所在的分程序,这将在第6章介绍)。【例题1.6】交换两个变量的值。#include<stdio.h>voidmain(){

intnum1,num2,t;/*定义整型变量*/

num1=15;/*给变量赋值*/num2=20;printf("num1=%d,num2=%d\n",num1,num2);t=num1;/*交换过程*/num1=num2;num2=t;printf("num1=%d,num2=%d\n",num1,num2);/*输出交换后的值*/

}

4.整型数据的溢出在C语言中,如果一个变量的值超过了其类型所允许的最大值则会出现溢出的现象。例如,一个shortint型变量的最大允许值为32767,如果再加1,会出现什么情况?【例题1.7】整型数据的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论