/*直接在以前的代码上改的,改的很糟糕,哎*/
/*编写Application程序, 从命令行参数输入10个整数并保存在数组中,求数组中最大、最小、数据的和、平均值。(20分)*/
import java.io.*;import java.io.*;
import javax.swing.JOptionPane;
public class dataSort
{
public static void main(String args[])throws IOException
{
int k,count =10;
double score[] = new double[count];
double doubleSum = 0.0,doubuleAver = 0.0,maxScore = 0.0,minScore=0.0,averageScore=0.0;
String str;
BufferedReader buf = new BufferedReader(
new InputStreamReader(System.in)
);
for ( k=0;k<count;k++){
System.out.print("请输入第"+(k+1)+"个数");
str = buf.readLine();
score[k]=Double.parseDouble(str);
doubleSum += score[k];
if (score[k]>maxScore) maxScore = score[k];
}
minScore=score[0];
for ( k=1;k<count;k++){
if (score[k]<minScore) minScore = score[k];
}
averageScore=doubleSum/10;
//采用冒泡法 ,对成绩排序
double [] scoreCopy = new double[count+1];
double temp = 0;
System.arraycopy(score,0,scoreCopy,1,score.length);
for(k = 1;k < 100;k++){
for(int m = 1;m<=count - k;m++ ){
if(scoreCopy[m] > scoreCopy[m+1]){
temp = scoreCopy[m];
scoreCopy[m] = scoreCopy[m+1];
scoreCopy[m+1] = temp;
}
}
}
System.out.println("这"+score.length+"个数如下");
for(int j = 0;j < score.length;j++){
System.out.print(score[j]+"\t");
}
System.out.println("\n"+score.length+"个数从低到高排序如下:");
for (int j=1;j<scoreCopy.length;j++)
System.out.println(scoreCopy[j]+"\t");
System.out.print("数据的和:"+doubleSum+"\t"+"最大值:"+maxScore+"\t"+"最小值:"+minScore+"\t"+"平均值:"+averageScore+"\t");
}
}
/*验证带区号的电话号码的合法性。(正则表达式)*/
import java.io.*;
public class phonepd{
public static void main(String[] args) throws IOException{
boolean contiGo = true;
String str;
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
String regex = "^(8613\\d|15[036-9]|18[89])\\d{8}$";
String phoneNumber = "";
while (contiGo){
System.out.println("请输入电话号码");
phoneNumber = buf.readLine();
boolean match = phoneNumber.matches(regex);
if(match){
System.out.println(phoneNumber+"是合法的电话号码");
break;
}
else System.out.println(phoneNumber+"不是合法的电话号码");
}
}
}
/*统计含有空格、逗号、句号的单词数。(String类中split函数)*/
import java.util.Scanner;
public class Tongji
{
public static void main(String[] args){
while(true){
count();
}
}
public static void count()
{
int a=0,b=0,c=0,d=0;
Scanner scaner = new Scanner(System.in);
String s;
s = scaner.nextLine();//读入一行字符
a = s.length();//判断字符数
char [] s1 = s.toCharArray();//转换为你字符数组来判断。
for(int i=0;i<a;i++){
if(s1[i]==' '){
b++;
}
else if(s1[i]==','){
c++;
}
else if(s1[i]=='.'){
d++;
}
else{
continue;
}
}
System.out.println("空格数:"+b+"逗号数:"+c+"句号数:"+d);
}
}
/*编写Java Appet 程序打印 “水仙花” 数 (它的个、十、百位数字的立方的和等于该数本身,如:153=1^3+5^3+3^3)(20分)*/
public class waterFlower
{
public static void main(String[] args){
for(int i=100;i<999;i++)
{
int bai = i/100;
int shi = i%100/10;
int ge = i%10;
if(bai*bai*bai+shi*shi*shi+ge*ge*ge==i){
System.out.println(i+"是水仙花数!");
}
}
}
}