day 1
# 计算机语言的分类
# 两种 “翻译”
- 编译型语言:
一次性将整个程序 “翻译” 成机器语言的指令,保存成文件,以后执行不需要再 “翻译”,只需执行翻译过的文件。
如:C,C++,Fortran,Pascal
- 解释型语言:
翻译一句执行一句,直到结束或遇到错误。
如:Python,JAVA,PHP,Basic,ASP
# 编译型语言过程
# C++ 的程序结构
1 2 3 4 5 6 7 8
| #include<iostream> // 编译预处理 包含基本输入输出库头文件 using namespace std; // 使用标准库名字空间 int main() /* 主函数 */ { cout<<"Hello World"; cout<<"Hello C++"<<endl; return 0; }
|
# 实例
# 输入输出字符串
# 生日贺卡
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| #include<iostream> using namespace std; int main() { char name1[50],name2[50];//用符号表示字符串(str表示长度不超过50) cin.getline(name1,50);//输入一行 cin.getline(name2,50); cout<<"######################################"<<endl; //显示字符串常量 cout<<name1<<endl; cout<<endl; cout<<"Happy birthday to you!"<<endl;//输出 cout<<endl; cout<<" sincerely yours "<<name2<<endl; cout<<"######################################"<<endl; return 0; }
|
⚠️
显示字符串常量:
用符号表示字符串:
1
| char str[50];//str可以表示长度不超过50的一串字符
|
输入字符串:
1 2
| cin>>str; cin.getline(str,50);//输入一行
|
输出字符串:
# 变量声明和四则运算
# 加法计算器
编程计算两个整数的和。
1 2 3 4 5 6 7 8 9 10
| #include<iostream> using namespace std; int main() { int a,b,c; cin>>a>>b; c=a+b; cout<<c<<endl; return 0; }
|
⚠️
变量的声明:
1 2
| int a,b,c; duble da,db,dc;
|
输入 cin:
1 2 3
| cin>>a>>b; cin>>a; cin>>b;
|
运算:
+,-,*,/,&
# 数学函数和 while 循环
# 计算存款本息
编写程序,计算银行存款本息。用户输入存款金额 money , 存款期 years 和年利率 rate ,根据公
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #include<iostream> #include<cmath> using namespace std; int main() { double money,years,rate; cout<<"请输入本金money,存款年years,利率rate,用空格隔开"<<endl; cin>>money>>years>>rate; while(money>0) { sum=money*pow((1+rate),years); cout<<sum<<endl; cout<<"请输入本金money,存款年years,利率rate,用空格隔开"<<endl; cin>>money>>years>>rate; } return 0; } ``` ⚠️ 数学函数的使用:
|
#include
1 2 3 4 5 6
| 乘方:pow(x,y) 正弦:sin(x) 余弦:cos(x) 正切:tan(x) ![](https://zzblogimages.oss-cn-beijing.aliyuncs.com/202201221236650.png) 循环:
|
while()
{}
### C++程序的基本要素
标识符,关键字,自定义标识符;
变量和常量;
运算符和表达式;
输入和输出;
函数;(main,系统函数,自定义函数)
### 讨论
(1)编译型语言执行效率高于解释型语言;
(2)main函数需要保持唯一性;
(3)cin.getline()按行输入,以回车为输入的分界符,cin按词输入,以空格回车tab作为分界符。
### 例题
(1)
![](https://zzblogimages.oss-cn-beijing.aliyuncs.com/202201221251735.png)
(2)