首页 > 代码库 > 5.1,5.2
5.1,5.2
5.1 for循环
c++对for循环的调整。允许
for(int i=0;i<5;i++)这样的情况出现
这样做的优点是变量i只出现在for循环中。
a++,++a;
a++表示使用a的当前值,然后将a加1;
++a表示先将a+1,然后使用新的值。
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 int main() 5 { 6 string word; 7 cout<<"enter a word"; 8 9 cin>>word;10 11 for(int i=0,j=word.size()-1;i<j;i++,j--)12 {char temp=word[i];13 word[i]=word[j];14 word[j]=temp;15 }16 cout<<word;17 return 0;18 }
程序将一个字符串按反向存储并输出,
size()用于返回字符串的大小,word.size();
5.1.14 C风格字符串的比较
不能用关系运算符比较字符串的大小。
例如:字符串数组word,
word=“mata”;是错误的
以为数组名是地址,而引号之中的字符串常量也是地址。
比较字符串大小用函数:strcmp(),它的参数是地址,因此参数可以是指针、字符串常量、字符数组名。
如果字符串相等返回0;
如果第一个字符串大于第二个,返回负值;
如果第一个字符串小于第二个,返回正值。
可以用关系运算符比较字符,因为字符实际上是整数。
1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 int main() 5 { 6 char word[5]="?ate"; 7 for(char ch=‘a‘;strcmp(word,"mate");ch++) 8 { 9 cout<<word<<endl;10 word[0]=ch;11 }12 return 0;13 }
5.1.15比较string类的字符串
因为类函数重载了这些运算符,所以可以使用关系运算符对string类进行比较。
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 int main() 5 { 6 string word="?ate"; 7 for(char ch=‘a‘;word!="mate";ch++) 8 { 9 cout<<word<<endl;10 word[0]=ch;11 }12 return 0;13 }
5.2while循环
延时循环
使用头文件<ctime>;
CLOCKS_PER_SEC,该变量等于每秒钟包含的系统单位时间数。
clock_t为clock()返回类型的别名。
1 #include<iostream> 2 #include<ctime> 3 int main() 4 { 5 using namespace std; 6 cout<<"enter the delay time ,in seconds"; 7 float sec; 8 cin>>sec; 9 clock_t delay=sec*CLOCKS_PER_SEC;10 cout<<"start\a\n";11 clock_t start=clock();//clock()返回程序开始执行后所用的系统时间12 while(clock()-start<delay)13 {};14 cout<<"done\n";15 return 0;16 }
5.1,5.2
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。