chapter1-开始(1)
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)的更多相关文章
- chapter1 渗透测试与metasploit
网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...
- 《Linux内核设计与实现》CHAPTER1,2阅读梳理
<Linux内核设计与实现>CHAPTER1,2阅读梳理 [学习时间:2.5hours] [学习内容:Linux内核简介——历史与现今版本:Linux内核源代码以及编译] CHAPTER1 ...
- 《深入PHP与jQuery开发》读书笔记——Chapter1
由于去实习过后,发现真正的后台也要懂前端啊,感觉javascript不懂,但是之前用过jQuery感觉不错,很方便,省去了一些内部函数的实现. 看了这一本<深入PHP与jQuery开发>, ...
- ###《Effective STL》--Chapter1
点击查看Evernote原文. #@author: gr #@date: 2014-09-12 #@email: forgerui@gmail.com Chapter1 容器 Topic 4: 调用e ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
- USACO chapter1
几天时间就把USACO chapter1重新做了一遍,发现了自己以前许多的不足.蒽,现在的程序明显比以前干净很多,而且效率也提高了许多.继续努力吧,好好的提高自己.这一章主要还是基本功的训练,没多少的 ...
- 笔记 Bioinformatics Algorithms Chapter1
Chapter1 WHERE IN THE GENOME DOES DNA REPLICATION BEGIN 一. ·聚合酶启动结构域会结合上游序列的一些位点,这些位点有多个,且特异,并且分布 ...
随机推荐
- Linux Shell编程(11)——退出和退出状态
exit命令一般用于结束一个脚本,就像C语言的exit一样.它也能返回一个值给父进程.每一个命令都能返回一个退出状态(有时也看做返回状态).一个命令执行成功返回0,一个执行不成功的命令则返回一个非零值 ...
- Spark如何解决常见的Top N问题
需求 假设我们有一张各个产品线URL的访问记录表,该表仅仅有两个字段:product.url,我们需要统计各个产品线下访问次数前10的URL是哪些? 解决方案 (1)模拟访问记录数据 ...
- Win32中常用消息
一 .WM_PAINT消息 1 WM_PAINT的产生 由于窗口的互相覆盖等,产生需要绘制的区域,那么会产生WM_PAINT消息. 一般情况下,不直接发送WM_PAINT消息,通过API声明需要绘 ...
- Spark SQL编程指南(Python)
前言 Spark SQL允许我们在Spark环境中使用SQL或者Hive SQL执行关系型查询.它的核心是一个特殊类型的Spark RDD:SchemaRDD. SchemaRDD类似于传统关 ...
- nyoj 32 组合数【简单dfs】
组合数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 找出从自然数1.2.... .n(0<n<10)中任取r(0<r<=n)个数的所有组合 ...
- Oracle 监控索引使用
Oracle提供一个监控索引的方法,来确定索引是否被使用.如果索引没有被使用,就可以删除它们以减少不必要的语句的开销.因为表上的大量不必要的索引可能会降低DML语句的性能,给数据库性能产生压力.所以生 ...
- [Node.js] Scraping Dynamic JavaScript Websites with Nightmare
Many websites have more than just simple static content. Dynamic content which is rendered by JavaSc ...
- java继承分析
把java学完之后有開始了一遍突然发现对于继承还是不太理解所以就做了一个測试来分析一下 <span style="font-size:18px;">class A{ p ...
- Qt 学习之路:文本文件读写
上一章我们介绍了有关二进制文件的读写.二进制文件比较小巧,却不是人可读的格式.而文本文件是一种人可读的文件.为了操作这种文件,我们需要使用QTextStream类.QTextStream和QDataS ...
- [转] Node.js 服务端实践之 GraphQL 初探
https://medium.com/the-graphqlhub/your-first-graphql-server-3c766ab4f0a2#.n88wyan4e 0.问题来了 DT 时代,各种业 ...