ASCII排序
需求:
代码如下:
1 #include <iostream>
2 #include <string.h>
3 using namespace std; 4 int main() 5 { 6 char str[]="networks"; 7 int i,j,len; 8 len=strlen(str); //获取字符串的长度,需要引入外部头文件 9 for(i=0;i<len-1;i++){ //这里用到双重循环来控制两个相邻字符进行比较 10 for(j=i+1;j<len;j++){ 11 if(str[i]>str[j]){ //相邻两个数(字符的背后代表的就是数字ASCLL码)作比较,如果前一个大于后一个,则进行交换 12 char ch=str[i]; 13 str[i]=str[j]; 14 str[j]=ch; 15 } 16 } 17 } 18 cout<<str; 19 return 0; 20 }
分析与总结:
1、感觉题目描述的不是很明确,应该改为“将字符串按ascll码的大小进行排序”。
2、学习到了string类中的strlen函数来计算字符串的长度。
3、还有就是学习到了前后两个比较时,用到“双重循环+if语句判断”的思维方法。
写在最后:
哪里有不足或者错误的地方,欢迎小伙伴们进行指教,一起进步哦!