版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
教学目标1.了解C++程序的基本框架;2.掌握C++的基本数据类型;3.掌握常量、变量的定义及使用方法;4.掌握C++提供的基本运算符及表达式;5.掌握数据类型的转换;6.掌握标准输入输出流;7.能够使用VisualC++6.0集成开发环境编辑、编译、运行程序。第一页,共57页。计算机编程基础全文共57页,当前为第1页。教学内容1.C++程序的基本框架2.C++程序的开发过程3.变量与常量4.运算符与表达式5.类型转换第二页,共57页。计算机编程基础全文共57页,当前为第2页。编写程序:在计算机屏幕上显示:
Hello,C++!源程序清单://屏幕输出Hello,C++!#include<iostream>//预编译命令usingnamespacestd;//using命令voidmain()//主函数名{ //表示函数的开头cout<<"Hello,C++!"<<endl;//函数体}//表示函数的结束程序基本框架第三页,共57页。计算机编程基础全文共57页,当前为第3页。编程技巧
1.程序中“//”符号表明本行后续字符为注释信息,该信息与程序的运行无关,在编译时被忽略。另一种注释方法:/**/夹在“/*”与“*/”之间的所有字符为注释信息。
2.#include<iostream>是一条预编译命令,它告诉编译系统在编译本程序时把系统提供的头文件iostream.h的内容插入到该行的位置。所谓头文件是系统提供的能实现某些特定功能的文件,如本例中用到系统提供的输出功能,该功能在iostream.h文件中实现本程序的预编译命令也可以写成:#include<iostream.h>多条#include命令必须分行书写。程序基本框架第四页,共57页。计算机编程基础全文共57页,当前为第4页。编程技巧
3.C++程序由一个或多个函数组成,其中,主函数main必须有且只有一个。函数名之后必须有一对小圆括号(),括号中可以有参数。
main函数在程序中位置可以任意,但主函数main代表了程序执行的起始点和终止点,即程序由多个函组成时,不管main函数放在什么位置,程序总是从主函数main的第一条语句开始执行,并结束于主函数的最后一条语句。在基本程序设计中,源程序只由一个主函数main构成,程序的框架结构均为:程序基本框架第五页,共57页。计算机编程基础全文共57页,当前为第5页。编程技巧#include<iostream>usingnamespacestd;voidmain(){函数体}(1)“{”与“}”必须配对使用,“{}”之间的内容为函数体,函数体内可以包含任意多行语句。(2)C++规定每个语句的最后以“;”结束。(3)C++程序的书写很灵活,一行可书写多个语句,一个语句可以写成多行,但书写时首先应该考虑程序的可读性。程序基本框架第六页,共57页。计算机编程基础全文共57页,当前为第6页。编程技巧(4)主函数的书写也可以是如下形式:intmain(void){函数体return0;
}
4.cout是一个标准输出文件名,表示标准输出设备——计算机屏幕。符号“<<”是插入运算符,它指示计算机把其右端用双引号括起来的字符串输送到屏幕。注意:C++是区分大小写的,所有标点也必须使用西文标点,只有双引号、注释里可以使用中文。
程序基本框架第七页,共57页。计算机编程基础全文共57页,当前为第7页。开发过程中涉及到的程序源程序:用源语言写的,有待翻译的程序目标程序:也称为"结果程序",是源程序通过翻译程序加工以后所生成的程序。翻译程序:是指一个把源程序翻译成等价的目标程序的程序。程序开发过程第八页,共57页。计算机编程基础全文共57页,当前为第8页。三种不同类型的翻译程序汇编程序:其任务是把用汇编语言写成的源程序,翻译成机器语言形式的目标程序。编译程序:若源程序是用高级程序设计语言所写,经翻译程序加工生成目标程序,那么,该翻译程序就称为"编译程序"。程序开发过程第九页,共57页。计算机编程基础全文共57页,当前为第9页。三种不同类型的翻译程序解释程序:这也是一种翻译程序,同样是将高级语言源程序翻译成机器指令。它与编译程序不同点就在于:它是边翻译边执行的,即输入一句、翻译一句、执行一句,直至将整个源程序翻译并执行完毕。程序开发过程第十页,共57页。计算机编程基础全文共57页,当前为第10页。程序开发步骤编辑将源程序输入到计算机中,生成后缀为cpp的磁盘文件。编译将程序的源代码转换为机器语言代码。链接将多个源程序文件以及库中的某些文件连在一起,生成一个后缀为exe的可执行文件。运行调试程序开发过程第十一页,共57页。计算机编程基础全文共57页,当前为第11页。[例]编程输出下列文本**********2008北京欢迎你!**********源程序清单:#include<iostream>usingnamespacestd;voidmain(){cout<<"**********"<<endl;
cout<<"2008北京欢迎你!"<<endl;
cout<<"**********"<<endl;}变量与常量第十二页,共57页。计算机编程基础全文共57页,当前为第12页。编程技巧
1.程序处理的对象是数据,数据有数值数据、文字数据、图像数据、声音数据等多种形式,最基本、最常用的数据是数值数据和文字数据。
2.C++中数据有常量和变量之分,在程序运行过程中,值可以改变的量称为变量,值不能被改变的量称为常量。常量有字面值常量和符号常量两种,字面常量又称为常数或直接常量,是可以从其字面形式直接判别的常量。
C++中的字面常量有整型、实型、字符型、布尔型、字符串型五类变量与常量第十三页,共57页。计算机编程基础全文共57页,当前为第13页。整型常量整型常量包括正整数、负整数和零。
C++中的整型常量可以用十进制、八进制和十六进制表示:①十进制:如15,-235,0②八进制:以0打头,如07,0327,-02③十六进制:以0X或0x打头,如-0x7,OX5bf了解:长整型常量的表示方法是加后缀字母l或L,如712l,0x5fL变量与常量第十四页,共57页。计算机编程基础全文共57页,当前为第14页。实型常量变量与常量第十五页,共57页。计算机编程基础全文共57页,当前为第15页。字符型常量变量与常量第十六页,共57页。计算机编程基础全文共57页,当前为第16页。附录ⅠASCⅡ代码表变量与常量第十七页,共57页。计算机编程基础全文共57页,当前为第17页。字符串型常量变量与常量第十八页,共57页。计算机编程基础全文共57页,当前为第18页。布尔型常量布尔型数据的取值:
只有false和true两种布尔型数据也可以和数值型数据参与运算,
此时:true相当于1false相当于0
这种情况下,vc++6.0编译系统会给出警告信息,建议不要这样使用布尔型数据变量与常量第十九页,共57页。计算机编程基础全文共57页,当前为第19页。[例]计算2与3的和并显示在屏幕上算法描述:定义三个整型变量a、b、sum将2存入a变量中将3存入b变量中计算a与b的和存入sum变量中将sum的值输出到屏幕变量与常量第二十页,共57页。计算机编程基础全文共57页,当前为第20页。源程序清单#include<iostream>usingnamespacestd;voidmain(){inta,b,sum=0;a=2;
b=3;sum=a+b;
cout<<a<<“+”<<b<<“=”<<sum<<endl;}变量与常量第二十一页,共57页。计算机编程基础全文共57页,当前为第21页。编程技巧
1.无论什么数据,计算机在处理时都要先将其存放在内存中,数据在内存中存放的格式称为数据类型,不同数据类型的数据存储格式不同。程序中所有用到的数据都必须指明其数据类型。
C++的数据类型分为基本数据类型和非基本数据类型两大类。基本数据类型是C++内部预定义的类型,包括整型、实型、双精度型、字符型、布尔型。非基本数据类型是指根据C++语法规则由基本数据类型构造出来的类型,如数组、指针、引用、类、结构、联合、枚举等。变量与常量第二十二页,共57页。计算机编程基础全文共57页,当前为第22页。编程技巧
2.变量是用于临时存放数据的内存单元,所谓变量是指在程序运行的过程中该内存单元的内容可以改变
3.变量在使用前必须先定义,即给变量命名、指定数据类型、赋初值。(1)变量的命名①不同语言系统可使用的字符有所不同,C++中可使用的字符集:大小写的英文字母:A~Z,a~z数字字符:0~9特殊字符:空格! # % ^ & * _(下划线)+ = - ~< > / \ ' " ; . , () [] {}变量与常量第二十三页,共57页。计算机编程基础全文共57页,当前为第23页。编程技巧②变量的命名必须遵循C++的标识符命名规则,所谓标识符就是指在程序中声明变量、数组、函数和标号等的名称,分为系统保留字和用户自定义标识符。系统保留字又叫关键字(参见附录),有预定的含义,不允许用户重新定义,也不允许用户定义的标识符与其同名。③用户自定义标识符的规则标识符只能包含字母、数字和下划线;必须以字母或下划线开头;不能使用关键字;大小写敏感;变量命名应符合自定义标识符的规则,见名识意变量与常量第二十四页,共57页。计算机编程基础全文共57页,当前为第24页。(2)变量的基本数据类型
内存单元可存储的数据数据类型占用内存字节数取值范围整型短整型short2-32768~32767整型int4-2147483648~2147483647长整型long4-2147483648~2147483647浮点型实型float4±3.4e-38~±3.4e38双精度型double8±1.7e-308~±1.7e308长双精度型longdouble10±3.4e-4932~±1.1e4932字符型char1一个字符布尔型bool1true,false编程技巧第二十五页,共57页。计算机编程基础全文共57页,当前为第25页。编程技巧
C++的数据类型分为有符号型和无符号型(加前缀unsigned),默认为有符号型,无符号型数据将符号位用于表示数值,扩大了变量的表数范围指定变量的类型时,尽可能使用占用内存空间少的数据类型,但也要考虑机器的运算速度。如用long型可以得到大范围的整数但同时会降低运算速度。用short型内存占用空间比int型少,但计算机处理short型数据时必须先将其转换成基本整型int型,导致计算机耗时多,因此常使用int型变量存储整数选择数据类型时还必须考虑溢出问题,即存放的数据超出了存储范围,使得结果出错变量与常量第二十六页,共57页。计算机编程基础全文共57页,当前为第26页。(3)变量的定义变量必须“先定义,后使用”。程序运行时,系统为定义的变量分配内存空间,用于存放对应类型的数据,因而变量名就是对应内存空间的命名。定义变量时可以赋初值,称为变量初始化。在C++中,如果不给变量提供初值,变量会包含一个无意义的值,程序员称之为“垃圾数据”,因此建议养成给变量初始化的好习惯。注意:初值的类型必须与变量的类型相同。
变量与常量编程技巧第二十七页,共57页。计算机编程基础全文共57页,当前为第27页。变量定义格式
语法示例初值1、数据类型变量名=初值;2、数据类型变量名(初值);3、数据类型变量名1,变量名2,…变量名n;变量名1=初值;变量名2=初值;...变量名n=初值;intage=0;0floatrate=0.0;floatrate(0.0);doublecost=0.0;0.0chargrade=‘’;空格inta,b,c;a=1;b=3;c=4;变量与常量编程技巧第二十八页,共57页。计算机编程基础全文共57页,当前为第28页。[例]求键盘输入的两个数的和思路分析:c++中的标准输入流cin可以接收从键盘输入的数据。本题未指定数据类型,为避免数据溢出,数据类型最好定义为double型。算法描述:
定义三个double型变量a、b、sum提示输入两个数从键盘输入一个数到a变量从键盘输入第二个数到b变量计算a与b的和放到sum变量中将sum的值输出到屏幕变量与常量第二十九页,共57页。计算机编程基础全文共57页,当前为第29页。#include<iostream>usingnamespacestd;voidmain(){
doublea,b,sum;//定义了三个double型变量
cout<<"请输入两个数:";//提示用户输入两个数
cin>>a>>b;//由键盘输入数据分别存入变量a、b中
sum=a+b;//a与b相加的和赋给变量sum
cout<<a<<"+"<<b<<"="<<sum<<endl;}源程序清单变量与常量第三十页,共57页。计算机编程基础全文共57页,当前为第30页。编程技巧
C++使用数据流,即字符序列来执行标准输入输出操作。计算机屏幕是标准输出流设备,称为cout。键盘是标准输入流设备,称为cin。我们可以把cout流看作是通过计算机屏幕发往用户的字符系列,把cin流看作是通过键盘发给计算机的字符系列。
1.cin>>a>>b;中“>>”称为提取运算符,该语句的作用是等待从键盘输入数据,接收后依次存入变量a、b中。输入数据的个数、类型必须与接收变量依次一致,输入数据之间可以用空格、回车或Tab键分隔开,输入完所有数据后,使用回车键表示输入结束。Page31变量与常量第三十一页,共57页。计算机编程基础全文共57页,当前为第31页。注意:
cin流的“>>”后必须是变量名。通常在输入语句的前面应增加一条输出语句,用于提示操作者输入几个什么数据类型的数据。2.cout<<a<<“+”<<b<<“=”<<sum<<endl;中“<<”称为插入运算符,该语句的作用是将变量a的值、字符串"+"、变量b的值、字符串"="、变量sum的值依次显示在计算机屏幕上,endl起换行输出的作用。Page32编程技巧变量与常量第三十二页,共57页。计算机编程基础全文共57页,当前为第32页。[例]从键盘输入一个圆的半径,计算并输出圆的面积和周长定义三个double型变量r、area、circum提示输入半径从键盘输入半径值到r变量计算3.14×r×r的结果存入area变量中计算2×3.14×r的结果存入circum变量中将area的值输出到屏幕将circum的值输出到屏幕算法描述:
变量与常量第三十三页,共57页。计算机编程基础全文共57页,当前为第33页。源程序清单#include<iostream>usingnamespacestd;voidmain(){doubler=0.0;
doublearea=0.0;
doublecircum=0.0;
cout<<"请输入半径:"<<endl;
cin>>r;
area=3.14*r*r;
circum=2*3.14*r;
cout<<"面积为:"<<area<<endl;
cout<<"周长为:"<<circum<<endl;}变量与常量第三十四页,共57页。计算机编程基础全文共57页,当前为第34页。编程技巧
1.当程序中需要多次使用某个数值时,可以使用符号常量来代替。所谓符号常量,就是用标识符代表一个常量。如程序中多处用到圆周率3.14,我们可以定义constdoublePI=3.14;后面的程序中就可使用PI代替3.14,当需要修改PI的精度时只要修改定义语句为constdoublePI=3.14159;即可。
2.符号常量的特点是先定义后使用,而且定义时一定要赋初值,在程序中间不能改变其值。定义符号常量时习惯使用大写字母。变量与常量第三十五页,共57页。计算机编程基础全文共57页,当前为第35页。编程技巧语法示例1、const数据类型常量名=值;2、数据类型const常量名=值;constintAGE=30;constdoubleMAXPAY=15.75;constcharYES=‘Y’;3.符号常量的定义格式:变量与常量第三十六页,共57页。计算机编程基础全文共57页,当前为第36页。[例]求键盘输入的两个非0整数的和、差、积以及平均数
算法描述:Page37算术运算符与算术表达式
定义两个int型变量a、b定义一个double型变量avg提示输入两个整数从键盘输入变量a、b的值计算平均数放入avg变量中输出a、b的和输出a、b的差输出a、b的积输出avg的值第三十七页,共57页。计算机编程基础全文共57页,当前为第37页。源程序清单算术运算符与算术表达式
#include<iostream>usingnamespacestd;voidmain(){inta,b;doubleavg=0;cout<<"请输入两个非0整数:";cin>>a>>b;avg=(a+b)/2.0;cout<<a<<"+"<<b<<"="<<a+b<<endl;cout<<a<<"-"<<b<<"="<<a-b<<endl;cout<<a<<"*"<<b<<"="<<a*b<<endl;cout<<"平均数="<<avg<<endl;}第三十八页,共57页。计算机编程基础全文共57页,当前为第38页。编程技巧算术运算符与算术表达式
1.对数据进行处理和计算可以通过表达式来实现。表达式可以理解为用于计算的公式,它由运算符、运算量(也称操作数)和括号组成。执行表达式所规定的运算得到的结果值便是表达式的值
2.运算符分为单目运算符、双目运算符以及三目运算符负号为单目运算符,又称为一元运算符
+、-均为双目运算符,又称为二元运算符极个别的运算符为三目运算符,比如条件运算符,我们将在以后为大家做以介绍
第三十九页,共57页。计算机编程基础全文共57页,当前为第39页。
3.数学中的加减乘除有“有括号先算括号、先乘除后加减,”、“同级先左后右”的运算规则,其实就是运算符的优先级和结合性。C++中的运算符也具有优先级和结合性结合性是指当表达式中的多个运算符优先级相同时,是按照从左至右的顺序执行,还是从右至左的顺序执行,从左至右称为左结合,从右至左称为右结合。如,加减乘除是按照左结合规则执行,大多数运算符都是左结合方式。编程技巧算术运算符与算术表达式
第四十页,共57页。计算机编程基础全文共57页,当前为第40页。编程技巧4.基本算术运算符的功能、优先级别
Page41算术运算符与算术表达式
运算符运算优先级别()改变正常优先级1-负号2*,/,%乘法、除法、求余运算3+,-加、减法4(1)%为求余运算符,用于计算两个整数相除的余数(2)/为除法运算符,当两个整型数相除时,结果是取整数舍小数第四十一页,共57页。计算机编程基础全文共57页,当前为第41页。[例]写出程序的运行结果#include<iostream>usingnamespacestd;voidmain(){inti=5,j=5;intm=10,n=10;i++;
++j;cout<<i<<""<<j<<endl;cout<<i++<<""<<++j<<endl;m--;
--n;cout<<m<<""<<n<<endl;cout<<m--<<“”<<--n<<endl;
}算术运算符与算术表达式
第四十二页,共57页。计算机编程基础全文共57页,当前为第42页。解题技巧
1.C++提供了自增(++)、自减(--)运算符,作用是使变量的值增加1或减少1。
2.自增(++)、自减(--)运算符只能用于变量,不能用于常量。
++、--在变量的前后位置不同导致运算过程不同:若变量在前,系统会先使用变量中原有的值参与运算、输出或赋值,然后变量再自增或自减1;若变量在后,变量先自增或自减1,然后系统再使用变量的新值参与运算、输出或赋值。3.++、--结合方向自右向左。如-i++表示-(i++)算术运算符与算术表达式
第四十三页,共57页。计算机编程基础全文共57页,当前为第43页。[例]编程计算奖金数额,奖金按销售额的5%计算赋值运算符与赋值表达式
定义两个double型变量sales、bonus输出提示信息从键盘输入变量sales的值计算sales*0.05,将结果赋给变量bonus输出sales、bonus的值算法描述:
第四十四页,共57页。计算机编程基础全文共57页,当前为第44页。源程序清单
#include<iostream>usingnamespacestd;voidmain(){doublesales=0.0;doublebonus=0.0;cout<<"请输入销售额:"<<endl;cin>>sales;bonus=0.05*sales;cout<<"销售额为:"<<sales<<endl;cout<<"奖金为:"<<bonus<<endl;}赋值运算符与赋值表达式
第四十五页,共57页。计算机编程基础全文共57页,当前为第45页。编程技巧
1.在程序运行中要改变变量的值,可以使用赋值语句。“=”为赋值运算符,当程序运行时,先求出赋值号右边表达式的值,然后再将结果存入赋值运算符左边的变量。(1)不能用赋值语句给常量赋值。(2)表达式的数据类型必须和要赋值变量的数据类型匹配,否则系统将进行隐式类型转换,编译时出现警告信息。(3)变量每次只能存储一个值,当另一个值赋给该变量后,新值会取代原有的值。赋值运算符与赋值表达式
第四十六页,共57页。计算机编程基础全文共57页,当前为第46页。编程技巧(5)为了简化程序、提高编译效率,在赋值符“=”之前可以加上其它运算符,构成复合赋值运算符,如:+=,-=,*=,/=,%=等a=b=c=5 表达式值为5,a,b,c均为5a=5+(c=6) 表达式值为11,a为11,c为6a=(b=4)+(c=6)表达式值为10,a为10,b为4,c为6a=(b=10)/(c=2) 表达式值为5,a为5,b为10,c为2a+=a-=a*a
相当于:a=a+(a=a-a*a)Page47赋值运算符与赋值表达式
第四十七页,共57页。计算机编程基础全文共57页,当前为第47页。[例]写出程序运行结果逗号运算符与逗号表达式#include<iostream>usingnamespacestd;voidmain(){intx=0,y=2;inta=5,i=0,j=0;x=(a=3*5,a*4);y=(i=2,j=2,i++,--j);cout<<x<<endl<<y<<endl;}第四十八页,共57页。计算机编程基础全文共57页,当前为第48页。解题技巧
1.逗号运算符的使用格式为:表达式1,表达式2,……表达式n运行时依次求解各个表达式的值,最后一个表达式n的值作为整个表达式的值。
2.使用逗号表达式的目的一般只是想分别得到各个表达式的值,而并非一定需要得到和使用整个逗号表达式的值。
3.逗号运算符是所有运算符中级别最低的运算符。已学运算符的优先级顺序为:算术运算符>赋值运算符>逗号运算符。逗号运算符与逗号表达式第四十九页,共57页。计算机编程基础全文共57页,当前为第49页。自动类型转换[例]写出程序运行结果:#include<iostream>usingnamespacestd;voidmain(){inta1=10,a2=5,k;doubleb,c,s;b=38.425,c=12.0;charc1='A',c2='B';s=b+a1-c;k=c1+c2+a1+b;cout<<k<<“,”<<s<<endl;
}数据类型转换第五十页,共57页。计算机编程基础全文共57页,当前为第50页。解题技巧
1.如果不同类型的数据参与运算或者表达式值的数据类型与要赋值变量的数据类型不一致,大多数程序设计语言使用隐含类型转换来使数据类型一致。隐含类型转换由系统自动进行,但有可能影响程序结果的准确率,所以系统会出现警告信息,编程时要避免出现此类情况。
2.隐含类型转换原则:(1)赋值号右边类型转换为赋值
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 协同办公赋能应用制造网络:协作化质量控制策略的深度解析与实践探索
- 协同办公赋能制造企业内部绩效审计:模式构建与实践探索
- 协同办公赋能上海市地价测算系统:编制逻辑、应用创新与发展路径
- 冠心病患者经皮冠状动脉介入术后管理方案
- 再生医学干细胞修复脊髓损伤策略
- 儿童肺炎支原体感染靶向治疗精准方案
- 儿科罕见病基因治疗临床试验推进方案
- 2026年国土空间规划干事试卷(带答案)
- 2026年低压电工安全技术考核押题卷及答案
- 2025年火电综合安全考试试题及答案
- (新版)农业经理人职业技能考试题(附答案)
- 外贸英语函电 第十版 课件全套 兰天 CHP1 E-Commerce from Concept to Practice -CHP13-2 Specimen Letters
- 老年医学培训试题及答案
- 《工程力学》课件-00绪论
- fgOTN细颗粒光传送网技术白皮书
- 2024光伏发电工程施工质量验收规程
- 2024人防工程设计指南医疗救护工程分册
- 见证取样手册
- DL∕T 1828-2018 火电厂烟气脱硝再生催化剂
- DZ∕T 0301-2017 海洋地质图图例图式及用色标准(正式版)
- 统编小学语文六年级上册第三单元解读
评论
0/150
提交评论