本人是初中生,原用Pascal语言,现转c++,所以写几篇博客,分享一下。

补一句,我是一边转c++一边写博客,所以可能会有错误,望过路大神能指出。

参考书籍:《信息学奥赛一本通》《趣学算法》

个人认为c++与Pascal比较,最大特点是它的方便性,各种变量之间转换与定义都十分方便,十分随意。

这篇就主要说明c++的基本程序结构吧。

上代码:

#include<cstdio>
#incldde<iostream>
using namespace std;
int main()
{
int a,b;
cin>>a;
scanf("%d",&b);
int c=a+b;
cout<<c; //或使用printf("%d",c);
return 0;
}

最简单的a+b,想必学过编程的同学都不会陌生,下面就由这个程序做样例,讲一下c++的基本结构:

首先是程序头(个人叫法),这里主要是调用库,使用#include与<>(""),中间加上库的名称。这是要记背的。初学者可能不知道库是什么,别急,往下看。

然后是using namespace std; 这句是定义命名空间,我的书里还有一大堆说明,这里省略(其实是懒得打),只要记住每个程序都要打一句就行了。

接着int main()即主函数(主程序)。一个c++程序由若干个函数组成,必须有且仅有一个主函数main。程序由主函数开始执行与结束,子函数要在主函数中调用。可以理解为主函数为boss,子函数为员工。

一对{}(书上称作花括号,我习惯称之大括号)相当于Pascal中的begin与end,标志一段语句的开始与结束,学过Pascal的同学都理解吧。

然后int a,b; 是定义语句,意为定义两个名为a与b的int型变量。c++中的int即是Pascal中的longint类型,范围是-2147483648~2147483647,具体的类型会在以后说。

还有:程序中除循环语句外的每一条语句都以分号结尾,这点切记!

cin>>a;这句有点麻烦,大意是从键盘读入一个数,储存到a这个变量里。(我书上也有一大堆说明,这里不细说)cin这个函数需要调用iostream库,即程序头中调用的库。如果不调用程序是会报错的,切记!

下一句scanf("%d",&b);也是一样,不同的是这句有一个变量类型的说明(双引号中的内容,%d表示整型变量)。

其实这两句话可以合并到一起,变成cin>>a>>b; 或scanf("%d%d",a,b); 这里为了更好的说明,特此分开。

cin与scanf的区别在后面讲cout与printf时会说明。

让我们继续:后面又是一句定义int c=a+b;,不同的是后面加上了一句=a+b。这是起赋初值的作用,相当于定义一个值为a+b的变量。“=”符号是赋值的意思,而我们通常说的等号是“==”。

cout<<c; 这句跟cin相反,是输出一个名为c的变量到屏幕。(in与out在英文中一个是进入一个是出去)这还有一个“流”的概念引入,好奇者请自行百度(反正我看了半天没看懂)。需要注意的是这一对函数在作用到量时要用两个“>”或“<”连接。

cin、cout与scanf、printf的区别在于:cin及cout方便,但速度较慢,且没有格式的说明;scanf与printf速度快,有格式控制,但不方便,不适合初学者使用。(有一大堆格式符要记)

大概就是这样,如果帮到你,别忘了点个推荐。讲义不定期更新(尽量定期),要催更的随意

基础篇(1):c++程序基本结构的更多相关文章

  1. (一)java基础篇---第一个程序

    先认识java的基础知识 1.变量命名规则 :1)变量名由数字字母下划线组成,2)不能使用java的关键字,比如public这种,3)遵循小驼峰命名法 2.数据类型 2.1基本数据类型有8种 其中分为 ...

  2. 学习本课程需要具备哪些基础及微信小程序目录结构介绍

    1.html css js 基础 2.ajax 基础 3.简单的面向对象基础  

  3. 鸟哥私房菜基础篇:vim 程序编辑器习题

    猫宁!!! 参考链接:http://cn.linux.vbird.org/linux_basic/0310vi.php 鸟哥是为中国信息技术发展做出巨大贡献的人. 1-我用 vi 开启某个档案后,要在 ...

  4. java编程基础篇---------> 编写一个程序,从键盘输入三个整数,求三个整数中的最小值。

    编写一个程序,从键盘输入三个整数,求三个整数中的最小值. 关键:声明变量temp   与各数值比较. package Exam01; import java.util.Scanner; public ...

  5. 好程序员web前端分享HTML基础篇

    好程序员web前端分享HTML基础篇,最近遇到很多新手,都会问,如果要学web前端开发,需要学什么?难不难学啊?多久能入门之类的问题?那么今天好程序员就先来给大家分享一下web前端学习路线:HTML基 ...

  6. 使用Xamarin开发手机聊天程序 -- 基础篇(大量图文讲解 step by step,附源码下载)

    如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!而且,Xamarin已经被微 ...

  7. C语言基础知识-程序流程结构

    C语言基础知识-程序流程结构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.概述 C语言支持最基本的三种程序运行结构:顺序结构,选择结构,循环结构. 顺序结构:程序按顺序执行, ...

  8. 004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构

    004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构 Java程序的结构 Java程序外层--类 程序外层,如下面的代码,是一个类的定义. c ...

  9. 黑马程序员——JAVA基础之程序控制流结构之判断结构,选择结构

    ------- android培训.java培训.期待与您交流! ---------- 程序控制流结构:顺序结构:判断结构:选择结构:循环结构. 判断结构:条件表达式无论写成什么样子,只看最终的结构是 ...

  10. python基础-10 程序目录结构 学生选课系统面向对象练习

    一 程序目录结构 1 bin文件夹 二进制文件.代码程序  2 conf 配置文件  3 帮助文档  4 头文件库文件等 二 学生选课系统部分代码 未完待续 1 包内的__init__.py文件 在包 ...

随机推荐

  1. 安装weblogic步骤

    1 mkdir -p /home/geekc3t/weblogic 创建weblogic安装目录2 groupadd weblogic 创建weblogic组3 useradd -g weblogic ...

  2. mysql连接查看

    1:查看当前连接 mysql> show status like 'Threads%'; +-------------------+-------+ | Variable_name     | ...

  3. 【AngularJs】---angular-chart.js 图表报表

    移步至我在百度经验的这篇文章: http://jingyan.baidu.com/article/a378c960b26636b3282830ad.html

  4. Android 程序结构介绍

    创建好Android开发环境后,创建一个Android Project, 截图如下:

  5. 链表例题2:链表的倒数第k个节点是多少

    解题思想: 1.创建一个结点类(为后面实现链表做基础) 2.创建一个查询倒数元素的方法 3.使用快慢指针的思想(主要的部分) 图中的表示的是查询倒数第k个结点的操作: 创建一个快慢指针后pre(慢指针 ...

  6. 函数的返回值 return

    布尔类型返回 return 0:返回假: return 1:返回真:

  7. X-Cart-5.3.1.4 (Ubuntu 16.04)

    平台: Ubuntu 类型: 虚拟机镜像 软件包: x-cart-5.3.1.4 commercial ecommerce open-source x-cart 服务优惠价: 按服务商许可协议 云服务 ...

  8. leetcode: 字符串

    1. palindrome-partitioning Given a string s, partition s such that every substring of the partition ...

  9. thinkphp 去掉URL 里面的index.php

    例如你的原路径是 http://localhost/test/index.php/home/goods/index.html 那么现在的地址是 http://localhost/test/home/g ...

  10. redis网络模型

    多路IO复用-非阻塞同步IO模型.见http://www.cnblogs.com/syyong/p/6231326.html 具体结构:http://blog.jobbole.com/100079/ ...