使用java程序实现:随机输入一串数字与字母,对这串字符进行分组排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用java程序实现:随机输入一串数字与字母,对这串字符进行分组排序相关的知识,希望对你有一定的参考价值。
字母按照逆序输出,数字按照由小到大输出,字母与数字间隔输出示例:d0c1b3。
参考技术A String str="9f3k2j5z031";char[] ch=str.toCharArray();
char[] temp=new char[ch.length];
int count=0;
for(char c:ch)
if(c>57)
count++;
System.arraycopy(ch, 0, temp, 0, ch.length);
Arrays.sort(temp);
System.out.println(count);
System.out.println(new String(temp));
int size=temp.length;
for(int i=0;i<size;i++)
if((i/2)<count&&i%2==0)
System.out.print(temp[size-1-(i/2)]);
else if((i/2)<count&&i%2==1)
System.out.print(temp[(i/2)]);
else
System.out.print(temp[i-count]);
本回答被提问者采纳
C语言如何获取用户输入的随机个数的一串数字
输入一个数字一个空格或者别的,让后回车或者别的标示符结束输入.
临时定义较大的数组,输入时记录个数,然后动态申请数组则能解决这一问题。以输入整数为例的代码如下:
//#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"
#include "string.h"
#include "stdlib.h"
int *myinput(int *x)
int n=sizeof(int),*p;
#if n==4 //若是32位int平台
int a[0xffffff];
#else //若是16位int平台
int a[0x07fff];
#endif
*x=0;
while(scanf("%d",a+*x)>0)//输入数据
(*x)++;
if((p=(int *)malloc(*x*n))==NULL)//动态创建数组
printf("Failed to create the array...\\n");
return NULL;
memcpy(p,a,*x*n);//将输入数据拷贝到动态创建的数组中
return p;
int main(void)
int *p=NULL,n,i;
printf("Please enter some Numbers, not figures were over...\\n");
p=myinput(&n);
for(i=0;i<n;printf("%d ",p[i++]));//Look at...
free(p);
printf("\\n");
return 0;
参考技术A #include <stdio.h>
#include <stdlib.h>
void main()
char b[100];
scanf("%[^\\n]s",&b);
printf("%s\\n",b);
可以输入任何数量的字符(如果大于100,你把b[100]改下)
本回答被提问者和网友采纳 参考技术B 数组啊、字符串数组应该可以吧,以上是关于使用java程序实现:随机输入一串数字与字母,对这串字符进行分组排序的主要内容,如果未能解决你的问题,请参考以下文章
Java学习:输入一串字符串,分别统计出其中的中英文字母,空格,数字和其他字符的个数