《c++语言程序设计》笔记(一)

    xiaoxiao2026-05-23  2

    这里对我的课本进行一个简要的摘录:

     

    第二章 c++简单程序设计

     1、运算符与表达式

    ①三目运算符

    格式   (表达式1)?(表达式2) : (表达式3)

    ②sizeof运算符,用于计算某种类型的对象在内存中所占的字节数。

    ③ 位运算

    包含:

    a 、按位与(&)

    b、按位或(|)

    c、按位异或(^)【对应位相同,则该位的运算结果为0,对应位不同,则该位的运算结果为1】

    d、按位取反(~)【对一个二进制的每一位取反。例如,025:0000010101   ~025:1111101010】

    e、移位(包含左移运算<<和右移运算>>例如,a>>2的值为-2(a为-8),2<<1的值为4

    ④运算符优先级与结合性,写代码时一定要注意表达式中运算符的优先级!!!

    ⑤ 类型转换操作符(强制转换、显式)

    a,<类型说明符>(表达式)

    b、const_cast<类型说明符>

    c、dynamic_cast<类型说明符>

    d、reinterpret_cast<类型说明符>

    e、static_cast<类型说明符>

    ps:这种转换是不安全的,因为它是一次性的,变量所在的内存单元中的值并未真正改变,再次使用时仍然是原来的类型。

     

    2、数据的输入与输出(必须包含iomanip头文件)

     常用的I/O流类库操纵符

    dec  十进制表示

    hex 十六进制表示

    oct 八进制表示

    ws 提取空白符

    endl 插入换行符

    ends 插入空字符

    setprecision(int) 设置浮点数的小数位数(包括小数点)

    setw(int)设置域宽

    3、控制语句

    ① break

    ② continue

    ③ goto(使程序的执行流程跳转到语句标号所指定的语句)

    例如可用于跳出多重循环,也可以前跳或者后跳,也可以跳出switch,或者在case之间进行跳转

    #include<iostream> using namespace std; int main() { int x,sum=0; L1:cout<<"x="; cin>>x; if(x==-1) goto L2; else sum+=x; goto L1; L2:cout<<"sum="<<sum<<endl; } 可以想象,它的存在会破坏程序的结构,所以应该少用或不用。

    4、自定义数据类型

    typedef声明

    将一个标识符声明成某个数据类型的别名,然后将这个标识符当做数据类型使用。

    语法形式:

    typedef   已有类型名   新类型名表;

    typedef double Area,Volume; typedef int Natural; Natural i1,i2; Area a; Volume v;

    第三章 函数

    递归

    例如

    ① 计算从n个人中选择K个人

    #include<iostream> using namespace std; int combine(int n,int k) { int m; if(n==k||k==0) return 1; else if(k>n) return 0; else return combine(n-1,k)+combine(n-1,k-1); } int main() { int n,k; cin>>n>>k; cout<<combine(n,k); return 0; }

    (注意排列组合的公式:c(n,m)=c(n-1,m-1)+c(n-1,m))

    转载请注明原文地址: https://ju.6miu.com/read-1309991.html
    最新回复(0)