C++程序入门--篇章1

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,根据公式sum=money{(1+rate){}}^{years},计算到期存款本息。

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++程序的基本单位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值