基础篇(1):c++程序基本结构
本人是初中生,原用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++程序基本结构的更多相关文章
- (一)java基础篇---第一个程序
先认识java的基础知识 1.变量命名规则 :1)变量名由数字字母下划线组成,2)不能使用java的关键字,比如public这种,3)遵循小驼峰命名法 2.数据类型 2.1基本数据类型有8种 其中分为 ...
- 学习本课程需要具备哪些基础及微信小程序目录结构介绍
1.html css js 基础 2.ajax 基础 3.简单的面向对象基础
- 鸟哥私房菜基础篇:vim 程序编辑器习题
猫宁!!! 参考链接:http://cn.linux.vbird.org/linux_basic/0310vi.php 鸟哥是为中国信息技术发展做出巨大贡献的人. 1-我用 vi 开启某个档案后,要在 ...
- java编程基础篇---------> 编写一个程序,从键盘输入三个整数,求三个整数中的最小值。
编写一个程序,从键盘输入三个整数,求三个整数中的最小值. 关键:声明变量temp 与各数值比较. package Exam01; import java.util.Scanner; public ...
- 好程序员web前端分享HTML基础篇
好程序员web前端分享HTML基础篇,最近遇到很多新手,都会问,如果要学web前端开发,需要学什么?难不难学啊?多久能入门之类的问题?那么今天好程序员就先来给大家分享一下web前端学习路线:HTML基 ...
- 使用Xamarin开发手机聊天程序 -- 基础篇(大量图文讲解 step by step,附源码下载)
如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!而且,Xamarin已经被微 ...
- C语言基础知识-程序流程结构
C语言基础知识-程序流程结构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.概述 C语言支持最基本的三种程序运行结构:顺序结构,选择结构,循环结构. 顺序结构:程序按顺序执行, ...
- 004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构
004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构 Java程序的结构 Java程序外层--类 程序外层,如下面的代码,是一个类的定义. c ...
- 黑马程序员——JAVA基础之程序控制流结构之判断结构,选择结构
------- android培训.java培训.期待与您交流! ---------- 程序控制流结构:顺序结构:判断结构:选择结构:循环结构. 判断结构:条件表达式无论写成什么样子,只看最终的结构是 ...
- python基础-10 程序目录结构 学生选课系统面向对象练习
一 程序目录结构 1 bin文件夹 二进制文件.代码程序 2 conf 配置文件 3 帮助文档 4 头文件库文件等 二 学生选课系统部分代码 未完待续 1 包内的__init__.py文件 在包 ...
随机推荐
- Spring Aware
spring依赖注入的最大亮点就是所有的bean感知不到spring容器的存在,但在实际开发中,我们不可避免的要用到spring容器本身的功能资源,这时,我们就必须意识到容器的存在(废话,都要跟容器进 ...
- 远程调用历史及代码编写demo
历史介绍部分: 远程调用大致经过了corba.webservice.二进制跟restful四个阶段 corba时代,corba(Common Object Request Broker Archite ...
- phpwind本地安装 inernal server error错误
wampserver2.2环境,本地安装phpwind9.0时出错: Internal Server Error The server encountered an internal error or ...
- http request 字段
Accept: 客户端支持的文件类型, 如果为/表示任何类型 Accept-Encoding: 客户端浏览器支持的文件压缩格式 Accept-Language: 客户端支持的语言 User-Agent ...
- JDK一键安装,配置环境
人懒,就得“多干活”! 正常安装JDK 的话,它会修改系统的path 变量,加入自己的调用路径(jre) 这样,我们刚安装好后,就可直接调用java –verbose 查看jre 安装的目录了. ( ...
- [转]Linq语法二
本文将讲述LINQ的基础查询(此文所有例子都使用LINQ to Object) 在此之前,我们先创建一个用于示例的数据源: Student类:表示学生,包括学号.姓名及班级 Courses类:表示学生 ...
- image压缩
public byte[] compressPic(byte[] data) { if(data.length == 0){ return new byte[0]; } Image img = nul ...
- 从今天开始学习Swift -- Swift 初见 (转)
原文地址:http://www.cocoachina.com/newbie/basic/2014/0604/8675.html Swift系列文章由CocoaChina翻译小组翻译自苹果的官方文档 ...
- 《java提高数据导入效率优化思路》
写在前边的实现需求: 1.总共10万个电话号码: 2.电话号码中有重复和错误: 3.查找出正确的号码(不重复): 一.优化前的实现方式: 1.先用正则过滤一遍10万条数据,找出错误的: 2.用List ...
- Python开发环境Wing IDE的Blender的Python代码调试技巧
Wing IDE是一个集成开发环境,可用于开发.测试和调试为Blender编写的Python代码,Blender是一个开源的3 D内容创建系统.Wing IDE提供自动完成.调用提示.强大的调试器.以 ...