用C++ 可以输入任意多个整数,分别按升序、降序输出 啊真的输入任意个数想不出来
下面的代码是,在一行中输入任意个整数,输入回车符结束,然后按升序排序:
#include <iostream>
using namespace std;
//冒泡排序
void bubble_sort(int a[],int n)
{
int i,j,t;
for (i=0;i<n-1;i++)
{
for (j=0;j<n-1-i;j++)
{
if(a[j] > a[j+1]) //从小到大,升序
{
t = a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
}
int main()
{
int a[100],i=0,j;
while( cin >> a[i])
{
i++;
if (cin.get() == '\n')
{
break;
}
}
//排序
bubble_sort(a,i);
for (j=0;j<i;j++)
{
cout << a[j] << " ";
}
return 0;
}
你可以直接使用算法库里的sort函数。
任意数就是 int * a= new [n];
http://www.cplusplus.com/reference/algorithm/sort
char a[10000];
scanf("%s",a);
int len;
len=strlen(a);
len就是你输入的个数,你输入的都放入了a里面,转换再用就可以了。