hdu acm1106:
开始的时候写了半天总是运行不出来,发现是数字字符的原因,'5'与5的区别啊;
c++代码如下:
#include<iostream>
using namespace std;
void main()
{
char a[1001];
while(gets(a))
{
int j=0; //每次进行初始化
int b[1001]={0};//初始化数组b
for(int i=0;a[i];i++)//将字符串数组a按5分开
{
if(a[i]=='5')
continue;
else //讲字符化为整数
{
b[j]=b[j]*10+a[i]-'0';
if(a[i+1]&&a[i+1]=='5')
j=j+1;
}
}
if(a[i-1]=='5')//判断字符串数组最后一个字符是否为'5',如是j-1
j=j-1;
for(i=1;i<j+1;i++) //冒泡排序法
for(int k=0;k<j;k++)
if(b[k]>b[k+1])
{
int t=b[k];
b[k]=b[k+1];
b[k+1]=t;
}
for(int k=0;k<j+1;k++)//格式化输出数组b
cout<<b[k]<<" ";
cout<<endl;
}
}