面向对象程序设计(第一章)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
const int line_size = 8; int cnt = 1; cout << a_string << (cnt % line_size ? ‘ ‘ : ‘\n’) ;
1.3 撰写表达式(Expressions)
• 复合赋值 (compound assignment)
cnt = cnt + 2;
1.4 条件(Conditional)语句和循环(Loop)语句
• 循环语句 while ( 逻辑表达式 ) {
一系列代码; while (逻辑表达式) {
cnt += 2;
类似运算:+=, -=, *=, /=, %=
• 递增和递减运算符
cnt++, cnt--; ++cnt, --cnt;
int tries = 0;
cout << “Are you ready for try #” << ++tries << “?\n”;
Int tries = 1;
1.3 撰写表达式(Expressions)
• 运算符的优先级( precedence) ! ival % 2 //不正确 ! ( ival % 2) //正确
1.4 条件(Conditional)语句和循环(Loop)语句
• 条件语句(Conditional Statements) if ( usr_rsp == ‘N’ || usr_rsp == ‘n’) go_for_it = false; // 注意括号 if ( usr_guess == next_elem) { num_right++; get_it = true; } // 注意语句块,如果没有语句块?
+ 加法运算 a + b
- 减法运算 a - b
* 乘法运算 a * b
/ 除法运算 a / b
% 取余数
a%b
5/3=?
5%3=?
5/4=?
5% 4=?
5/5=?
5%5=?
1.3 撰写表达式(Expressions)
• 条件运算符 expr ? 如果 expr 为 true, 就执行这里 : 如果 expr 为 false, 则执行这里
1.4 条件(Conditional)语句和循环(Loop)语句
• 嵌套的 else - if 语句进行多重判断 if ( num_tries == 1)
cout << “Oops! Nice guess but not quite it.\n”; else if ( num_tries == 2)
cout<<‘\n’<<‘\t’<<user_name; cout<<“\n\t”<<user_name; “F:\\essential\\programs\\chapter1\\ch1_main.cpp”;
常量的定义
• 布尔常量(true, false): bool go_for_it = true;
}
1.4 条件(Conditional)语句和循环(Loop)语句
• switch 语句 switch ( num_tries ) {
case 1 : cout << “Oops! Nice guess but not quite it. \n”; break;
case 2 : cout << “Hmm, Sorry. Wrong a second time.\n”; break;
• 一般常量对象定义(const): const int max_tries = 3; const double pi=3.14159;
max_tries = 42; //错误, 这是个 const 对象
1.3 撰写表达式(Expressions)
• 算术运算符(Arithmetic Operators):
• 自定义数据(对象)类型
结构型:struct 类:class
1.1 如何撰写 C++ 程序
• 类 class 的定义
声明在头文件,扩展名为 .h 代码在具体实现的 cpp文件里
• 使用类 class
程序中包含相应的头文件 例如:include<iostream>
一个完整的 C++ 程序
#include <iostream> #include <string> using namespace std; int main() {
பைடு நூலகம்
1.4 条件(Conditional)语句和循环(Loop)语句
• else语句 if ( usr_guess == next_elem) { // 用户猜对了 } else { // 用户猜错了 }
1.4 条件(Conditional)语句和循环(Loop)语句
• 独立的 if 语句进行多重判断 if ( num_tries == 1)
usr_more=false; if ( usr_rsp != ‘Y’)
usr_more =false;
1.3 撰写表达式(Expressions)
if ( usr_rsp == ‘N’) usr_more=false;
else if ( usr_rsp == ‘n’)
usr_more =false; 错误:
cout << “Are you ready for try #” << tries++ << “?\n”;
1.3 撰写表达式(Expressions)
• 关系运算符 (relational operator)
== 相等 (equality)
a == b
!= 不等 (inequality)
a != b
• 英语
第一章 C++ 编程基础 Basic C++ Programming
如何学习编程语言
• 对象的定义(声明)与初始化 • 表达式与赋值 • 程序控制语句(if, while) • 程序结构(函数) • 自定义对象 • 程序设计语言所具有的独特的特性 • 编程风格
1.1 如何撰写 C++ 程序
•构造函数初始化 int num_tries(0); string sequence_name = “Fibonacci”; #include <complex> complex<double> pure_i(0, 7);
常量的定义
•内建的特殊字符常量(转义序列): ‘\n’ 换行字符(newline) ‘\t’ 跳格(定位)字符(tab) ‘\0’ null ‘\’’ 单引号(single quote) ‘\”’ 双引号(double quote) ‘\\’ 反斜线(backslash)
cout << “Hmm, Sorry, Wronga second time. \n”; else if ( num_tries == 3)
cout << “Ah, this is harder than it looks, isn’t it ?\n”;
1.4 条件(Conditional)语句和循环(Loop)语句
• switch 语句 switch ( next_char ) {
case ‘a’ : case ‘A’ : case ‘e’ : case ‘E’ : case ‘i’ : case ‘I’ : case ‘o’ : case ‘O’ : case ‘u’ : case ‘U’ :
++vowel_cnt; break; // … }
• 程序入口函数 main()
int main() {
//程序代码 } int min(int val1, int val2, int val3) {
//程序代码 }
1.1 如何撰写 C++ 程序
• 内建的数据(对象)类型
布尔型:bool 字符型:char 整数型:int, long 浮点型:float, double, long double
cout << “Oops! Nice guess but not quite it.\n”; if ( num_tries == 2)
cout << “Hmm, Sorry, Wrong a second time. \n”; if ( num_tries == 3)
cout << “Ah, this is harder than it looks, isn’t it ?\n”;
( acct = retrieve_acct_info( password ))) if ( usr_more == false )
cout << “Your score for this session is “ << usr_score << “ Bye!\n”;
if ( !usr_more) ….
• 参考书籍:
钱能 C++程序设计教程 清华大学出版社 2003年9月
The C++ Programming Language Bjarne Stroustrup 著 C++ Primer
Stanley B. Lippman 著
学习方法
• 与 C语言相比较,找出相同点和不同点 • 重点:理解、理解再理解!!!
1.3 撰写表达式(Expressions)
• 运算符的优先级( precedence) 逻辑运算符 ! 算术运算符 ( *,/, % ) 算术运算符 ( +, - ) 关系运算符 ( <, >, <=, >= ) 关系运算符 ( ==, != ) 逻辑运算符 && 逻辑运算符 || 赋值运算符 =
< 小于 (less than)
a<b
> 大于 (greater than)
a>b
<= 小于等于(less than or equal) a<=b
>= 大于等于(greater than or equal) a>= b
1.3 撰写表达式(Expressions)
bool usr_more = true; char usr_rsp; // 询问用户是否愿意继续下一个问题 // 将用户的回答读入 usr_rsp 之中 if ( usr_rsp == ‘N’)
• 嵌套的 else - if 语句组织方式 if ( num_tries == 1)
cout << “output something.\n”; else {
if ( num_tries == 2) cout << “output something.\n”;
else cout << “output something.\n”;
•对象的命名规则及所属类型(内建,自定义) 内建类型:bool, int, float, char 自定义类型:class 例如:#include <string>
string user_name; int usr_val;
1.2 对象的定义与初始化
•对象的初始化 int num_tries = 0; int num_right = 0; int num_tries = 0, num_right = 0;
面向对象程序设计(C++)
学习内容
• 面向对象程序设计概念与C++程序设计入门 • 你将学到的具体内容
– 基本的C++语言基础 – 面向过程编程方式(自顶向下) – 基于对象的编程方式 – 面向对象的编程方式
教材与参考书籍
• 教材:
Essential C++ 中文版
Stanley B. Lippman 著, 侯捷 译
string user_name; cout << “Please enter your first name: “; cin >> user_name; cout << ‘\n’
<< “Hello, “ << user_name << “… and goodbye!\n”;
return 0; }
1.2 对象的定义与初始化
if ( usr_rsp =‘N’) // …
1.3 撰写表达式(Expressions)
• OR 运算符 ( || ) AND 逻辑运算符 ( && ) if ( usr_rsp == ‘N’ || usr_rsp ==‘n’ )
usr_more=false; if ( password && validate( password) &&
case 3 : cout << “Ah, this is harder than it looks, isn’t it?\n”; break;
default : cout << “It must be getting pretty frustrating!\n”; break;
}
1.4 条件(Conditional)语句和循环(Loop)语句
相关文档
最新文档