7-1 各类字符数 (20分)
从键盘输入一个字符串,程序输出该字符串中的大写英文字母数,小写英文字母数以及非英文字母数
输入格式:
字符串
输出格式:
大写英文字母数 小写英文字母数 非英文字母数
输入样例:
在这里给出一组输入。例如:
Hello My Dear Friend, I Miss You Very Much!
输出样例:
在这里给出相应的输出。例如:
9
24
10
答案:
import java.util.Scanner;
public class Main {
public static void main(String []args)
{
Scanner cin=new Scanner(System.in);
String s=cin.nextLine();
char[]ns =s.toCharArray();
int upcount=0;
int lowcount=0;
int count=0;
for(int i=0;i<ns.length;i++)
{
if(ns[i]>=65&&ns[i]<=90)
upcount++;
else if(ns[i]>=97&&ns[i]<=122)
{
lowcount++;
}
else count++;
}
System.out.println(upcount);
System.out.println(lowcount);
System.out.println(count);
cin.close();
}
}
7-2 数据类型判断 (20分)
从键盘分别输入通过空格分割的整型(int)、浮点型(double)、字符型(String)、布尔型(boolean),根据读取的内容判断他们的类型并将他们解析为正确的对象,并都放到一个数组中。输出各个对象的类型
输入格式:
字符串
输出格式:
数据类型
输入样例:
在这里给出一组输入。例如:
2.1 true 123 abcde
输出样例:
在这里给出相应的输出。例如:
double boolean int String
答案
import java.util.Scanner;
public class Main {
public static void main(String []args)
{
Scanner cin=new Scanner(System.in);
String s;
int j=0;
while(cin.hasNext()){
if(j!=0)
System.out.print(" ");
if(cin.hasNextInt()){
System.out.print("int");
}
else if(cin.hasNextDouble()){
System.out.print("double");
}
else if(cin.hasNextBoolean()){
System.out.print("boolean");
}
else System.out.print("String");
cin.next();
j=1;
}
}
}
7-3 我也会加密 (20分)
字符串加密可以理解为对字符串的一种固定方式的变形,现定义一种基于种子数字的加密方法,首先计算种子数字,计算方法为将该字符串的长度对5求余加1,以该数字为间隔,得到原字符串的子串并求逆得到最终的密码。
输入格式:
原字符串
输出格式:
加密后的字符串
输入样例:
在这里给出一组输入。例如:
abcdefghijklmn
输出样例:
在这里给出相应的输出。例如:
kfa
答案
import java.util.Scanner;
public class Main{
public static void main(String []args)
{
Scanner cin=new Scanner(System.in);
String s=cin.nextLine();
int mm=s.length()%5+1;
int j=0;
int length;
if(s.length()%mm==0)//这里需要注意
length=s.length()/mm;
else
length=s.length()/mm+1;
char []ns=new char[length];
for(int i=0;i<length;i++)
{
if(j<=s.length())
ns[i]=s.charAt(j);
else break;
j+=mm;
}
for(int i=0;i<ns.length/2;i++)
{
char t=ns[i];
ns[i]=ns[ns.length-i-1];
ns[ns.length-i-1]=t;
}
System.out.println(ns);
// String nns=ns.toString();
// String nnns=new StringBuffer(nns).reverse().toString();
//
// System.out.println(nnns);
cin.close();
}
}
7-4 比较日期 (20分)
从命令行输入两个日期(格式为MM,dd,yyyy),程序解析日期,判断两个日期的大小,以及两个日期的间隔天数。 提示:月份是从0开始
输入格式:
两个日期
输出格式:
日期大小关系 间隔天数(正数)
输入样例:
在这里给出一组输入。例如:
04,12,2012 04,21,2012
输出样例:
在这里给出相应的输出。例如:
<
9
答案
import java.util.*;
import java.text.SimpleDateFormat;
import java.text.ParseException;
public class Main{
public static void main(String []args) throws ParseException
{
Scanner cin=new Scanner(System.in);
String str1=cin.next();
String str2=cin.next();
SimpleDateFormat df=new SimpleDateFormat("MM,dd,yyyy");
Date d1=df.parse(str1);
Date d2=df.parse(str2);
char a;
if(d1.after(d2)) a='>';
else if(d1.before(d2)) a='<';
else a='=';
System.out.println(a);
int b= (int) ((d2.getTime() - d1.getTime()) / (1000 * 60 * 60 * 24));//毫秒转化为天数
System.out.println(Math.abs(b));
cin.close();
}
}
1万+

被折叠的 条评论
为什么被折叠?



