c++零基础新手入门(一)

本文所有代码均在Vscode中编译通过


本节目录:

    1° 世界你好!

    2° 换行

    3° 1+1

    4° 计算器

 

本文是c++零基础新手入门系列的第一篇,以后会有数据结构系列,算法系列等等。

世界你好!

先来看一段代码

include <iostream>
using namespace std; 

int main() {    
    cout << "hello world";//输出hello world    
    return 0;
}

简直就是一团乱码,令人头脑发热。一起来分析一下吧。

第一行include中文译为"包含",后面加上一个文件名,叫做"头文件"。用<>括起来,每个文件里面有实现各种各样问题的"方法"。比如cout这个函数,就是iostream这个头文件里的一个函数,是实现"输出"的"方法"。就像是一个大哥带着一群小弟。写上这行代码,表示告诉了计算机:"我实现这个程序,需要这几个头文件,帮我准备好,不然程序不能正常地运行。”

第二行using中文译为"用",namespace表示命名空间,后面的std表示"标准命名空间",也就是使用标准的命名空间。比如,我在学校叫yfz,在家别人叫我小于,std呢,就是告诉计算机:"你就按照在学校的叫法来找我!"。目前还不需要过多深入了解,记住每一个程序都要加入这行代码就行。 以后还可以自己修改所有函数的名字。

往下就是程序最重要的地方了------主函数(main),看清楚了,是"main",而不是"mian"。

这里程序的"入口",所有的计算机都会从这里开始运行程序,这其中的内容就是实现程序的各种"方法"

int main() {    
    cout << "hello world";//输出hello world    
    return 0; 
}

仔细看,每一个语句结尾都有一个';',他告诉程序一个语句结束了。一定不要忘记它,要不然程序会报错。

下一行的cout<<"hello world";中的cout就是iostream头文件里面的一个"方法"了,它表示"输出hello world"。什么叫做"输出"呢?可以通俗地把它理解成:"说出"。比如我问程序:"1+1等于几",程序要告诉我:"2",但是如果没有输出这个函数,就如同把他的嘴巴堵住了,他自己算出来了结果却不能告诉你。

我们把想要他说出的内容放在<<后的""内,'<'是小于号,可以在英文状态下按住shift的同时按','把他打出来。‘""’是英文的双引号,可以按住shift的同时按'''把他打出来。

下一行前面有一个//,这表示从//之后的内容,程序不会读取,是用来方便我们注释的,可以在里面写下这段代码实现的功能,或者变量名的意义等等,方便自己或他人阅读代码。对于程序而言,看到//它就蒙上眼,直到下一行它再看。

在下一行的return 0;表示程序运行正常返回0,这里先不做解释,以后再详细介绍。只要记住要在main函数的结尾前写就行了。

把程序输入你的编译器,编译并运行,会出现一个丑陋的黑框,第一行写着”hello,world”

没看到什么东西或者一个黑框一闪而过?不妨在return 0;语句上加一行写上

这样就能看到了。

 

换行

刚刚输出的hello,world都是在同一行,如果只输出一两行还好,如果是长篇大论,不换行就显得太难受了。你可以试试看把这一篇文章去掉所有换行试试看。

那么,在cout中怎么换行呢?这时,就需要endl了。就像是这样。

#include <iostream>
using namespace std; 

int main() {    
    cout << "hello";    
    cout<< endl;    
    cout<< "world";        
    return 0;
}

endl中最后一个字符是英文字母l而不是阿拉伯数字1,部分编译器上色会难以区分。

到编译器里面编译运行,结果是这样的。

hello
world

刚刚我们把三个cout语句分开了三行写,其实也可以在同一行写,就像是这样

#include <iostream> 
using namespace std;  

int main() {     
    cout << "hello" << endl << "world";     
    return 0; 
}

代码简洁多了。放到编译器里编译运行是同样的结果。

仔细看endl这四个字母是不要加""的,可以试一试加上"",输出结果就会变成

helloendlworld

对于程序而言,""内的默认是输出来的,程序直接把他看也不看想也不想,说出来就行了。而没有被""括起来的输出内容,程序还需要想一想:"他是什么?他要我干什么?他有什么内容?",比如看到endl,程序会一拍脑门:"哦这不是要求我换行嘛,我得赶快换个行!"。于是,程序到这里就换了一行。

 

 

1+1

上回讲到,""外的程序会看一看想一想再输出,那么除了endl换行以外,他还会干啥呢? 不妨试试下面这个代码。输入到编译器,编译运行

#include <iostream>
using namespace std; 

int main() {    
    cout << 1 + 1 << endl;    
    return 0;
}

神奇的是,程序输出了2!

还可以改个数字,把+换成-甚至*和/试一试。

但是,这么做有一个很大的缺陷,没错,如果你的程序是:"cout<<1+1<<endl",那么不管是小于,还是小鹿,来运行这个程序,输出的都是:"2"。如果小鹿想知道1+2,小于想知道1+3,这个程序却只能输出1+1,那该怎么办呢?这就需要输入和变量了,下一节见!

 

 

计算器

我们来解决一下上一节的问题。

此时,你需要告诉程序,你想计算的是几加几。那么我们就要两个新的"方法"------输入和变量。

首先,我们要准备一个小盒子,给输入进来的数字住。如果不准备这个小盒子,就如同小于听课,左耳朵进右耳朵出,不会记住任何东西,不像是小鹿,能把一节课的东西都记住。所以没有小盒子,程序也就无法计算了。

小盒子的申请也很简单,比如我想要申请一个给整数住的小盒子,那么就可以这么写:

int x;

如果想要输出这个盒子内的内容,可以直接这么写:

cout << x;

那么我们有了小盒子,怎么放入变量呢? 我们在引入一个"方法"------"输入"(cin)。记住是cin,不是sin,sin会在cmath库中用到。

用法跟cout有点像,只不过是把<<变成了>>。就像这样:

#include <iostream>
using namespace std; 

int main() {    
    int x;    
    cin >> x;    
    cout << x << endl;    
    return 0;
}

把这个程序放入编译器编译运行,这个黑黑的框框里面似乎什么都没有。

如果随便输入一个不太大的整数进入,再按一下回车,会发现程序竟然神奇的把你的结果复述了出来!(果然,人类的本质是复读机)。 那么同样。这个代码

#include <iostream>
using namespace std; 

int main() {    
    int x;    
    cin >> x;    
    cout << x + 10 << endl;    
    return 0;
}

编译运行,程序成功地把你输入的数字加上10后输出了出来。

尝试把10改成其他数字,或者把+号改成-或者*或/,尝试编译运行。

如果我用一个整型变量除以一个数字,结果是小数,会输出什么嘞?不妨试试看。就想这样:

#include <iostream> 
using namespace std; 

int main(){ 
    cout<<10/3;
    return 0;
}

结果并不是想要的3.333333,而是3。如何输出小数呢?这里可以把3改为3.0,这样就可以了。

那如果我们想输入一个小数,让他计算呢?这时,int型的小房子就不行了,需要另外一种--请看下一节。

 

留一个小作业:计算x+y,没错,你要输入两个数,也就是两个盒子,!快试一试!

作业答案:

抱歉,只有登录并在本文发表评论才能阅读隐藏内容

为了防止抄答案!请登陆后在下面评论一下刷新一下再看哦~

点赞
  1. FishZe yfz说道:
    哈罗,我是小于,这一篇教程历经千辛万险终于重新发出来了。评论区发代码,头文件会被当做html的标签,所以可以在页面左下角的评论区发出代码~我一定会看的。。由于一些原因,之前的评论全部消失了。。小于在此深感歉意。
    1. FishZe yfz说道:
      哈哈哈哈
  2. 她脚踝银铃响了说道:
    为了看答案!
  3. 虎斑的大橘说道:
    来咯来咯!
  4. skk83308 skk83308说道:
    Google Chrome Windows 10
    ヾ(✿゚▽゚)ノ好棒(๑╹◡╹)ノ"""

发表评论