找出给定字符串中大写字符(即'A'-'Z')的个数

接口说明

原型:int CalcCapital(String str);

返回值:int

知识点 字符串
运行时间限制 10M
内存限制 128
输入

输入一个String数据

输出

输出string中大写字母的个数

需考虑字符串为空  如果为空输出0

样例输入 add123#$%#%#O
样例输出 1
import java.util.*;
public class calUpper{
public static void main(String[] args){
Scanner cin=new Scanner(System.in);
String str=cin.nextLine();
int count=0;
if(!str.equals(" ")){//注意不要用str!=" "比较字符串
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if(c>='A' && c<='Z'){
count++;
}
}
}else{
System.out.println(0);
}
System.out.println("count:"+count);
} }

  

题目一:通过键盘输入一串小写字母(a~z)组成的字符串。
          请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。
  比如字符串“abacacde”过滤结果为“abcde”。

示例
  输入:“deefd”        输出:“def”
  输入:“afafafaf”     输出:“af”
  输入:“pppppppp”     输出:“p”

题二:题目描述(40分):
  通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出现的重复字母进行压缩,并输出压缩后的字符串。
  压缩规则:
  1. 仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc".
  2. 压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"

示例 
  输入:“cccddecc”   输出:“3c2de2c”
  输入:“adef”     输出:“adef”
  输入:“pppppppp” 输出:“8p”

class Test1
{
//去掉重复字符
static void stringFilter(char InputStr[],long len,char OutputStr[]){
int[] a=new int[26];
int num=0;
int j=0;//OutputStr[]计数
for(int i=0;i<len;i++){
num=InputStr[i]-'a';
if(a[num]==0){//没出现过
OutputStr[j]=InputStr[i];
j++;//输出下标增加一次
a[num]=1;//赋值完了之后就置1
}
}
} //压缩字符
static void stringZip(char InputStr[],long len,char OutputStr[]){
char temp=' ';
int num=1;//计算重复的个数
int point=0;
for(int i=0;i<len;i++){
if(InputStr[i]==temp){
num++;
}else{
if(num!=1){
OutputStr[point++]=(char)(num+'0');//把重复的个数输出
num=1;
}
OutputStr[point++]=temp;//把重复的字符输出
temp=InputStr[i];//把新的字符给temp
}
} }
public static void main(String[] args)
{
char[] test={'a','a','a','c','b','b','b','a','a','c','a','d','d','d','c','d','e'};
long len=test.length;
char[] res=new char[(int)len];
stringFilter(test,len,res);
int j=res.length;
for(int i=0;i<j;i++){
if(res[i]!='\0'){//只要还没到结尾,就一直输出
System.out.print(res[i]);
}else
break;
} char[] res2=new char[(int)(2*len)];
stringZip(test,len,res2);
for(int i=0;i<2*len;i++){
if(res2[i]!='\0'){
System.out.print(res2[i]);
}else
break;
}
} }

  

统计大写字母个数&压缩和去重(过滤)的更多相关文章

  1. 华为oj - 统计大写字母个数

    练手而已. 给初学者参考 #include <stdio.h> #include <string.h> int main(void) { char string[200]={' ...

  2. OpenJudge计算概论-求字母的个数(统计元音字母个数)

    /*======================================================================= 求字母的个数 总时间限制: 1000ms 内存限制: ...

  3. 【python实例】统计字符串里大写字母,小写字母的个数和非字母的个数

    """ 给定一个以下字符串:统计大写字母的个数,小写字母的个数,非字母的个数. str1 = "ajdkkKDKEK1343KFKiriromfkfKKRIOW ...

  4. 力扣(LeetCode)520. 检测大写字母

    给定一个单词,你需要判断单词的大写使用是否正确. 我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如"USA". 单词中所有字母都不是大写,比如"l ...

  5. 程序一 用记事本建立文件src.dat,其中存放若干字符。编写程序,从文件src.dat中读取数据,统计其中的大写字母、小写字母、数字、其它字符的个数,并将这些数据写入到文件test.dat中。

    用记事本建立文件src.dat,其中存放若干字符.编写程序,从文件src.dat中读取数据,统计其中的大写字母.小写字母.数字.其它字符的个数,并将这些数据写入到文件test.dat中. #inclu ...

  6. 华为OJ平台——统计字符串中的大写字母

    题目描述: 统计字符串中的大写字母的个数 输入: 一行字符串 输出: 字符串中大写字母的个数(当空串时输出0) 思路: 这一题很简单,直接判断字符串中的每一个字符即可,唯一要注意的一点是输入的字符串可 ...

  7. Java经典案例之-“统计英文字母、空格、数字和其它字符的个数”

    /** * 描述:输入一行字符串,并且统计出其中英文字母.空格.数字和其它字符的个数. * 分析:利用for语句,条件为输入的字符不为 '\n ' * 作者:徐守威 */ package com.xu ...

  8. C语言习题1.分别统计一下其中字母,数字,其他字符的个数。将统计的字母,数字,其他字符的个数以柱状图的形式打印

    从键盘上输入字符,(1)分别统计一下其中字母,数字,其他字符的个数, (2)将统计的字母,数字,其他字符的个数以柱状图的形式打印.例如 5 ***** *****     3 *****   **** ...

  9. Java 统计字母个数

    原理: 将字符串转换成char字符数组 然后使用另一个数组存储 代码如下 public class CalChar { public static void main(String[] args) { ...

随机推荐

  1. 视频SharePoint 2010 大局观 By 陈希章[zt]

    SharePoint 2010 大局观 By 陈希章 http://hi.baidu.com/jinzesudawei/item/9d0adace8cbcaf2c47d5c0fc

  2. Oracle11g 卸载教程图解

    1:停掉所有Oracle相关的服务 1.1打开服务方式如下: 1.1.1:右击“计算机”–>管理–>服务和应用程序–>服务 1.1.2:开始–>输入“服务”后点击搜索–> ...

  3. php的yii框架开发总结9

    这一篇讲解怎么实现的自动发邮件的功能,我在网上查了很多资料,很多都是用定时检测来实现的,我试过,效率太低,网站也卡了. 后来就写了一个.bat文件来实现刷新页面,用了windows的定时任务定时来运行 ...

  4. org.apache.xmlbeans.XmlException: error: does not close tag

    使用myeclipse的jax自动生成webservice , 或者serviceImpl通过@webservice来实现webservice时, 使用soap UI (我测试使用的版本 5.2.1) ...

  5. SAP CRM和C4C的产品主数据price维护

    SAP CRM 点了Edit List之后,可以直接修改产品主数据的Price信息: C4C 在C4C的product administration工作中心里: 点击Edit按钮进入编辑模式,Pric ...

  6. webpack-dev-server启动后, localhost:8080返回index.html的原理

    webpack-dev-server是一个采用Node.js Express实现的微型服务器, 内部使用webpack-dev-middleware来响应发送到服务器监听单口的HTTP请求. webp ...

  7. Leetcode 78. Subsets (backtracking) 90 subset

    using prev class Solution { List<List<Integer>> res = new ArrayList<List<Integer&g ...

  8. cesium 显示视角高度以及鼠标经纬度

    HTML中的内容 <div id="cesiumContainer"> <!-- 设置经纬度显示 --> <span style="font ...

  9. 自定义报告,用Java写一个html文件

    因为testng不满足我们的展示,所以我们会自己定义一个报告,实施步骤是,把静态页面做好后,放在Java项目中,其实和生成一个日志文件类似,只是该了后缀,Java中需要使用到PrintStream,案 ...

  10. 2018.8.3 Java中容易犯错误的问题思考与总结

    Java容易犯错误的问题思考 float型 float f = 3.4 是否正确 不正确,应该用强制类型转换.如下所示:float f = (float)3.4 或float f = 3.4f 在ja ...