文档详情

浙大-Java语言程序设计编程答案10.doc

发布:2024-07-08约2.99千字共8页下载文档
文本预览下载声明

浙大-Java语言程序设计编程答案10

实验11字符串处理

统计单词(选做)40031

输入一个正整数repeat(0repeat10),做repeat次下列运算:

输入一行字符,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。

例:括号内是说明

输入

2(repeat=2)

Reoldbuildingroom123

Programmingisfun

输出

4

3

importjava.util.Scanner;

publicclassTest40031{

publicstaticvoidmain(String[]args){

intri,repeat,count,word,i;

Stringline;

charc;

Scannerin=newScanner(System.in);

repeat=(in.nextLine()).charAt(0)-0;

for(ri=1;ri=repeat;ri++){

line=in.nextLine();

/*---------*/

count=word=0;

for(i=0;iline.length();i++){

c=line.charAt(i);//从字符串line中取出第i个字符,放入变量c

if(c==32)word=0;//当前字符是空格,表示不是单词

elseif(word==0){//当前字符不是空格,同时word=0,表示新单词开始

word=1;

count++;

}

}

System.out.println(count);

}

}

}

输出一个整数的各位数字(选做)40032

输入一个正整数repeat(0repeat10),做repeat次下列运算:

输入一个整数,从高位开始逐位输出它的各位数字。

输出语句:System.out.print(digit+);

例:括号内是说明

输入

3(repeat=3)

123456

-600

8

输出

123456

600

8

importjava.util.Scanner;

publicclassTest40032{

publicstaticvoidmain(String[]args){

intri,repeat;

intdigit;

longn,temp,pow;

Scannerin=newScanner(System.in);

repeat=in.nextInt();

for(ri=1;ri=repeat;ri++){

n=in.nextLong();

/*---------*/

n=Math.abs(n);

Strings=String.valueOf(n);//把整数n转换成字符串

for(inti=0;is.length();i++){

digit=s.charAt(i)-0;//从高位到低位依次得到一位数字

System.out.print(digit+);//输出该位数字,再加一个空格

}

System.out.println();

}

}

}

注意:若语句digit=s.charAt(i)-0;改为digit=s.charAt(i);

则变量digit的值为该字符的unicode编码。

//解法2:

n=Math.abs(n);

char[]cs=String.valueOf(n).toCharArray();

//把整数n转换成字符串后存入字符数组cs,cs的元素就是n的每位数字

for(inti=0;ics.length;i++)

index=-1;//先假设没找到

for(j=0;jstr.length();j++)

if(str.charAt(j)==ch)index=j;

显示全部
相似文档