从一个文本文件中按键精灵逐行读取文本所有字符,统计其中英文字母的个数,并输出。求大神指教

用java编程:任意输入一个字符串,统计其中英文字母a和i的个数,并将该字符串输出。。。用数组的知识&_百度知道
用java编程:任意输入一个字符串,统计其中英文字母a和i的个数,并将该字符串输出。。。用数组的知识&
例如:我要输入:hahoieha
经过java编程,可以得到输出结果为:a的个数为2必须用数组来做呀,谢谢大家了,麻烦代码给点注释,我是初学者
提问者采纳
public static void main(String [] args){
Scanner s=new Scanner (System.in);
String str=s.next();
byte[] b=str.getBytes();
int anum=0;
int inum=0;
for( int i=0;i&b.i++){
if(b[i]=='a'){
if(b[i]=='i'){
System.out.println(&字符a的个数为--&&+anum); System.out.println(&字符i的个数为--&&+inum);}
提问者评价
其他类似问题
为您推荐:
其他1条回答
下面的代码只是处理中间没有空格的一串字符;要处理有空格的只需把字符串A的创建改成
字符串数组String [] A = new String[30];输入和判断就用循环搞定。我也是这学期选修的java,有什么不足还请指正。
import java.util.*;
public class tongji
public static void main(String[] args)
char[] B = new char[30];
Scanner input = new Scanner(System.in);
System.out.println(&输入一串字符:&);
A=input.next();
l=A.length();
for(int k=0;k&l;k++){
B[k] = A.charAt(k);
if(B[k]=='a')a++;
if(B[k]=='i')i++;
while(B[k]=='\0')
System.out.pri...
java编程的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁用C语言编写一段题目为“输出一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数”的程序_百度知道
用C语言编写一段题目为“输出一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数”的程序
用C语言编写一段题目为“输出一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数”的程序。
提问者采纳
#include&&stdio.h&int&main(){&&&&&char&c[50];&&&&&int&i,el=0,sp=0,nu=0,other=0;&&&&&&gets(c);//输入字符串&&&&&&&&&&&for(i=0;&i&strlen(c);&i++)//strlen返回字符串长度&&&&&&{&&&&&&&&&&&&&if((c[i]&='A'&&&&c[i]&='Z')||(c[i]&='a'&&&&c[i]&='z'))&&&&&&&&&&&&&&&&&&el++;&&&&&&&&&&&&&else&if(c[i]&='0'&&c[i]&='9')&&&&&&&&&&&&&&&&&nu++;&&&&&&&&&&&&&else&if(c[i]=='&')&&&&&&&&&&&&&&&&&sp++;&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&other++;&&&&&}&&&&&printf(&英文字母个数=%d\n数&字&个&数&=%d\n空&格&字&数&=%d\n其他字符个数=%d\n&,el,nu,sp,other);&&&&&return&0;}已经测试过了,测试结果如下,有问题可以继续追问。
我是初学者,看不懂,有没有更简单的。
#include&&stdio.h&int&main(){&&&&&char&c[50];//输入字符串&&&&&&int&i,el=0,sp=0,nu=0,other=0;&&&&&&gets(c);//输入字符串&&&&&&&&&&&for(i=0;&i&strlen(c);&i++)//strlen返回字符串长度&&&&&&{&&&&&&&&&&&&&if((c[i]&='A'&&&&c[i]&='Z')||(c[i]&='a'&&&&c[i]&='z'))//判断字符在a~z和A~Z之间为英文字符&&&&&&&&&&&&&&&&&&&el++;//英文字符数目&&&&&&&&&&&&&&else&if(c[i]&='0'&&c[i]&='9')//判断字符在0~9之间为数字字符&&&&&&&&&&&&&&&&&&nu++;//数字数目&&&&&&&&&&&&&&else&if(c[i]=='&')//判断是否为空格&&&&&&&&&&&&&&&&&&sp++;//空格数目&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&other++;//其他字符数目&&&&&&}&&&&&printf(&英文字母个数=%d\n数&字&个&数&=%d\n空&格&字&数&=%d\n其他字符个数=%d\n&,el,nu,sp,other);&&&&&return&0;}这个不知道可能看懂,加了一些注释
看懂了点,strlen 返回字符串是什么意思,
strlen这个函数是返回字符串长度的函数,我不清楚你们现在学到什么程度了?我不知道你们是否可以用strlen函数。如果现在这个不能我看看在改改。#include&&stdio.h&int&main(){&&&&&int&c;&&&&&int&el=0,nu=0,sp=0,other=0;&&&&&&c=getchar();//输入字符&&&&&&&&&&while(c!='\n')&&&&&{&&&&&&&&&&&&&if((c&='a'&&&&c&='z')&||&(c&='A'&&&&c&='Z'))&&&&&&&&&&&&&&&&&&el++;&&&&&&&&&&&&&else&if(c&='0'&&c&='9')&&&&&&&&&&&&&&&&&nu++;&&&&&&&&&&&&&else&if(c=='&')&&&&&&&&&&&&&&&&&&sp++;&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&other++;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&c=getchar();//输入字符&&&&&}&&&&&printf(&英文字母个数=%d\n空&格&个&数=%d\n数&字&个&数&=%d\n其他字符个数=%d\n&,el,sp,nu,other);&&&&&&&return&0;}
那个我没学过,我C语言才讲到函数,没学多少,如果你可以再改改的话,那非常感谢
你如果不好改的话,可以说一下strlen 的具体含义和用法
后面的那个代码是我改过后的,你看看可能看懂,里面的方法和之前的代码一样。
我看了呀,就是不知道strlen .你能讲一下它的用法吗?
追答里面换的是另一个方法。strlen算的是字符串的长度,从字符串头开始计算到串结束符'\0'的串长度。可以参考:
提问者评价
太给力了,你的回答完美解决了我的问题!
来自团队:
其他类似问题
为您推荐:
其他1条回答
/*C语言编写一段题目为“输出一行字符,分别统计出其中的英文字母,空格,数字和其他字符的个数”的程序*/#include&stdio.h&int&main(void){ char&ch,Eng,Space,Num,O for(ch=Eng=Space=Num=Other=0;scanf(&%c&,&ch)&&ch!='\n';)
if((ch|32)&='a'&&(ch|32)&='z')
else&if(ch=='&')
else&if(ch&='0'&&ch&='9')
Other++; printf(&英文字母:&%d\n空格&&&&:&%d\n数字&&&&:&%d\n其它字符:&%d\n&,Eng,Space,Num,Other); return&0;}
那个for 后面怎么一大串,看不懂,ch|32是什么意思
ch|32是按位或,如果ch是大写字母ch|32变成对应的小写,如果是小写不变for(初始条件;判断条件;步进方法){循环体}ch=Eng=Space=Num=Other=0是初始条件,把计数单位全赋值0scanf(&%c&,&ch)读取一个字符,如果读取不出错会返回1ch!='\n'是输入的字符ch不是回车scanf(&%c&,&ch)&&ch!='\n'合成一个逻辑表达式,就是当读取字符不出错并且ch不是回车时条件成立,后面的步进条件因为有前面的scanf是读取操做,不再需要新的条件
我是初学者,还是看不懂,能不能换一种最简单的,又益于看懂啊?就用最简单的字符表示
的吧,他的我想是最易懂的那种了,做的很详细了,我做不出比他更好的来
英文字母的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁编写函数,统计一个字符串中字母、数字、空格的个数。在主函数中调用并输出统计结果(用指针完成)方法一_中华文本库
第1页/共1页
//1. 编写函数,统计一个字符串中字母、数字、空格的个数。在主函数中调用并输出统计结果(用指针完成)。
#include&stdio.h&
#include&string.h&
void count(char *s, int *a, int *b, int *c, int *d)
*a = *b = *c = *d = 0;
if('A' &= *s && *s &= 'Z' || 'a' &= *s && *s &= 'z')
else if('0' &= *s && *s &= '9')
else if(*s == ' ')
char s[100];
int lc, dc, sc,
printf("输入字符串:\n");
count(s, &lc, &dc, &sc, &oc);
printf("字母:%d\n", lc);
printf("数字:%d\n", dc);
printf("空格:%d\n", sc);
printf("其它:%d\n", oc);
第1页/共1页
寻找更多 ""求一替换文本字符的批处理文本文件有上千行,每一行内容由英文的逗号分隔为5部分,例如:ab,f1,,1000要求检测第二部分里的英文字母个数,如果有多个则只保留第一个,然后替换为数字,_百度作业帮
求一替换文本字符的批处理文本文件有上千行,每一行内容由英文的逗号分隔为5部分,例如:ab,f1,,1000要求检测第二部分里的英文字母个数,如果有多个则只保留第一个,然后替换为数字,
求一替换文本字符的批处理文本文件有上千行,每一行内容由英文的逗号分隔为5部分,例如:ab,f1,,1000要求检测第二部分里的英文字母个数,如果有多个则只保留第一个,然后替换为数字,如果为a则换为1,为b则换为2,以此类推,如这里的f则换为6.第2部分没字母就忽略,第1部分数据的长度不定,替换a到z的所以字母.别用递增,这里可能替换为其他字符
这是个复杂的问题,不是30分所能解决的,30分勾不起我的欲望,没有欲望就没有动力.哎!}

我要回帖

更多关于 按键精灵逐行读取文本 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信