1 程序设计与C++
1.1 概述
C++兼容了C语言,是面向对象的语言,适合编写系统程序,也适合编写应用软件。
编译型语言编程的步骤
编辑(.cpp)--编译(.obj)--连接(.exe)
解释性语言
翻译一句,执行一句,直到执行完所以命令,或遇到错误,通常使用解释方式执行的语言称为解释性语言,典型的又:Basic、ASP、PHP、Python、Java等。
1.2 编写一个C++程序
#include<iostream> //包含头文件,已有的程序组成的文件,这里是iostream
using namespace std; //使用名字空间,这里的是std
int main() //main主函数,有且只有1个,是程序执行的起点
{
cout<<"hello world"<<endl; //cout表示输出流的对象,这里必须这么写
//两个小于号是运算符,有几个输出项,写几个“<<”
cout<<"hello world"<<endl<<endl; //比如这里就有多个“<<”
//这里第一个是hello world,一个是endl,换行
return 0; //函数结束,并且计算结果返回0
} //大括号是函数体
//分号是c++语句的标识,每条c++语句末尾都要加分号
//单行注释
// /**/是多行注释
编译错误的处理方法
在“编译器”标签下的结构中找第1个error,看后面的信息,遇见不熟悉的查单词,查字典!!! 双击该错误,在编辑窗口中光标指示处前后检查错误并改正。
错误类型
- 编译错误:编译时出现的错误,语法不正确
- 逻辑错误:运行时出现的错误,一般时程序写的不对,加法减法、计算方法等
1.3 程序示例:生日贺卡
#include<iostream>
using namespace std;
int main()
{
cout<<"################################"<<endl;
cout<<"Lv"<<endl;
cout<<endl; //可替换为:cout<<" "<<endl;
cout<<"Happy birthday to you!"<<endl;
cout<<endl;
cout<<" sincerely yours Zhu"<<endl;
cout<<"################################"<<endl;
return 0;
}
如果想改善这个卡片,让其可以输入收卡人名字和送卡人的名字,用字符串。格式:char<字符串名>[<字符串最大长度>]
字符串输入输出
C++输入用cin,格式:cin>><字符数组名>。如cin>>name1;cin>>name1>>name2;输出用cout,格式和输入同理。
改善后的程序为
#include<iostream>
using namespace std;
int main()
{
char name1[50],name2[50];//声明语句,两个字符数组
cin>>name1>>name2;//输出字符串 先声明后使用
cout<<"################################"<<endl;
cout<<name1<<endl;
cout<<endl; //可替换为:cout<<" "<<endl;
cout<<"Happy birthday to you!"<<endl;
cout<<endl;
cout<<" sincerely yours "<<name2<<endl;
cout<<"################################"<<endl;
return 0;
}
cin以空格、tab键、回车符作为分隔符,即遇到这些符号,就认为这一项数据的输入结束了,如果名字不是连续的话,怎么办呢?解决办法:cin.getline(s,50);//按行输入。此时替换cin>>name1>>name2;为:cin.getline(name1,50);cin.getline(name2,50);
1.4 程序示例:加法计算器
计算4+3的结果,程序示例:
#include<iostream>
using namespace std;
int main()
{
cout<<4+3<<endl;
return 0;
}
改进一下,使得用户从键盘输入两个整数,计算它们的和并显示到屏幕上,C++的解决方法: 先解决变量声明问题:
- 程序设计中,用符号表示可变的数据,也叫变量
- 用a,b表示两个整数,c表示它们的和。
C++中使用符号表示数据,要先声明,声明语句可以有多条,每条语句声明一个或多个变量,声明的多个变量用逗号隔开,一个变量只能声明一次。
int a,b,c; //int-integer 声明语句
int a; //变量--存储单位
再解决输入、计算、输出问题:
//数据的输入,用cin
cin>>a; //输入a
cin>>b; //输入b
cin>>a>>b; //输入a和b,上面两个语句可以替换成这一个
//数据计算
c=a+b; //赋值运算
//数据输出
cout<<c<<endl;
改进的程序:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b;
c=a+b;
cout<<c<<endl;
return 0;
}
1.5 程序示例:计算存款本息
编写程序,计算银行存款本息,用户输入存款金额money,存款期years和年利率rate,根据公式,计算到期存款本息。
C++乘方运算:power(x,y),表示x的y次方,pow是函数名。x和y均应为双精度实数。数学函数包含在头文件cmath中,包含头文件#include<cmath>。
代码示例:
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
double money,years,rate,sum; //声明变量
cin>>money>>years>>rate; //输入
sum=money*pow((1+rate),years);//计算
cout<<sum<<endl;
return 0;
}
改进一下程序,使得一次运行,多次输入,可以用到while循环。
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
double money,years,rate,sum; //声明变量
cin>>money>>years>>rate; //输入
while(money>0)
{
sum=money*pow((1+rate),years);//计算
cout<<sum<<endl;//显示
cin>>money>>years>>rate;//输入
}
return 0;
}
数学函数:正弦sin(x),余弦cos(x),正切tan(x),e的x次方exp(x),平方根sqrt(x),绝对值fabs(x)等等。函数名字母均小写,自变量均为双精度实数,结构也是双精度实数
1.6 C++程序的基本要素
1.6.1 标识符
程序中变量、类型、函数和标号的名称统称标识符,系统中已有的标识符称为关键字,自己给变量、函数等起的名字称为自定义标识符,自定义标识符的命名规则:由字母、数字、下划线组成;第1个符号不能是数字;标识符的长度不同编译器规定不同,但至少识别前六个字符,有的长度可达32个字符甚至更长;区分大小写(大小写敏感)。
1.6.2 变量和常量
表示的数据可以改变的符号,称为变量;直接写出的数据以及表示的数据不能改变的符号是常量,可以自己定义符号常量。
1.6.3 运算符和表达式
运算符:表示运算的符号。表达式:表示运算的式子。可以是一个变量、一个常量;也可以是用运算符将变量、常量连接起来,也可以是用运算符将表达式连接起来的式子。
等号也是运算符,等号连接起来的式子是表达式,如c=a+b;等号的左边必须是变量,如5=3正确,单a+b=c+d错误。
1.6.4 语句
语句是一个表达完整的命令,C++中,语句的标志就是分号“;” ,一个式子后面加上一个分号,就是一条语句。
1.6.5 输入和输出
(1)输入cin
cin>>a>>b;//cin输入流对象>>提取运算符
(2)输出cout
cout<<a<<b<<c<<endl;//cout输出对象<<插入运算符
1.6.6 函数
能完成一定功能的有名的程序序列称为函数。如main函数、系统函数、自定义函数等。函数是组成C++程序的基本单位。
2767

被折叠的 条评论
为什么被折叠?



