提取数字串按数值排序

您所在的位置:网站首页 java找出字符串中的数字并输出 提取数字串按数值排序

提取数字串按数值排序

2024-02-24 09:57| 来源: 网络整理| 查看: 265

描述 给定一个字符串,请将其中的所有数字串提取,并将每个数字串作为整数看待(假设可以用int 表示),按从小到大顺序输出结果,输出的整数之间以逗号间隔。如果没有数字,则输出0;例如:*1234.345#6781ad9jk81-11101?aght88ir09kp,其中的整数包括:1234,345,6781,9,81,11101,88,9,从小到大排序后,应该输出: 9,9,81,88,345,1234,6781,11101

输入 在一行内输入一串符号,长度不大于300。输入数据保证提取的整数不超过109。 输出 从小到大排序的整数序列,如果没有数字,则输出0; 样例输入 *1234.345#6781ad9jk81-11101?aght88ir09kp 样例输出 9,9,81,88,345,1234,6781,11101

解题

分解后排序 注意不含有数字的情况 注意我这里复杂了,转换为整数的时候完全可以再循环里做

代码 #include #include #include using namespace std; char s[350];//字符串 int temp[10];//临时分解数字 int ans[300];//答案 int toInt(int n){//转换为整数 int num=0; for (int i = 0; i cin>>s; int len=strlen(s); int have=0; for (int i = 0; i //分割 temp[j++]=s[i]-'0'; i++; } if(j>0){ ans[have++]=toInt(j);//转换 } } sort(ans,ans+have);//排序 for (int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3