找出给定字符串中大写字符(即'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. expres webpack es6 babel 构建多页系统开发架构

    开始写点什么... 只是一个思路........

  2. linux基础命令-mkdir/tree/rmdir

    命令行的展开 ~: 展开为用户的主目录 ~USERNAME: 展开为指定用户的主目录 {}:可承载一个以逗号分隔的列表,并将其展开为多个路径 [root@host01 tmp]# mkdir -vp ...

  3. robotframework实战三--自定义关键字

    在rf的实战1中,我的登录获取验证码就使用了自定义关键字,具体怎么做的,如下 1.新建文件夹 新建一个文件夹,我的MyLibrary,并且存放在site-packages下 2.编写代码 在pytho ...

  4. HashMap扩容

    前言:当您在读该文章的时候,我认为您已经知道HashMap的底层实现原理,如果您还不清楚HashMap是如何实现的,请先去了解,再回来看本文章. 1.HashMap什么时候扩容? HashMap的容量 ...

  5. ORA-01262,oracle启动报错,及Oracle启动原理

    错误状态: SQL> startup ORA-01261: Parameter db_recovery_file_dest destination string cannot be transl ...

  6. 计算1到n的n次方之和

    实现效果: 知识运用: Math类的Pow方法:返回指定数字的指定次幂 public static double Pow(double x,double y) 实现代码: public string ...

  7. 解决 Jsp_Servlet 编码乱码问题

    Tomcat8.0以上浏览器请求的数据编码格式(包含): Get请求的时候Tomcat用UTF-8处理 post请求的时候Tomcat用ISO8859-1处理 Tomcat8.0以下浏览器请求的数据编 ...

  8. iOS 多线程 之 GCD(大中枢派发)(二)

    本文接着上一篇讲.主要讲:dispatch_source. dispatch_source主要用户监听事件,可以监听如下事件 DISPATCH_SOURCE_TYPE_DATA_ADD DISPATC ...

  9. C#基础学习笔记(个人整理)

    学习笔记 第一章:c#基础 一.程序设计语言的发展及历史 1.程序设计语言? 通俗也叫编程语言,实现人与机器交互的工具 2.历史 1)机器语言 : 0,1 2)汇编语言 : 包含一些机器语言,同时增加 ...

  10. 利用Selenium+java实现淘宝自动结算购物车商品(附源代码)

    转载请声明原文地址! 本次的主题是利用selenium+java实现结算购买购物车中的商品. 话不多说,本次首先要注意的是谷歌浏览器的版本,浏览器使用的驱动版本,selenium的jar包版本.   ...