Java第五次上课课堂试验报告
- 1.随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中。
程序源代码:
//随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中。
//王宏伟,2015,10,28
package test;
import javax.swing.*;
public class ShowArrays
{
public static void main(String[] args)
{
int testArray[] = new int[10];
for(int i = 0;i < 10;i++)
{
int random = (int) (Math.random() * 100);//产生一个1到100的随机整数
//Math.random生成一个1以内的double类型数据
testArray[i] = random;
}
int sum = 0;
for(int i = 0;i < 10;i++)
sum = sum + testArray[i];//数组求和
JOptionPane.showMessageDialog(null,"数组元素为 "+testArray[0]+" "+testArray[1]+" "+testArray[2]+" "+testArray[3]
+" "+testArray[4]+"\n"+testArray[5]+" "+testArray[6]+
" "+testArray[7]+" "+testArray[8]+" "+testArray[9]+"\n"+"数组元素之和为\t"+sum,
"随机生成数组",JOptionPane.INFORMATION_MESSAGE);
}
}
程序运行结果截图:
程序设计思想:
调用Math.random()函数生成一个0-1的double类型的浮点数,把这个生成的随机数乘以100得到一个100以内的整数,然后把得到的整数赋值给数组当中的元素,以对话框的形式输出。
程序流程图:
2.动手动脑把数字转化为汉字:
程序源代码:
//请编写一个程序将一个整数转换为汉字读法字符串。比如“1123”转换为“一千一百二十三
//王宏伟,2015,10,28
package test;
import javax.swing.*;
public class IntToChineseCharacter
{
public
static void main(String[] args)
{
//
TODO 自动生成的方法存根
String
input,output = "";//用户输入的数字和最后转化成的汉语
String
chineseCharacter[] = {"百亿","十亿","亿","千万","百万","十万","万","千","百","十",""};
String
chineseNum[] = {"一","二","三","四","五","六","七","八","九"};
input = JOptionPane.showInputDialog(null,
"请输入一个整数","欢迎使用本程序" ,3);
//
JOptionPane.showInputDialog方法返回用户输入的字符串。
// 显示在输入对话框中的标题、消息及图标等由传递给该方法的参数确定,
// 第二个参数是要在输入对话框中显示的字符串,第三个参数是要在输入对话框的标题栏中显示的字符串,
// 第四个参数为要显示的图标,值为JOptionPane类常量。0是错误1是正常信息2是警告3是疑问
// 第1个参数的值为null表示对话框显示在屏幕中央。
int inputNum = Integer.valueOf(input);//把用户输入的字符串转化为整数
int getNum[] = new int[input.length()],i =
0;//存放用户输入的各位数,局部变量初始化
while(true)
{
getNum[i]
= (inputNum % 10);
i++;
inputNum
= inputNum/10;
if(inputNum
== 0)
break;
}//从高到低取出各个数字并存放在getNum[]当中现在的数组存放的是当前数字的逆序
int length = getNum.length;//求出inputNum的长度,这决定了从哪一位开始读数
for(i = 0;i < length;i++)
{
int
index;
index
= getNum[i];
getNum[i]
= getNum[length -1 - i];
getNum[length
- 1 - i] = index;
}//把这个逆序的数组再转换过来
for(i = 0;i < length;i++)
{
output
+= chineseNum[getNum[i] - 1];
output
+= chineseCharacter[chineseCharacter.length - length + i];
}
JOptionPane.showMessageDialog(null, output,
"转化成汉语的结果是", 1);
}
}
程序运行结果截图: