没有合适的资源?快使用搜索试试~ 我知道了~
自考JAVA语言程序设计(一)课后习题答案和源代码(实验大纲)参照.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 57 浏览量
2021-11-07
16:26:03
上传
评论
收藏 255KB PDF 举报
温馨提示
试读
21页
自考JAVA语言程序设计(一)课后习题答案和源代码(实验大纲)参照.pdf
资源推荐
资源详情
资源评论
实验大纲
1 字符统计程序
程序运行结果:
统计字符源文件: StaChar.java
import javax.swing.*;
/**
* 1 字符统计程序 <BR>
* 利用对话框读入字符串 统计输入字符行中数字字符、英文字母个数 . <BR>
* @author 黎明你好
*/
public class StaChar
{
public static void main(String[] args)
{
String str = JOptionPane. showInputDialog ( " 请输入字符串: " );
char [] c = str.toCharArray();
int numberCount = 0;
int letterCount = 0;
for ( int i = 0; i < c. length ; i++)
{
if (c[i] < '9' && c[i] > '0' )
numberCount++;
else if ((c[i] > 'A' && c[i] < 'Z' ) || (c[i] > 'a' && c[i] <
'z' ))
letterCount++;
}
String result = " 输入内容: " + str + " 数字字符: " + numberCount
+ " 个; " + " 字母: " + letterCount
+ " 个 " ;
JOptionPane. showMessageDialog ( null , result, " 结果: " ,
JOptionPane. INFORMATION_MESSAGE );
}
}
2 找质数程序
程序运行结果:
输出质数原文件: PrintPrime.java
import javax.swing.JOptionPane;
/**
* 2 找质数程序 , 利用对话框读入整数 , 输出 2 至这个整数之间的质数 . <BR>
* @author 黎明你好
*/
public class PrintPrime
{
private int number ; // 正整数
private String result = "" ;
public PrintPrime() // 构造方法
{
number = getIntegerNumber( " 输入整数 n" , 0); // 要求是 >=0 的整数
if ( number < 0)
{
return ; // 出现错误,程序结束
}
else
// 如果大于等于 2,开始用循环计算结果
{
for ( int i = 2; i <= number ; i++) // 计算素数和
{
if (isPrimeNumber(i))
result += i + " " ;
}
}
// 显示最后的和
JOptionPane. showMessageDialog ( null , number + " 之前所有素数为: n “"
+ result + " ”", " 显示结果 " ,
JOptionPane. INFORMATION_MESSAGE );
}
/**
* 通过图形界面,得到符合规则的正整数的方法
* @param message - 在弹出的对话框中,显示提示信息
* @param min - 要求此数必须大于等于 min
* @return - 返回符合规则的整数
*/
public int getIntegerNumber(String message, int min)
{
String str = JOptionPane. showInputDialog ( null , message, " 提示信
息" ,
JOptionPane. INFORMATION_MESSAGE );
int number = -1;
try
{
number = Integer. parseInt (str); // 得到输入的正整数
}
catch ( Exception e )
{
JOptionPane. showMessageDialog ( null , " 输入非数字字符 \n 程序结束
" , " 错误警告 " , JOptionPane. ERROR_MESSAGE);
return -1; // 输入的不是数字字符,程序结束
}
if (number < min)
{
JOptionPane. showMessageDialog ( null , " 输入的数不符合规则,不是正
整数 \n 程序结束 " , " 错误警告 " ,
JOptionPane. ERROR_MESSAGE);
return -1; // 输入的数不是大于 2 的正整数时候,程序结束
}
else
return number;
}
/**
* 判断是否是素数的方法
* @param n - 需要判断的数
* @return - 是素数返回 true ,否则返回 false
*/
public boolean isPrimeNumber( int n)
{
for ( int i = 2; i < n; i++)
{
if (n % i == 0)
return false ;
}
return true ;
}
/** main 方法 */
public static void main(String[] args)
{
new PrintPrime();
}
}
3 类的继承定义,包括几何形状类 Shape、圆形类 Circle. 、矩形类 Rectangle
/**
* 几何图形类,抽象类
*/
abstract class Shape
{
public float area()
{
return 0.0f;
}
}
/**
* 圆形类
*/
class Circle extends Shape
{
private float R;
public Circle( float r)
{
R = r;
}
public float area()
{
return ( float ) (Math. PI * R * R);
}
}
/**
* 矩形类
*/
class Rectangle extends Shape
{
private float w, h;
public Rectangle( float w, float h)
{
this . w = w;
this . h = h;
}
public float area()
{
return w * h;
}
}
public class Work11_3
{
public static void main(String args[])
{
Circle c;
Rectangle r;
c = new Circle(2.0f);
r = new Rectangle(3.0f, 5.0f);
System. out .println( " 圆面积 " + returnArea (c));
System. out .println( " 长方形面积 " + returnArea (r));
}
static float returnArea(Shape s)
{
return s.area();
}
}
4 数组排序程序
源文件: Work11_4.java
import javax.swing.*;
import java.util.*;
/**
* 4 数组排序程序 . <BR>
* 输入整数序列 , 对输入的整数进行排序 , 输出结果 . <BR>
* @author 黎明你好
*/
public class Work11_4
{
public static final int RISE = 0;
public static final int LOWER = 1;
public static void main(String[] args)
{
String str = JOptionPane. showInputDialog ( " 请输入字符串: " );
StringTokenizer token = new StringTokenizer(str, ",.;: " );
int mode = Work11_4. RISE ; // 排列模式,默认为升序排列
int count = token.countTokens(); // 输入的整数的个数
int array[] = new int [count];
int index = 0;
while (token.hasMoreTokens())
{
try
{
array[index] = Integer. parseInt (token.nextToken());
index++;
}
catch ( Exception e )
{
JOptionPane. showMessageDialog ( null , " 输入非法字符 " , " 错误警
告" , JOptionPane. ERROR_MESSAGE);
return ; // 输入非法字符时候,直接结束程序
}
}
sort (array, mode); // 按 mode 模式,进行排序
String result = new String();
String modeString = new String();
if (mode == Work11_4. RISE )
modeString = " 升序排列结果为: " ;
if (mode == Work11_4. LOWER)
modeString = " 降序排列结果为: " ;
for ( int i = 0; i < array. length ; i++)
{
result = result + array[i] + " ," ;
}
if (result != null )
JOptionPane
. showMessageDialog ( null , result, modeString,
JOptionPane. INFORMATION_MESSAGE );
}
/**
* 给数组排序的方法
* @param array - 需要排序的数组
* @param mode - 排序的模式,可以为 RISE ,LOWER
*/
public static void sort( int array[], int mode)
{
剩余20页未读,继续阅读
资源评论
wxj15659998286
- 粉丝: 1
- 资源: 10万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功