c++学习笔记

一、面向对象的程序设计语言

编辑源程序生成cpp文件——编译后生成obj文件——连接后生成exe文件 

注释添加:选中内容,按Ctrl+Shift+c可以快速注释代码

注释撤销:选中内容,按Ctrl+Shift+x可以快速撤销代码

二、常量:其值在程序运行过程中保持不变

格式:Const  数据类型  常量名字             

三、变量:先定义后使用

格式:类型  变量名(int i_area = 0,i_length = 0,i_width = 0;)

变量名由数字、字母、下划线组成;第一个字符必须是字母或者下划线;不能使用保留字

变量的存储以二进制形式存储,数值以补码形式表示(正数的补码与原码相同,负数的补码为绝对值的原码各位取反再加1)

1、int:整型;unsigned:正整型;char:单字符;转义字符:以\开头;字符串常量:"";实型常量:(1)十进制小数:必须有小数点,或在结尾加上f/F、(2)指数形式(a E n)(a为十进制小数,n为十进制整数);实型变量(分三类:单精度float、双精度double、长双精度long double)

2、字符常量占一个字节的内存空间;字符串在内存中的存储会自动生成一个结束标志“\0”,一个汉字占两个字节

3、字符可参与算术运算   (a:65,97)     

4、整型、实型、字符型数据可以混合使用                 

5、自动类型转换:级别高的数据类型可以自动接受级别低的数据类型(long double、double、float、unsigned long、long、unsigned int、int、other type) 

6、强制类型转化 :(类型名)(表达式)  :会导致数据精度的损失

四、表达式:由常量、变量、函数和运算符组合起来的式子

1、赋值运算符:“=”,具有右结合性

2、复合 赋值运算符:“+=”、“-=”、“*=”、“\=”

3、算术运算符:+、-、*、/、% (注意:/操作数若均为整型,则结果也为整型,若其中有一个为实型,则结果为双精度实型;%的操作数必须都为整型,结果取整)

4、自增、自减 :++i、i++、--i、--i(++在变量之后,先赋值再运算;++在变量之前,先运算再赋值)

5、关系运算符:<、<= 、>、>=、==、!=

优先级(算术运算符>关系运算符>赋值运算符)

五、算法、语句结构和条件语句

1、算法:解决问题所使用的一系列合乎逻辑的、简洁的步骤

程序 = 数据结构 + 算法 + 程序设计方法 + 语言和环境

2、算法特性:有穷性、确定性、有效性、有0个或多个输入、有1个或多个输出

3、 c++语句分类:(1)表达式语句、(2)空语句、(3)程序控制语句 、(4)复合语句,可以嵌套   

4 、if语句:

(1)第一种形式:

if(表达式){                                                                                 
   语句;         
}

(2)第二种形式:

if(表达式){                                                                                 
   语句;         
}
else(表达式){
   语句;
}

(3)第三种形式:

if(表达式){                                                                                 
   语句;         
}
else if(表达式){
   语句;
}
else(表达式){
   语句;
}

注意:(1)if-else匹配原则:就近原则(else与最近的if进行匹配)           

           (2)当布尔表达式与一个常量值进行比较时,一般把常值放在前面     

           (3)不可将布尔变量直接与true、false、0、1进行比较         

5、switch语句

形式:

switch(表达式) 
{
    case 常量表达式1:
        语句1
        break;
    case 常量表达式2:
        语句2
        break;
    ……
    case 常量表达式n:
        语句n
        break;
    default:
        语句n+1
}

注意:这里的break可写可不写。当表达式与常量表达式匹配后,执行当前的case中的语句,若不写break,则继续往下执行                   case中的语句,此时不管表达式和常量表达式是否匹配,都继续执行后续case中的语句     

例子:

#include<iostream>
using namespace std;
int main(){
    int a = 0 ,b = 1;
    switch(b)
    {
        case 0:
            a++;
        case 1:
            a++;
        case 2:
            a++;
    }
    cout << "a="<<a<<endl;
}

输出结果a=2,这里b匹配到case 1之后,执行a++,由于没有break语句,无法跳出循环,所以会继续往下执行case 2中的a++

6、循环语句

(1)goto语句:可以跳转到指定标识符的地方

#include <iostream>
using namespace std;
int main()
{
    int i = 0,sum = 0;
    loop:if(i <= 100){
            sum += i;
            i++;
            goto loop;
         }
    cout<<sum<<endl;
    return 0;
}

(2)while循环

形式:

while(表达式){
    循环体
}

例子:

#include <iostream>
using namespace std;
int main()
{
    int i = 0,sum = 0;
    while(i<=100){
        if(i % 2 == 0){
            sum += i;
        }
        i++;
    }
    cout << sum << endl;
    return 1;
}

 (3)do-while循环

do{
    循环体
}
while(表达式);

 while循环可能一次都不执行循环体,而do-while循环至少执行一次

例子:

#include <iostream>
using namespace std;
int main()
{
    int i= 0 ,re = 0;
    cin >> i;
    do{
        re = i % 10;
        i = i / 10;
        cout << re;
    }
    while(i);
    return 1;
}

(4)for循环

形式:

for(循环变量初始值循环表达式;循环终止初始条件){
    语句
}

例1:

#include <iostream>
using namespace std;
int main()
{
    int i= 1 ,sum = 0;
    for(i;i<=100;i++){
        sum += i;
    }
    cout << sum <<endl;
}

例2(输入10个字符,输出最大字符的ascii码):定义一个字符,然后将它赋值给一个整型变量,就可以得到这个字符的ascii码

#include <iostream>
using namespace std;
int main()
{
    int max1 = 0;
    char c;
    for(int i = 1;i<=10;i++){
        cin >>c;
        if(max1<c){
            max1 = c;
        }
    }
    cout << max1 << endl;
}

注意:return语句可以不条件终止函数,一旦遇到return,其后所有的语句都不执行

           多层循环:长循环包含在短循环里面

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值