第一章 程序的基本结构. 第一章 程序的基本结构 教材及授课结构 本章目标 基本内容 扩展阅读 上机指导 应用举例 习题.

Slides:



Advertisements
Similar presentations
1 第二讲 C++ 编程基础. 2 主要内容 C++ 语言概述 C++ 编程基础 数据的简单输入输出 C++ 的发展 C++ 源程序结构与书写规范 C++ 编译器和集成开发环境.
Advertisements

1 第 3 章 C++ 中的条件与循环 第 3 次见面! acm.nefu.edu.cn/C++_03.ppt.
C++语言程序设计教程 第5章 构造数据类型 第6章 C++程序的结构.
C语言程序设计 主讲教师 :张群燕 电话:
5.1 Excel 概述 Excel的特点 1、表格制作 2、完成复杂运算 3、建立图表 4、数据库管理 5、决策支持.
正修科技大學典範人物專訪 寫作徵文比賽實施要點
第 2 章 初探 C++.
玉溪工业财贸学校副校长 示范校建设办公室主任 柏家渭 2014年5月13日
课程概况 加入班级QQ群,便于及时沟通和资料共享。 课程教学的组成:
第4章 数组 数组是由一定数目的同类元素顺序排列而成的结构类型数据 一个数组在内存占有一片连续的存储区域 数组名是存储空间的首地址
第八章 类和对象.
C++程序设计 王希 图书馆三楼办公室.
第十章 房地产开发项目的经济评价 §1 房地产开发项目及其前期工作 §2 房地产开发项目经济评价 本章内容.
Chapter 1 用VC++撰寫程式 Text book: Ivor Horton.
資料大樓 --談指標與陣列 綠園.
函數(一) 自訂函數、遞迴函數 綠園.
教材 《C++程序设计》.谭浩强. 清华大学出版社 王雪晶
C 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
Object-Oriented Programming in C++ 第一章 C++的初步知识
2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。
第一章 C++编程简介 丘志杰 电子科技大学 计算机学院 软件学院.
计算机网络讲义 第5章 批量数据处理—数组 一维数组 排序和查找 二维数组 字符串.
第四章 小技巧.
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
C++程序设计 string(字符串类) vector(容器类).
C++语言程序设计 第二章 C++简单程序设计.
付款作業錯誤態樣【出納組】 錯誤1~核銷文件備具不齊 錯誤2 ~戶名與系統不同 錯誤3 ~未輸發票號碼日期 錯誤4 ~受款人帳號輸錯
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
谭浩强 编著 中国高等院校计算机基础教育课程体系规划教材 C++程序设计.
C++语言程序设计 第十一章 流类库与输入/输出.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
第4章 顺序程序设计.
序及第0章.
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
C++大学基础教程 第3章 C++控制语句 北京科技大学 信息基础科学系.
C++大学基础教程 第11章 多态性 北京科技大学 信息基础科学系 2019/4/8 北京科技大学.
Name1..hour //加班時數 name2..hour //請假時數
第二章 基本数据类型及运算 C数据类型概述 基本数据类型 运算符和表达式 混合运算与类型转换 数据的输入输出 顺序程序设计举例.
第八单元 Word和Excel 进阶应用.
Chapter 2 & Chapter 3.
C++语言程序设计 C++语言程序设计 第五章 函数 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
第一章 程序设计和C语言 主讲人:高晓娟 计算机学院.
C语言程序示例: 1.输入10个数,按从小到大的顺序排序。 2.汉诺塔问题。.
C++语言程序设计 C++语言程序设计 第三章 控制语句 第十一组 C++语言程序设计.
物件導向程式設計 CH2.
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
電腦應用 製作單位: 高雄市立高雄中學.
第11章 從C到C++語言 11-1 C++語言的基礎 11-2 C++語言的資料型態與運算子 11-3 C++語言的輸出與輸入
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
C++程式設計入門 變數與運算子 作者:黃建庭.
C/C++基礎程式設計班 C++: 物件的使用、參考、重載函式 講師:林業峻 CSIE, NTU 3/28, 2015.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
C++语言程序设计 第十章 C++标准模板库 成都信息工程学院计算机系.
C++语言程序设计 C++语言程序设计 第十章 多态 第十一组 C++语言程序设计.
第1章程序设计和C语言.
《数据结构与算法设计》第一部分 面向对象的C++程序设计基础.
C++程序设计 概述 潘荣江 山东大学软件学院.
第三章 高级函数特性.
C++语言程序设计 C++语言程序设计 第十一章 异常处理 C++语言程序设计.
變數與資料型態  綠園.
——彻底变革算法与程序设计的教学方式 湖北省水果湖高级中学 伍先军.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

第一章 程序的基本结构

教材及授课结构 本章目标 基本内容 扩展阅读 上机指导 应用举例 习题

教学目标 了解程序的基本知识和上机环境,学习 1)了解主函数和一般函数的概念,了解结构化程序设计与面向对象程序设计的程序框架特征和程序设计技术的应用及发展趋势; 2)掌握源程序的书写格式,包括标识符和关键(保留)字的使用; 3)了解编译预处理、编译和链接过程和从编辑源程序到程序运行的操作方法; 4)掌握数据的输入输出(包括输入输出格式)方法。

基本内容 1.1 几个简单的程序 1.2 程序的基本结构和要素

程序设计语言 通用应用软件 当前流行的程序设计语言工具 C与C++ –文字处理: Word –表格处理: EXCEL –科学计算 MATLAB …... 当前流行的程序设计语言工具 Microsoft: Visual C++、Visual Basic Borland: Delphi、C++Builder Sun: Java C与C++

1.1 几个简单的程序 //例1-1:在屏幕上显示:This is my first program! #include <iostream> //包含基本输入输出库文件 using namespace std; // 使用名字空间std int main( ) //主函数名 { cout << "This is my first program! "; //屏幕显示语句 return 0; //表示程序顺利结束 } C++的程序由函数组成。该程序只由一个主函数main()构成 一对花括号“{ }”是主函数的定界符 程序语句全部采用小写字母。区分大小写,书写采用自由格式 语句用分号结束;一行可以写多个语句 注释行: 以两个“//”起头的任何文字

例1-2:加法计算器程序 // 例1-2:加法计算器程序 #include <iostream> //包含基本输入输出库文件 using namespace std; //使用名字空间std int main() //主函数名 { int x, y, sum; //定义三个变量 cout<<"Please input two numbers: "; //屏幕显示提示信息 cin>>x>>y; //输入两个变量的值 sum = x + y; //加法计算 cout << x << " + " << y << " = " << sum << endl; //输出运算结果 return 0; //表示程序顺利结束 }

例1-3:根据三角形的三个边长求三角形面积 // 例1-3:求三角形面积 #include <iostream> #include <cmath> //包含标准数学函数库 using namespace std; // 定义area()函数,其函数的返回值和形式参数a, b, c都是双精度类型 double area(double a, double b, double c) { double s, t; //定义本函数中用到的变量s和t为可描述实数的双精度类型变量 s = (a+b+c)/2; //计算中间变量s t = sqrt(s*(s-a)*(s-b)*(s-c)); //调用标准数学开平方函数 return t; //将运算结果t的值返回,通过函数名area带回函数调用处 } // 主函数 int main() { double x, y, z; //变量说明,定义三个可对实数进行操作的双精度类型变量 //调用area函数(参数使用几个确定的值)并将计算得到的结果直接输出 cout << "边长分别为3、4、5的三角形面积为:" << area(3, 4, 5) << endl; cout<<"请分别输入其他任意三角形三条边长: "; cin>>x>>y>>z; //调用area函数(参数为用户任意输入的值)并将计算得到的结果直接输出 cout << "三角形面积为:" << area(x, y, z) << endl; return 0; 按这种方法设计程序就称为模块化程序设计。

1.2 程序的基本结构和要素 1.2.1 程序的基本结构 1.2.2 输入与输出 1.2.3 注释 1.2.4 标识符和关键字

1.2.1 程序的基本结构 C++程序由函数组成;至少包括主函数main()和(或)若干个子函数。唯一的主函数main()是整个程序的入口点。 一个函数又由变量及参数说明语句和语句序列构成。 每个语句必须用分号结尾。一个语句行可以写多个语句,一个语句可以写在多行上。 C++语言允许在程序中插入注释行。 C++语言提供了包括I/O功能在内的大量标准库函数,但调用这些函数时,必须在程序头部包含头文件。 [全局变量说明] [#include <头文件>] using namespace std; [子函数1 [(形式参数)] { [子函数局部变量说明] [语句序列] } [。。。。] int main( ) [局部变量说明] return 0; 函数体

1.2.2 输入与输出 cin表示输入流对象,其基本用法为: cout表示输出流对象,其基本用法是: cin>>V1>>V2>>…>>Vn; 在输入时,应注意用空格或tab键将所输入的数据分隔开。 必须注意所输入数据的类型应与接受该数据之变量的类型相匹配,否则输入操作将会失败或者得到的将是一个错误的数据。 cout表示输出流对象,其基本用法是: cout << E1 << E2 <<…<< Em; 在输出时,要注意恰当使用字符串和换行符endl,提高输出信息的可读性。 cout << x << " + " << y << " = " << sum << endl;

输入输出图示 cin>>x>>y; cout << "This is my first program! ";

1.2.2 注释 C++的注释有两种形式: // 用于单行注释 /* … */ 用于多行注释 注释可以出现在空白符允许出现的任何地方,但习惯上将注释和其所描述的代码相邻,一般可以放在代码的上方或右方,不放在下方。 恰当使用注释可以使程序容易阅读。

1.2.2 标识符和关键字 是程序中变量、类型、函数和标号的名称。 由字母、数字和下划线“_”组成,第一个字符不能是数字。 “大小写敏感”。 各种C++编译器对在标识符中最多可以使用多少个字符的规定各不相同,ANSI标准规定编译器应识别标识符的前6个字符。 在标识符中恰当运用下划线,大、小写字母混用以及使用较长的名字都有助于提高程序的可读性。

标识符、关键词和标点符号 C++关键词 asm,auto,bad_cast,bad_typed,bool,break,case,catch,char,class,const,const_cast,continue,default,delete,do,double,dynamic_cast,else,enum,except,extern,explicit,false,finally,float,for,friend,goto,if,inline,int,long,mutable,namespace,new,operator,private,protected,public,register,reinterpret_cast,return,short,signed,sizeof,static,static_cast,struct,switch,template,this,throw,try,type_info,typedef,typeid,union,unsigned,using,virtual,void,volatile,while C++还有12个标识符作为编译预处理 define,elif,else,endif,error,if,ifdef,ifndef, include,line,progma,undef C++的标点和特殊字符有 ! % ^ & * ( ) – + = { } | ~ [ ] \ ; ' : " < > ? , . / #

扩展阅读 1.3 C/C++背景 1.3.1 程序设计语言的发展 1.3.2 从C到C++

上机指导 1.4 Visual C++集成开发环境 其他调试环境 Visual C++ 6.0

应用举例 例1-4 计算下式的结果,其中x= -3 .5°,y= 6.7° #include <iostream> #include <cmath> //包含标准数学函数库 using namespace std; int main() { double x, y; //将角度单位由度转换为库函数所要求的弧度值 x=-3.5/180*3.14159; y=6.7/180*3.14159; //计算三角函数并输出 cout << sin(fabs(x)+fabs(y))/sqrt(cos(fabs(x+y))) << endl; return 0; }

应用举例 例1-5 计算保险经纪人月薪 假定每一名保险经纪人的月工资都由三部分组成:底薪+奖金+业务提成。 例1-5 计算保险经纪人月薪 假定每一名保险经纪人的月工资都由三部分组成:底薪+奖金+业务提成。 奖金的颁发方法为:奖金为经纪人在公司的工作年数*10,即每年10元; 业务提成的颁发方法为:当月销售额的3%提成。 编程要求:当用户按照屏幕提示分别输入经纪人的底薪、工龄以及当月销售额后,程序计算并输出经纪人的月薪。

算 法 分 析 输入底薪baseSalary 输入经纪人在公司的工作年数serviceYears 计算奖金bonus = 10 * serviceYears 输入经纪人当月销售额totalSale 计算提成additionalBonus = 0.03 * totalSale 计算经纪人的月薪Salary = baseSalary+bonus+additionalBonus 输出结果

#include <iostream> using namespace std; int main() { //声明部分,定义程序中将用到的变量 double baseSalary, bonus, totalSale, additionalBonus, Salary; int serviceYears; cout<<"请输入底薪:"; cin>>baseSalary; cout<<"请输入经纪人在公司的工作年数:"; cin>>serviceYears; //计算奖金bonus bonus=10*serviceYears; cout<<"请输入经纪人当月销售额:"; cin>>totalSale; //计算提成additionalBonus additionalBonus=0.03*totalSale; //计算经纪人的月薪Salary Salary = baseSalary+ bonus+ additionalBonus; cout<<"该经纪人的月薪为:"<<Salary<<endl; return 0; }

案例:重量单位换算 编写一个重量单位换算程序,输入用公斤表示的重量,然后程序能够转换并输出用镑和盎司表示的等效重量。 教学设问 请输入重量(公斤):23 转换为用磅表示的重量(磅):50.7055 转换为用盎司表示的重量(盎司):811.287 教学设问 如何设计变量及选择相应的数据类型? 公斤、磅和盎司的转换公式是什么? *更多案例见本书配套教材《C/C++语言程序设计案例教程 》罗建军等编著,清华大学出版社

问题分析 为保证程序能够处理带小数点的数值,变量的数据类型需选用可以对实数进行操作的双精度类型double。故变量列表为: double kilogram, pound, ounce; //公斤、镑、盎司 公斤、磅和盎司的转换公式: 1磅=16盎司=0.4536千克(公斤) 算法如下: 1. 得到用公斤表示的重量 2. 将重量转化为磅:pound=kilogram/0.4536; 3. 将磅转化为盎司:ounce=pound*16;  4. 输出转换后的重量

// 重量单位换算 #include <iostream> using namespace std; int main() { double kilogram, pound, ounce; //公斤、镑、盎司 cout<<"请输入重量(公斤):"; cin >> kilogram; pound=kilogram/0.4536; ounce=pound*16; cout<<"转换为用磅表示的重量(磅):"<<pound<<endl; cout<<"转换为用盎司表示的重量(盎司):"<<ounce<<endl; return 0; }

进一步思考 如果要想从磅和盎司转换成公斤,应该怎么修改程序? 如果要想将本案例程序的输出改成**磅**盎司(磅和盎司都省略小数点后的位数),应该怎么修改程序?

习题 在计算机上调试运行本章的所有例题,熟悉实验环境和方法。 修改例1-1程序,使其能够在计算机屏幕上显示: ******************* * Hello World! * 仿照例1-2的加法计算器程序,编写一个通用计算器程序,当用户输入两个数以后,可以计算并输出这两个数的和、差、积、商。 仿照例1-3,编写一个计算直角三角形斜边边长的程序,要求当输入直角三角形的两个直角边边长后,能够计算出第三边(即斜边)的边长。 仿照例1-4,编写程序,计算 在x=3时的值。 仿照例1-5,编写一个程序,当输入某学生“英语”课程的平时成绩、期中考试和期末考试成绩及各项占总成绩的比例后,可以计算出该生“英语”课程的最终成绩。

结 束 语 学好程序设计语言的唯一途径是 你的编程能力与你在计算机上投入的时间成 上机练习 正比