码迷,mamicode.com
首页 > 编程语言 > 详细

重温c++(二)

时间:2018-06-06 23:58:54      阅读:307      评论:0      收藏:0      [点我收藏+]

标签:for   素数   下标越界   出错   内容   ++   int   筛法   图片   

---恢复内容开始---

 

数组---恢复内容开始---

格式控制符:

%x:以16进制的形式输出或者读入;

%u:已无符号形式输出或读入

技术分享图片

cin cout 与scanf printf,一个程序不要两者混用;

运算符:赋值运算符,算术运算符,关系运算符,逻辑运算符;

赋值运算符:=,+=,-=,*=,/=,%=

算数运算符:+,-,*,/,%,++,--  进行算数运算时,如果存在溢出,则把溢出的部分拿掉(浮点型的难以预测),如 int i=0xffffffff,j;j=i+3; j=0x100000002;j为int型,4字节,j=2;计算时注意计算结果可能不溢出,但计算中间存在溢出,如计算printf("%d",(a+b)/2);如果a+b计算的结果c超出了int范围,则计算会出错,除法计算的类型与操作数中精度高的类型保持一致.

关系运算符:== != > < >= <=  返回结果为bool型,

逻辑运算符:&& || !  短路计算,即计算到结果可以预知则不往后计算;

运算顺序:技术分享图片一般可用()来使得优先运算

条件结构:if else,  存在多个相邻的if else ,else与最近的if 匹配, 

if else 过多时,根据情况可选择switch 语句,

switch(表达式){                 //表达式返回类型只能为整数类型   int, char(char类型实际就是ASCII码值)

  case 常量表达式1:

      break;

  case  常量表达式2

    break;

     ....

}

循环结构:for循环,for(表达式1;表达式2;表达式3){  语句组;  }

技术分享图片

for 循环中的表达式1,2,3都可以不写,但是";"要保留.

do{循环体;} while(条件)循环,先循环在判断条件

break:跳出最近的循环体;

continue:到循环的头部,后面的语句不在执行,若为for循环,for(int i=0;i<n;i++),表达式3 :i++会执行

数组:


定义:类型名 数组名[元素个数],元素个数必须是常量或常量表达式;数组在内存中是连续存放的

T a[N]占用的空间是N*sizeof(T),字节,数组名a指的是数组所存储的首地址,假设为p,则a[N]所存储的地址为p+N*sizeof(int),

筛法求素数:技术分享图片

技术分享图片

数组的初始化  int arr[10]={1,2,3,4}未赋予初始值的默认为二进制0,

技术分享图片

数组下标越界编译不报错,运行可能会出错,因为操作系统可能不允许越界区域内存的写入.

二维数组:

二维数组在内存中也是连续存放技术分享图片二维数组初始化 int a[2[3]={(1,2,3),(4,5,6)}

如果对每行都进行了初始化,可以不写行数 int a[][3]={(1,2,3),(4,5,6)}

 

重温c++(二)

标签:for   素数   下标越界   出错   内容   ++   int   筛法   图片   

原文地址:https://www.cnblogs.com/Dar-/p/9147744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!