编写一个Java程式,用于接受一个字串,并统计某字元在该字串中出现的次数

Python012

编写一个Java程式,用于接受一个字串,并统计某字元在该字串中出现的次数,第1张

编写一个Java程式,用于接受一个字串,并统计某字元在该字串中出现的次数, Java程式如何统计某字元在该字串中出现的次数?思路是什么? 思路:

先输入字串与想要统计的字元,然后遍历字串的每一个字元,进行统计。

程式码:

import java.text.ParseException

import java.util.Scanner

class DemoA *** {

public static void main(String[] args) throws ParseException {

Scanner sc =new Scanner(System.in)

输入字串

String str=sc.nextLine()

输入字元

String str1=sc.nextLine()

遍历字串

int sum=0

for(int i=0i<str.length()i++){

if(str.substring(i, i+1).equals(str1)){

sum++统计

}

}

System.out.println(str1+"出现了"+sum+"次")

}

}

privatestaticvoidma2(){Scannerscanner=newScanner(System.in)System.out.println("输入内容..")Strings=scanner.nextLine()Mapmap=newHashMap()for(inti=0i>entry=map.entrySet()for(Entrye:entry){System.out.println("值:"+e.getKey()+"--次数:"+e.getValue())}}简单写了下可能不标准

用c语言编写一个程式,用于接收一个字串,并统计某字元在该 字串中出现的次数

#include<stdio.h>

#define MAX 100

void main()

{

char str[MAX], ch

int i=0, t=0

printf("Input a string:")

gets(str)

printf("Input a char:")

ch = getchar()

while(str[i++])

if(str[i-1]==ch)

t++

printf("\nThere are %d '%c's in string '%s'.\n", t, ch, str)

}

C++ 输入一个字串,统计出某个指定的字元在该字串中出现的次数。

#include<iostream>

#include<string>

using namespace std

void main()

{

char *p,a[81]

int n,i

cout<<"请输入一个字串:"<<endl

cin.getline(a,81)

char search

cout<<"请输入要检索的字元:"<<endl

cin>>search

p=a

n=0

for(i=0i<strlen(a)i++)

{

if(search==*p)

n++

*p++

}

cout<<n<<endl

}

在Java中,输入一个字串,再输入一个字元,判断该字元在该字串中出现的次数(使用substring()方法)

import java.util.Scannerpublic class Substring { public void Sub() { int times=0String zfc=new Scanner(System.in).next() String zf=new Scanner(System.in).next() for(int i=0i<zfc.length()-1i++) { String sub=zfc.substring(i, i+1) if(sub.equals(zf)){ times++ } } System.out.println("出现的次数为:"+times) } public static void main(String[] args) { new Substring().Sub() }}

利用指标的概念,编写一个字串统计函式,输入一个字串,统计并返回该字串的个数

#include <stdio.h>

main()

{

char arr[50],*ptr=arr

int sum=0

gets(ptr)

while(*ptr++!='\0')

sum++

printf("%d\n",sum)

}

求大神编一个简单的JAVA程式: 输入一个字串,然后由程式统计并输出在该字串中每个字元出现的次数。

import java.util.Scanner

public class FruitImp {

public static void main(String[] args) {

String str = new Scanner(System.in).nextLine()

用一个二维阵列存放字元和对应的字数

用阵列的缺点是空间浪费 可以用map 或别的代替这里就用阵列简单点

int arr[][] = new int[2][str.length()]

for(int i=0i<str.length()i++){

boolean isExist = false字元是否存在标志

for(int j=0j<str.length()j++){

if(str.charAt(i)==arr[0][j]){

arr[1][j]++

isExist = true

}

}

全部回圈完成后,如果存在,数目加1,存在标志变为true,如果标志还是false则把这个字元加到数组里

if(!isExist){

arr[0][i]=str.charAt(i)

arr[1][i]=1

}

}

for(int k=0k<str.length()k++){

if(arr[0][k]!=0){

System.out.println("字元"+(char)arr[0][k]+"的数目为"+arr[1][k])

}

}

}

}

 编写一个方法统计一个字元在某字串中的出现次数;

char ch

char *pstr

int n=0

while( *pstr != '\0)

{

if(*pstr == ch) n++

pstr++

}

return n

这是我刚根据你的需求写的,你可以参考一下!

我办法很简单,拆分存放数组里面,然后查找数组就可以了!

其实还有更简单的办法,直接用容器比较方便,目前这个办法我自己用数组写的,我个人挺满意的! import java.util.Scanner

public class 统计次数 

{

private static Scanner sc=new Scanner(System.in)

public static void main(String[] args) 

{

System.out.println("\n\t\t==========统计字符串中字符次数==========\n")

init()

}//初始化!

private static void init()

{

for (  )

{

System.out.println("输入文字:")

char[] arr1=fenJie(input())

System.out.println("查找的字:")

char x=muBiao(fenJie(input()))

int y=chaZhao(arr1,x)

System.out.println("你要找的是\""+x+"\",出现"+y+"次\n===============\n")

}

}

//录入!

private static String input()

{

String s=sc.next()

return s

}

//分解!

private static char[] fenJie(String s)

{

char[] arr=new char[s.length()]

for (int i=0i<s.length() i++ )

{

arr[i]=(char)(s.charAt(i))

}

return arr

}

//查找!

private static int chaZhao(char[] arr,char x)

{

int num=0,tem=-1

for (int a=0,b=arr.length-1a<=b a++,b-- )

{

if(a!=b&&arr[a]==x)num++

if(a!=b&&arr[b]==x)num++

if((a==b)&&(arr[a]==x||arr[b]==x))num++

tem=num

}

return tem

}

//目标

private static char muBiao(char[] arr)

{

return arr[0]

}

}

思路:

先输入字符串与想要统计的字符,然后遍历字符串的每一个字符,进行统计。

代码:

import java.text.ParseException

import java.util.Scanner

class DemoAsm{

public static void main(String[] args) throws ParseException {

Scanner sc =new Scanner(System.in)

//输入字符串

String str=sc.nextLine()

//输入字符

String str1=sc.nextLine()

//遍历字符串

int sum=0

for(int i=0i<str.length()i++){

if(str.substring(i, i+1).equals(str1)){

sum++//统计

}

}

System.out.println(str1+"出现了"+sum+"次")

}

}