Cpp Primer学习记录—Chapter 1

@[TOC]Cpp Primer学习记录—Chapter 1

1.1

一个函数的定义:return type, function name,parameter list, function body

#include <iostream>

int main()   //括号里面的就是形参列表parameter list;int类型是一种内置类型(built-in type)

{

   return 0; //block of statements

}

iostream库:包含了istream和ostream,分别表示输入流和输出流。

1.2

编写一个求两个数和的程序:

#include <iostream>

int main()

{

       std::cout<<"Enter two numbers:"<<std::endl;

       int v1=0,v2=0;

       std::cin>>v1>>v2;

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

       return 0;

}

//前缀std::指出cout等是定义在名为std的命名空间(namespace)中的,标准库定义的所有名字都在命名空间std中。

//endl表示的是结束当行。

//不想用std::的话可以使用如下(using namespace std;)。

1.3 注释简介

注释分为单行注释、界定符对注释。

单行注释:以双斜线开始(//),以换行符结束

界定符对注释:使用了继承C语言的两个界定符(//),以/开始,/结束。

注意:界定符不可以嵌套

1.4 控制流

1.4.1 while语句

While语句反复执行一段代码,直至给定条件为假为止。

While语句的形式为while(condition) statement

例子:求1到10的和

#include <iostream>

using namespace std;

int main()

{

    

   int sum=0,val=1;//只要val的值小于等于10,while循环就会持续执行
   while (val<=10)

   {

          sum+=val;//将sum+val赋予sum

          ++val;//将val加1 

   }


   cout<<"Sum of 1 to 10 inclusive is "<<sum<<endl;

   return 0;
   }

1.4.2 for语句

for语句包含两部分:循环头、循环体。循环头控制循环体的执行次数,由初始化语句init-statement、循环条件condition和表达式expression组成。

例子:求1到10的和

#include <iostream>

using namespace std;

int main()

{

       int sum=0;

       for(int val=1;val<=10;++val)

        sum+=val;

       cout<<"Sum of 1 to 10 inclusive is "<<sum<<endl;

       return 0;

}

Q:对比for循环和while循环,两种形式的优缺点各是什么?

A:在循环次数已知的情况下,for循环的形式显然更为简洁;而循环次数无法预知时,用while循环实现更适合。用特定条件控制循环是否执行,循环体中执行的语句可能导致循环判定条件发生变化。

1.4.3 读取数量不定的输入数据

例子:求数量不定的数据的和

#include <iostream>

using namespace std;

int main()

{

       int  sum=0,value=0;

       while(cin>>value)

         sum+=value;    //sum=sum+value

       cout<<"Sum is: "<<sum<<endl;

       return  0; 

}

//程序出来之后,要从键盘输入文件结束符,同时摁住Ctrl和Z键,然后摁Enter

for语句的版本

#include <iostream>

using namespace std;

int main()

{

       int  sum=0,value=0;

       cout<<"Please  put in some nums: "<<endl;

       for(;cin>>value;)

        sum+=value;

       cout<<"The sum of nums is: "<<sum<<endl;

       return  0;

}

1.4.4 if语句

下例为一个输入一串数字求数字出现次数的程序,但这个程序不具备无序性,意思就是当你输入76 67 76,结果出来的是76一次,67一次,76一次。所以要怎么想办法解决这一瑕疵呢?

#include <iostream>

using namespace std;

int main()

{

       int  currVal=0,val=0;  //读取第一个数,并确保确实有数据可以处理

       if(cin>>currVal)

       {

              int cnt=1;    //保存我们正在处理的当前值的个数

              while  (cin>>val)

              {

                     if (val==currVal)

                        ++cnt;     //如果现在读取的值与当前处理的值相等,那么计数加一

                     else   //否则就打印前一个值的个数

                     {

                            cout<<currVal<<"  occurs "<<cnt<<" times "<<endl;

                            currVal=val;

                            cnt=1;    //重置计数器

                     }

              }  //while循环结束

              cout<<currVal<<"  occurs "<<cnt<<" times "<<endl;    //打印最后一个值的个数     

       }

       return  0;

}

1.5 类简介

在C++中,我们通过定义一个类(class)来定义自己的数据结构。一个类定义了一个类型,以及与其关联的一组操作。类定义了行为。类的作者定义了类对象可以执行的所有动作。

要注意include指令时,包含来自标准库的头文件时,应该用<>包围头文件名;对于不属于标准库的头文件,则用“”包围。

1.5.2 初识成员函数

1.6 书店程序
//但由于没有原书作者提供的类,所以这里做不下去==

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值