1.编写程序:输出200以内所有奇数,并要求每行输出10个数。
public class OddNumber
{
public static void main(String[] args){
int g=0;
for (int i=1;i<=200;i+=2){
System.out.print(i+"\t");g++;
if (g%10==0)
{
System.out.println();
}
}
}
}
2.输出下三角形形状的九九乘法表。
public class Experiment_1_Multiplication
{
public static void main(String[] args)
{
int t=1;
System.out.println("九九成法表为:");
for(int i=1;i<10;i++,t++){
for(int j=1;j<=i;j++){
int product=i*j;
System.out.print(j+"*"+i+"="+product+"\t");
if(j==t){ //如果J自增后与t相等,则换行
System.out.println();}
}
}
}
}
3.输入字母打印正三角形。
import java.util.*;
public class Experiment_1_Triangle
{
public static void main(String[] args)
{
System.out.println("请输入三角形的行数:");
Scanner input = new Scanner(System.in);
int n = input.nextInt();
for (int i=1;i<=n;i++) //控制行
{
for (int j=n-i;j>=0;j--) //控制空格的数量,每行空格的数量等于行数减去此行的字母数字
{
System.out.print(" ");
}
for (int k=1;k<=2*i-1;k++) //控制字母的数量
{
System.out.print((char)('A'+i-1)); //输出字母
//System.out.print((char)(64+i)); //与上行功能相同
}
System.out.println();
}
}
}
4.输入一个五位整数求各位之和。
import java.util.Scanner;
public class AddDigit
{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("请输入一个五位整数:");
int i = in.nextInt();
int sum = 0;
if (i < 10000 || i > 99999) {
System.out.println("输入有误!");
} else {
for (int j = 0; j < 5 ; j++ ) {
sum += i % 10;
i = i / 10;
}
System.out.println("该五位整数各位数上之和为sum=" + sum );
}
System.out.print("请输入一个五位整数:");
int n = in.nextInt();
int m = 0;
for (int k = 10000 ; k > 0 ; k /= 10 ) {
m += n / k ;
n %= k;
}
System.out.println("该五位整数各位数上之和为:" + m);
System.out.print("请输入一个整数:");
int j = in.nextInt();
int s = 0;
while(j != 0) {
s += j % 10;
j = j / 10;
}
System.out.println("该整数各位数上之和为s=" + s );
}
}
5.猜数游戏。
import java.lang.Math;
import java.util.Scanner;
//import java.util.Random;
public class Experiment_1_GuessNumber
{
public static void main(String[] args)
{
//方法一:
int x=1+(int)(Math.random()*99); //产生一个1-100之间的随机整数,Math.random() 产生一个[0,1)之间的随机数
//方法二:
/*Random rand = new Random();
int x = rand.nextInt(100);*/ //产生一个100以内的整数
System.out.println("请输入一个1-100之间的整数:");
Scanner input1 = new Scanner(System.in);
int n=input1.nextInt();
int count=0;
if (1<=n&&n<=100)
{
do
{
if (n>x)
{
System.out.println("不正确!您输入的数字过大!");
}
else
{
System.out.println("不正确!您输入的数字过小!");
}
System.out.println("请重新输入一个整数:");
Scanner input2 = new Scanner(System.in);
int m=input2.nextInt();
count++;
n=m;
}
while (n!=x);
System.out.println("正确!"+count+"次");
}
else
System.out.println("您输入的数字不正确!");
}
}
6.冒泡排序。
a.) 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
b.) 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
c.) 针对所有的元素重复以上的步骤,除了最后一个。
d.) 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
import java.util.*;
public class Experiment_1_BubbleSort
{
public static void main(String[] args)
{
int a[]={3,6,9,8,5,2,1,4,7};
int size=a.length;
int temp=0;
System.out.println("排序前的数组为:"+Arrays.toString(a));
for(int i=0;i<size-1;i++){
for(int j=0;j<size-1-i;j++){
if(a[j]>a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
System.out.println("冒泡排序后的数组为:"+Arrays.toString(a));
}
}
7.选择排序。
a.) 在未排序序列中找到最小元素,存放到排序序列的起始位置。
b.) 再从剩余未排序元素中继续寻找最小元素,然后放到序列的第二位 。
c.) 以此类推,直到所有元素均排序完毕。
import java.util.*;
public class Experiment_1_SimpleSelectSort
{
public static void main(String[] args)
{
int a[]={3,6,9,8,5,2,1,4,7};
int temp=0; //定义一个中间变量
int size=a.length;
System.out.println("排序前的数组为:"+Arrays.toString(a));
for(int i=0;i<size-1;i++){
int k=i; //记录下当前最小元素的位置
for(int j=i+1;j<size;j++){ //向右查找更小元素的位置
if(a[j]<a[k]) // 修改当前最小元素的位置
{
k=j;
}
if(k!=i) //如果第i次选到的最小元素位置k不等于i,则将第i,k个元素交换
{
temp = a[i];
a[i] = a[k];
a[k] = temp;
}
}
}
System.out.println("简单选择排序后的数组为:");
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
//System.out.println("简单选择排序后的数组为:"+Arrays.toString(a));
}
}