一、问题描述
对n个整数进行升序排列(数据由键盘键入)
二、设计思路
(1)读取从键盘键入的n个数据,存入数组a中;
(2)用for循环对数组a中的数据进行遍历,并用if语句来判断大小,按从小到大存入;
(3)遍历输出数组中已经完成升序排列的数组元素;
三、程序流程图
四、伪代码
五、代码
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int a[1000]; 6 int i = 0; 7 while (cin >> a[i]) 8 { 9 i++; 10 if (cin.get() == '\n') break; //用来结束循环 11 } 12 for (int j = 0; j < i-1; j++) 13 { 14 for (int m = j + 1; m < i; m++) 15 { 16 if (a[j] >= a[m]) //完成数据的交换 17 { 18 int temp = a[j]; 19 a[j] = a[m]; 20 a[m] = temp; 21 } 22 } 23 } 24 int count = 0; 25 for (int k = 0; k < i; k++) 26 { 27 cout << a[k]<<" "; 28 count++; //来控制已输出数据的个数,为了美观 29 if (count % 5 == 0) 30 { 31 cout << endl; 32 } 33 } 34 return 0; 35 }
六、总结
(1)利用while循环输入不确定个数的元素时可以在while后面条件中用输入流对象,然后在下面循环体中用if判断,if(cin.get()==‘\n') break;来结束循环;
标签:int,编程,cin,冒泡排序,升序,++,while,数组,趣味 From: https://www.cnblogs.com/lian369/p/17357012.html