1.8 c++_关系表达式

来源:互联网 发布:上海威纳的数据怎么样 编辑:程序博客网 时间:2024/06/05 19:51

1,for循环
2,while循环
3,文本输入
4,二维数组

1,for循环

同java的循环一样:
for (int i = 0; i < 10; i++)
cout << “for循环中标识i的值:” << i << endl;

1,设置初始值。 int i= 0;
2,逻辑判断,是否符合继续往下执行的条件。 i < 10;
3,执行循环操作。具体逻辑
4,更新逻辑只。i++

另一种写法
int ints[5] = {1,2,3,4,5};
for (int i : ints){
cout << “数组的值:” << i;
}

cout.setf();//设置输出格式状态,括号中应给出格式状态。ios_base::boolalpha;//将bool类型的值以true或flase表示,而不是1或0cout.setf(ios_base::boolalpha);//老式c++代码可能需要使用ios:boolalpha;而不是ios_base::boolalpha指针中递增和递减的应用指针中使用++或者--与指针本身的关键字*的优先级问题:double *pt =20.2;double x = *++pt;//++、--、*他们的优先级相同,所以以从右往左的顺序执行。所以是,先取得pt指针指向的值,然后再加1++*pt;//这种情况pt指向的仍然是20.2;然后自加1(*pt)++;//首先对指针解除引用,得到20.2,然后再自加1x = *pt++;//因为程序从右往左执行则是pt的指针自加1然后再指向具体的值int *pa = new int[10];pa[4] = 12;pa[4] += 6;//第四个元素自加6*(pa + 4) += 7;//第四个元素自加7pa += 2;//因为数组名默认指向第一个元素的地址,所以是第一个元素的指针自加2int a = 20, b = 21;//逗号可以让相同的变量省略关键字的定义int c = 17,240;//这种写法被翻译成 (c = 17) , 240;也就是说240是没有作用的int d =(17,240);//这种写法,因为括号的优先级最高,所以里面的数组被从右往左执行,d = 240;字符串比较关键字:strcmp()char word[5] = "test1";strcmp(word,"test1");//strcmp()用来比较两个字符串是否相同string word = "test1";word != "test2";//string类重载了运算符!= 。所以string可以直接这样判断

2,while循环

同java的while循环一样:
int i = 20;//初始化
while(i == 50){//指定终止训话的条件
cout << “如果i不等于50,则就会一直循环下去”;
i++;//在逻辑判断之前修改被判断的变量
}

关键字 clock()

//C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t#inlcude <ctime> //该函数的返回类型在某些系统上可能是long,在另一些系统上可能是unsigned long或其他类型//系统定义一个符号常量----CLOCKS_PER_SEC,该常量等于每秒钟包含的系统时间单位数。因此,将系统时间除以这个值,就可以得到秒数。或者将秒数乘以CLOCKS_PER_SEC,就可以得到以系统时间单位为单位的时间clock_t time1 = 60 * CLOCK_PER_SEC;clock_t time2 = clock();//获取系统时间while(clock() - time2 < time1);//这里来判断系统时间做一个延时60s的操作

类型别名
c++为类建立别名有两种方式:
1,预处理器: #define BYTE char;
这样,预处理器在编译程序的时候会将所有的BYTE都替换成char

2,关键字:typedef char BYTE;
也可以将指针声明称别名:typedef char* BYTES;

需要注意的是,#define不能使用,来省略类型关键字而typedef可以,例如:

#define BYTE char*;BYTE pa,pb;

这样做是不行的,会让预处理器将 把char* 转换成pa,pb;

do-while 循环
int i = 0;
do{
i++;
}while(i == 7);

do-while循环与while不同的是,它会先执行do后面的逻辑代码在判断条件是否进行下一次循环,而while则先判断条件再执行逻辑代码

3,文本输入

cin.get();//读取输入中的下一个字符
例如:用户输入了一段话:my name is c++
char ch=”my name is c++”;
int i;
cin.get(ch);
while(ch !=”c”){
i++;
cin.get(ch);//这样能够便利到字符c的时候跳出循环
}

//另一种写法,
while((ch = cin.get()) != “c”){
i++;
cin.get(ch);//这样能够便利到字符c的时候跳出循环
}

4,二维数组

//初始化二维数组int maxtemps [4][4] = {    {1,2,3,4},    {1,2,3,4},    {1,2,3,4},    {1,2,3,4}};for(int i =0; i <5; i++){    for(int j =0; j <5; j++)        cout << "maxtemps:" << maxtemp[i][j];}