第一章Java语言基础
指出Java语言的主要特点和ava程序的执行过程。
答:强类型。
编译和解释。
自动无用内存回收功能。
面向对象。
与平台无关。
安全性。
分布式计算。
多线程。
2.说出开发与运行Java程序的主要步骤。
答:安装SUN的JDK,配置classpath
编写源文件。
编译。
运行。
3.如何区分应用程序和小应用程序。
答:应用程序必须在一类中定义一个main()方法,该方法代表应用程序的入口。
小应用程序不必定义main()方法,但是必须继承applet类。
4.说出Java源文件的命名规则。
答:和类命名规则一样,首字母大写。
5.选择一种上机环境,参照实例,编写一个输出“hello world!”字样的Java程序。
答:选择SUN的IDE,用UltraEdit-32编写如下:
//HelloWorld.java
/**
*<p>这是第一个程序</p>
*@author 饶林
*@see www.wddx
*/
class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
6.Java用什么字符集?共有多少个不同的字符?
答:Java语言使用Unicode字符集,共有65535个字符。
7.Java语言标识符的命名规则是什么?
答:由字母(包括英文字母、下划线、美元字符、文字字符)和数字字符组成。
限定标识符的第一个字符不能是数字。
8.Java有哪些基本的数据类型,它们的常量又是如何书写的?
答:基本的数据类型也称为原始数据类型,是系统预先规定的一些常用类型。它们是:整数类型、浮点数(实数)类型、字符(文字)类型、逻辑类型(布尔型)。
9.指出下列内容那些事Java语言的整形常量,哪些是浮点数类型常量,那些两者都不是?
1)E-4 2)A423 3)-1E-31 4)0xABCL 5).32E31 6)087 7)0x L
8)003 9)0x12.5 10)077 11)11E 12)056L 13)0. 14).0
答:整形常量:4,5,6,8,10,12
浮点型:1,3,9,13,14
两者都不是:2,7,11
第二章运算和语句
1.Java字符能参加算术运算吗?
答:能,例如char类型a自加后变b
2.占字节多的变量能直接赋给占字节少的变量吗?
答:不能,需强制类型转换。
3.试用Java语言表达式描述以下数学计算式或逻辑条件:
1)
V=(4/3)*math.PI*math.pow(r,3);
2)R=1/(1/R1+1/R2)
原式
3)y=x5+x3+6
y=pow(x,5)+pow(x,3)+6;
4)F=M1M2/R2
F=M1 *M2 /R*R
5)
Math.sin(x) / ax + s(π*x/2)>0 ? s(π*x/2) : - s(π*x/2);
6) 0 < a <10
a > 0 && a < 10
7) 条件 x=1 与 y=2 有且只有一个成立
( x == 1 && y != 2) || (x != 1 && y == 2)
4.设再求以下表达式之前,整形变量a的值是4,试指出在求表达式之后变量a,b和c的值。
1)b=a*a++;
b = 16, a = 5;
2)c = ++a+a;
c = 10, a = 5;
5.编写一个程序示意前缀++和后缀++的区别,前缀—和后缀—的区别。
答:领悟第四题完全就可以理解前缀++后缀++
-- 亦如此。
6.若一个数恰好等于它的因子之和,则这个数称为“完全数”。编写程序求1000之内的所有完全数。
解析:什么是数的因子?因子就是所有可以整除这个数的数,但是不包括这个数自身.
//HelloWorld.java
/**
*<p>这是第二个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_6{
public static void main(String[] args) {
int i,j,sum;
for(i = 1; i <= 1000; i++){
//sum归0必须在此处
sum=0;
for(j=1; j<= i/2; j++){
if((i%j)==0)
sum = sum+j;
}
if(i == sum)
System.out.print(i + " ");
}
}
}
7.编写输入正实数x,求平方不超过x的最大正整数n,并输出。
解析:
/**
*<p>这是第三个程序</p>
*@author 饶林
*@see www.wddx
*/
import java.util.*;
public class Praxis2_7
{
public static void main(String[]args)
{
Scanner consoleScanner = new Scanner( System.in );
System.out.print("请输入正实数X:" );
int x = Int();
int y=(int)(Math.sqrt(x));
System.out.println("n = "+y);
}
}
8.输入正整数n输出n行n列星号字符组成三角图案。
/**
*<p>这是第四个程序</p>
*@author 饶林
*@see www.wddx
*/
import java.util.*;
public class Praxis2_8{
public static void main(String[] args){
Scanner consoleScanner = new Scanner(System.in);
System.out.print("请输入正整数x:");
int x = Int();
for(int y=0; y< x; y++){
for(int m=x-y-1; m>0; m--){
System.out.print(" ");
}
for(int n=0; n< y+1; n++){
System.out.print("*");
}
System.out.println();
}
}
}
9.设有整形变量x和y的值分别为5和110.指出执行了下列语句后,变量x和y后的值分别是多少?
1)while(x <= y) x*=2;
X=160,y=110;
2) do {x = y/x; y= y-x;} while (y > = 1);
X=18,y=0;
10.水仙花数是一个n( >= 3)位的数,它等于每个数字的n次幂之和。例如,153是一个水仙花数,153=13+53+33,是编写一个程序,求小于999的所有水仙花数。
/**
*<p>这是第五个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_10{
public static void main(String[] args){
int x,y,z;
for(int m=100; m< 999; m++){
x = m/100;
y = (m%100)/10;
z = (m%100)%10;
if(m== x*x*x+ y*y*y + z*z*z)
System.out.print(m + " ");
}
}
}
11.编程序解百鸡问题:鸡翁一,值钱五,鸡母一,值钱三,鸡邹三,值钱一,百钱买百鸡,求鸡翁,鸡母,鸡邹各几何?
/**
*<p>这是第六个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_11
{
public static void main(String args[])
{
for(int i=0;i<=100;i++)
for(int j=0;j<=100;j++)
for(int k=0;k<=100;k+=3) //鸡雏的个数必须使3的倍数
{
if(( (5*i+3*j+k/3)==100 )&& (i+j+k==100))
System.out.println("鸡翁:"+i+"; 鸡母:"+j+"; 鸡雏:"+k);
}
}
}
12.编写程序,按下面的公式计算自然对数底e的值:
e = 1+1/1! + 1/2! + 1/3!......
/**
*<p>这是第七个程序</p>
*@author 饶林
*@see www.wddx
*/
public class Praxis2_12
{
public static void main(String args[])
{
int n=1000; //计算精度
double e=1.0;
for(int i=1;i<=n;i++)
{
e=e+1.0/Praxis2_12.factorial(i);
}
System.out.println("e = "+e);
}
static double factorial(int a) //计算阶乘的静态方法
{
double f=1.0;
for(int j=1;j<=a;j++)
f=f*j;
return f;
}
}
13.编写程序,用如下公式计算圆周率的近似值:
14.回文整数是正读反读相同的整数,编写一个程序,输入一个整数,判断是否为回文整数。
/**
*<p>这是第八个程序</p>
nextint()方法 *@author 饶林
*@see www.wddx
*/
import java.util.*;
public class Praxis2_14 //输入整数,判断是否是回文整数
{
public static void main(String args[])
{
int a[]=new int[100];
int i=0;
boolean b=true;
Scanner consoleScanner = new Scanner( System.in );
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论