首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

JAVA经典算法40题(四)

2012-12-14 
JAVA经典算法40题(4)【程序7】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。程序分

JAVA经典算法40题(4)

【程序7】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

程序分析:利用while语句,条件为输入的字符不为 '\n '.

import java.util.Scanner;public class ex7 {    public static void main(String args[]){        System.out.println("请输入字符串:");        Scanner scan=new Scanner(System.in);        String str=scan.next();        String E1="[\u4e00-\u9fa5]";        Sintrting E2="[a-zA-Z]";        countH=0;        int countE=0;        char[] arrChar=str.toCharArray();        String[] arrStr=new String[arrChar.length];        for (int i=0;i            arrStr[i]=String.valueOf(arrChar[i]);        }        for (String i: arrStr ){            if (i.matches(E1)){                countH++;            }            if (i.matches(E2)){                countE++;            }        }        System.out.println("汉字的个数"+countH);        System.out.println("字母的个数"+countE);    }}

?

【程序8】题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

程序分析:关键是计算出每一项的值。

import java.io.*;public class Sumloop {    public static void main(String[] args) throws IOException{        int s=0;        String output="";        BufferedReader stadin = new BufferedReader(new InputStreamReader(System.in));        System.out.println("请输入a的值");        String input =stadin.readLine();        for(int i =1;i<=Integer.parseInt(input);i++){            output += input;            int a = Integer.parseInt(output) ;            s+=a;        }        System.out.println(s);    }}

?另解:

import java.io.*;public class Sumloop {    public static void main(String[] args) throws IOException{        int s=0;        int n;        int t=0;        BufferedReader stadin = new BufferedReader(new InputStreamReader(System.in));        String input = stadin.readLine();        n= Integer.parseInt(input);        for(int i=1;i<=n;i++){            t=t*10+n;            s=s+t;            System.out.println(t);        }        System.out.println(s);    }}

?

热点排行