使用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学习:输入一串字符串,分别统计出其中的中英文字母,空格,数字和其他字符的个数

C语言编程题:从键盘输入一串字符,统计其中的数字与字母个数并输出

java编程 字母数和单词数问题

C语言如何获取用户输入的随机个数的一串数字

java怎样实别一串字符中有多少个数字多少个大小写字母

输入一串随机数字,然后按千分位输出。