编程定义

**编程又称编写程序,是人和计算机之间交互的语言。**

编程原理

计算机有众多语言,但是计算机真的可以听懂这些语言吗?实际上,计算机只可以识别二进制 0 和 1。其他的内容都不能够识别,这种由 0 和 1 构成的语言就是机器语言。但是当我们人类使用机器语言编程是一件非常痛苦的过程,一不小心就会打错字符,难以查找错误,也不利于大型项目开发,也就会限制编程技术的发展。

而 C++、Python 等语言就是计算机提供给我们人类和计算机交互的接口,我们并不需要学习机器语言,只需要学会 C++、Python 等语言就可以轻松实现编程。

写程序时,要用到专业的编程工具,在 Windows 系统中,通常使用 Dev C++,使用起来非常简洁方便。

我们写好程序保存、运行,编译器就会将我们的 .cpp 文本格式的文件转化为二进制的机器语言格式交给计算机去执行。

**字体大小**

**支持C++11标准**

工具-编译选项-勾选编译时加入以下命令

-std=c++11

**增加调试功能**

**工具 -> 编辑器选项 -> 代码 -> 缺省源**

工具 - 编辑器选项 - 代码 -缺省源-写入如下代码

#include <iostream>
using namespace std;

int main() {


    return 0;
}

C++ 语言历史

  • 1982 年,本贾尼博士在 C 语言的基础上引入并扩充了面向对象的概念,发明了—种新的程序语言,适合大型项目设计

  • 为了表达该语言与 C 语言的渊源关系,它被命名为 C++。 而本贾尼博士被尊称为 C++ 语言之父。

C++ 和 C 语言的关系

很多同学开始学习 C++ 时,总会纠结是否要先学习 C 语言,其实是不需要先学习 C 语言的,C 语言的大多数代码在 C++ 中都可以直接运行,无需修改,只需要把文件后缀名变为 .c

而且 C++ 也就是 C plus plus,是 C 语言的超集,包括 C 语言没有的功能,最大特点就是面向对象编程,语法就是class关键字,早期,C++ 也叫做 C width class

C++语言基本结构

cout 算术运算符

img

输出数字或数学表达式,不加双引号:(endl:end line 换行)

cout << 123 << endl;
cout << 1 + 2 << endl;
cout << 1 - 2 << endl;
cout << 10 / 3 << endl;
cout << 10 * 1.0 / 3 << endl;
cout << 10 % 3 << endl;

C++ 中除法是整除,两个整数相除,结果会舍弃小数。如果要保留小数,需要将分子变为小数,比如 10.0 / 310 * 1.0 / 3,而不能写成 10 / 3 * 1.0,因为运算顺序从左至右,10 / 3 已经变为 0,再乘以 1.0 结果还是 0。

取模 % 运算要求参与运算的数字必须是整数。

<< 可以拼接多个输出:

cout << "100 + 200 = " << 100 + 200 << endl;

输出:
100 + 200 = 300

闯关练习

Hello,World!

参考程序:

#include <iostream>
using namespace std;

int main() {

    cout << "Hello,World!" << endl;

    return 0;
}

梯形面积

题目解析:

梯形面积 = (上底 + 下地) * 高 / 2

三角形面积 = 底 * 高 / 2

先根据三角形面积计算出梯形的高(等于三角形的高),再计算出梯形的面积,目前还没有学习到保留小数位数的方法,直接用字符串输出结果。

参考程序:

#include <iostream>
using namespace std;

int main() {

    /*
        15 * h / 2 = 150
        => h = 20
        S = (15 + 25) * 20 / 2 = 400
    */

    cout << "400.00" << endl;

    return 0;
}

牛吃牧草

题目解析:

流量存量问题,每天新生量=每天消耗量

$1520 - 2010$ = 10天中新生的草量

参考程序:

#include <iostream>
using namespace std;

int main() {

    /*
        15 * 20  现有草量 + 20天新生草量 式子1
        20 * 10  现有草量 + 10天新生草量 式子2

        式子1 - 式子2 = 100 = 10天新生草量
        每天新生草量 = 10
    */

    cout << 10 << endl;

    return 0;
}

课后作业

打印金字塔

参考程序:

#include <iostream>  
using namespace std; 

int main(){

    cout << "  * " << endl;
    cout << " ***  " << endl;
    cout << "*****" << endl;

    return 0;
}

我是粉刷匠

参考程序:

#include <iostream>
using namespace std;

int main() {

    cout << 18 / 2 / 3 << endl;

    return 0;
}

分苹果

参考程序:

#include <iostream>
using namespace std;

int main() {

    cout << 20 / 3 << " " << 20 % 3 << endl;

    return 0;
}

简单求值

参考程序:

#include <iostream>
using namespace std;

int main() {

    cout << ((123764 + 2453 - 2327) * 23 - 78522) % 3 << endl;

    return 0;
}

买糖果

参考程序:

#include <iostream>
using namespace std;

int main() {

    cout << 8 * 1.0 / 5 * 12 << endl;

    return 0;
}

results matching ""

    No results matching ""