整数排序,有逗号

来源:互联网 发布:网络共享文件夹 编辑:程序博客网 时间:2024/05/22 22:01

输入一组大于等于0的整数,根据从大到小的顺序排序后输出,如果排序后有连续数时,只输出连续数中最大和最小的两个数。

输入的所有整数都各不相同,即不用考虑两个整数相同的情况。

输入输出的数都以“,”分隔。输入字符串的总长度小于等于100个字节。下例没有输出8

#include<iostream>using namespace std;void main(){int a[1000],i=0,j,k,temp;cin >> a[0];while (getchar() != '\n'){  //getchar()可以读取换行cin >> a[++i];//cin 可以不读取逗号}for (k = 0; k < i ; k++)for (j = 0; j < i - k; j++)if (a[j] < a[j + 1]){temp = a[j];a[j] = a[j + 1];a[j + 1] = temp;}cout << a[0] << ",";    j = 1;    while (j != i){     if ((a[j - 1] - a[j] == 1) && (a[j] - a[j + 1] == 1))j++; else{ cout << a[j] << ","; j++; }}    cout << a[i] << endl;system("pause");}


0 0
原创粉丝点击