C++学习小记

之前“看”过C++,但是纯粹只是为了应付考试。现在想重新学习,久仰《C++ primer》大名,书之厚令我生畏,好记性不如烂笔头,遂以博客形式笔记之。

本人编程菜鸟一枚,当中如有任何错误,欢迎指正!谢谢!

声明:本文属原创,转载请留言我,谢谢!

一 "<<"与">>"

如果输入输出语句较长,那么可以直接分行,该语句直到 “;” 结束

放书中例子:

std::cout << "the sum of " << v1 << "and" << v2
<< "is" << v1+v2 <<std::endl;

   但是,被拆分的每一行语句后不能加“;”,因为这样一句话变成了几句独立的话。

二  两个注释符号 “//”,“/*...*/”

  “//” :单行注释符,以换行符结束。

“/*...*/” : 以“/*”开始,”*/“结束,中间可以换行。但注意防止嵌套,否则很容易造成语句错误(遇到前面一个”*/“,注释提前终止)

三  练习while语句时自己犯的一个错误

题目:编写程序,提示用户输入两个整数,打印出这两个整数所指定的范围内的所有整数

直接上错误代码:

#include<iostream>
using namespace std;
int main()
{
int c1,c2,val;
cout << "please input two numbers" << endl;
cin >> c1 >> c2;
while((val <= c1 && val >=c2) || (val <= c2 && val >=c1))
{
cout << val << " ";
}
return ;
}

    自我分析:

错误原因之一 :显然对while()语句没有理解。当判断条件为真是,执行循环体,否则跳出循环。初始化中系统自给 "val" 赋初值为零。所以程序可能一直跳不出循环。比如 "c1  = 1,c2 = 3"

错误原因之二 :“val” 的值在循环过程中并没有改变。程序不会自动地遍历“c1”和“c2”之间的值。

经过分析,附上可执行的正确代码:

#include<iostream>
using namespace std;
int main()
{
int c1,c2,val;
cout << "Please enter input two numbers" << endl;
cin >> c1 >> c2;
if (c1 <= c2){
val = c1;
while(val <= c2){
cout << val << " ";//添加空格以区分数字
++val;
}
}
else{
val = c2;
while(val <= c1){
cout << val << " ";
++val;
}
}
return ;
}

chapter1-开始(1)的更多相关文章

  1. chapter1 渗透测试与metasploit

    网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...

  2. 《Linux内核设计与实现》CHAPTER1,2阅读梳理

    <Linux内核设计与实现>CHAPTER1,2阅读梳理 [学习时间:2.5hours] [学习内容:Linux内核简介——历史与现今版本:Linux内核源代码以及编译] CHAPTER1 ...

  3. 《深入PHP与jQuery开发》读书笔记——Chapter1

    由于去实习过后,发现真正的后台也要懂前端啊,感觉javascript不懂,但是之前用过jQuery感觉不错,很方便,省去了一些内部函数的实现. 看了这一本<深入PHP与jQuery开发>, ...

  4. ###《Effective STL》--Chapter1

    点击查看Evernote原文. #@author: gr #@date: 2014-09-12 #@email: forgerui@gmail.com Chapter1 容器 Topic 4: 调用e ...

  5. Learning WCF Chapter1 Hosting a Service in IIS

    How messages reach a service endpoint is a matter of protocols and hosting. IIS can host services ov ...

  6. Learning WCF Chapter1 Generating a Service and Client Proxy

    In the previous lab,you created a service and client from scratch without leveraging the tools avail ...

  7. Learning WCF Chapter1 Creating a New Service from Scratch

    You’re about to be introduced to the WCF service. This lab isn’t your typical “Hello World”—it’s “He ...

  8. Learning WCF Chapter1 Exposing Multiple Service Endpoints

    So far in this chapter,I have shown you different ways to create services,how to expose a service en ...

  9. USACO chapter1

    几天时间就把USACO chapter1重新做了一遍,发现了自己以前许多的不足.蒽,现在的程序明显比以前干净很多,而且效率也提高了许多.继续努力吧,好好的提高自己.这一章主要还是基本功的训练,没多少的 ...

  10. 笔记 Bioinformatics Algorithms Chapter1

    Chapter1 WHERE IN THE GENOME DOES DNA REPLICATION BEGIN    一. ·聚合酶启动结构域会结合上游序列的一些位点,这些位点有多个,且特异,并且分布 ...

随机推荐

  1. excel小技巧-用于测试用例的编号栏:“获取当前单元格的上一格的值+1”=INDIRECT(ADDRESS(ROW()-1,COLUMN()))+1

    编写用例的时候使用,经常修改用例的时候会需要增加.删除.修改条目,如果用下拉更新数值的方式会很麻烦. 1.使用ctrl下拉,增删移动用例的时候,需要每次都去拉,万一列表比较长,会很麻烦 2.使用ROW ...

  2. python string 文本常量和模版

        最近在看python标准库这本书,第一感觉非常厚,第二感觉,里面有很多原来不知道的东西,现在记下来跟大家分享一下.     string类是python中最常用的文本处理工具,在python的 ...

  3. poj 3575 Crosses and Crosses(SG函数)

    Crosses and Crosses Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 3063   Accepted: 11 ...

  4. 不使用OCI8接口如何连接PHP和Oracle

    随着网站规模的扩大,MySql显然不能满足需求,在许多网站都  采用大型数据库Oracle的情况下,如何使用PHP来访问Oracle变的越发重要了.  我从我编写的一个简单iERP系统谈我自己是如何做 ...

  5. SRM 601(1-250pt,500pt)

    DIV1 250pt 题意:有很多袋子,里面装有苹果和橘子(也可能没有),给出每个袋子里有多少个苹果,多少个橘子.如果每个袋子里含有水果的总数都不小于x个,则可以从每个袋子里都拿出x个水果(拿出苹果和 ...

  6. xapian倒排索引的归并流程

    Xapian的检索流程和大部分搜索系统都一样,就先从倒排表抽取候选文档,然后结合其他信息进行排序,取top文档作为搜索结果,具体流程如下: 图1 xapian搜索流程 具体流程 在terms中找到do ...

  7. 真机测试---iOS证书(.p12)和描述文件(.mobileprovision)

    iOS证书和描述文件: 证书类型 使用场景 开发(Development)证书和描述文件 用于开发测试,在starain中打包后可在真机环境通过Safari调试 发布(Distribution)证书和 ...

  8. Android学习之 sildingmenu

    仿SlidingMenu Android抽屉菜单效果drawer menu - appdoll.com Android "多方向"抽屉 - 开源中国社区 自定义Android滑动式 ...

  9. Windows Live Writer的Markdown插件

    我新写了一个Windows Live Writer的Markdown插件,代码放在了github上. 介绍 这个项目是一个Windows Live Writer的Markdown插件.有了这个插件,你 ...

  10. 第一贱-UILabel

    UILabel *label = [[UILabel alloc]init]; label.frame = CGRectMake(100, 100, 100, 100); label.text = @ ...