100分奉上!!小弟有点Java程序的问题!

2025-02-26 02:59:36
推荐回答(4个)
回答1:

1,冒泡排序
1. /**
2. * JAVA排序算法实现代码-冒泡(Bubble Sort)排序。
3. *
4. *
5. *
6. */
7. public class Test {
8. public static void main(String[] args) {
9. int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 };
10.
11. System.out.print("排序前: ");
12.
13. for (int i = 0; i < a.length; i++)
14. System.out.printf("%3s", a[i]);
15.
16. System.out.println();
17.
18. Test test = new Test();
19. test.bubbleSort(a);
20.
21. System.out.print("排序后: ");
22.
23. for (int i = 0; i < a.length; i++)
24. System.out.printf("%3s", a[i]);
25.
26. System.out.println();
27. }
28.
29. public void bubbleSort(int[] a) {
30. int len = a.length;
31.
32. System.out.println("数组大小是:" + len);
33.
34. boolean change = false;
35. int temp;
36. int count = 0;
37.
38. for (int i = len; i > 1; i--) {
39. for (int j = 0; j < i - 1; j++) {
40. if (a[j + 1] < a[j]) {
41. temp = a[j + 1];
42. a[j + 1] = a[j];
43. a[j] = temp;
44. change = true;
45. count++;
46. }
47.
48. }
49. if (change) {
50. System.out.print("第" + count + "趟交换: ");
51. for (int k = 0; k < len; k++)
52. System.out.print(a[k] + " ");
53.
54. System.out.println();
55. }
56. }
57. }
58. }

2,选择排序
1. /**
2. * JAVA排序算法实现代码-选择(Select)式排序。
3. *
4. *
5. *
6. */
7. public class Test {
8. public static int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 }; // 预设数据数组
9.
10. public static void main(String args[]) {
11. int i; // 循环计数变量
12. int Index = a.length;// 数据索引变量
13.
14. System.out.print("排序前: ");
15. for (i = 0; i < Index - 1; i++)
16. System.out.printf("%3s", a[i]);
17. System.out.println("");
18.
19. SelectSort(Index - 1); // 选择排序
20. // 排序后结果
21. System.out.print("排序后: ");
22. for (i = 0; i < Index - 1; i++)
23. System.out.printf("%3s", a[i]);
24. System.out.println("");
25. }
26.
27. public static void SelectSort(int Index) {
28. int i, j, k; // 循环计数变量
29. int MinValue; // 最小值变量
30. int IndexMin; // 最小值索引变量
31. int Temp; // 暂存变量
32.
33. for (i = 0; i < Index - 1; i++) {
34. MinValue = 32767; // 目前最小数值
35. IndexMin = 0; // 储存最小数值的索引值
36. for (j = i; j < Index; j++) {
37. if (a[j] < MinValue) // 找到最小值
38. {
39. MinValue = a[j]; // 储存最小值
40. IndexMin = j;
41. }
42. Temp = a[i]; // 交换两数值
43. a[i] = a[IndexMin];
44. a[IndexMin] = Temp;
45. }
46.
47. System.out.print("排序中: ");
48. for (k = 0; k < Index; k++)
49. System.out.printf("%3s", a[k]);
50. System.out.println("");
51. }
52. }
53. }

3,交换排序
冒泡排序就是一种交换排序啊
这里给你一个插入排序吧!
1. /**
2. * JAVA排序算法实现代码-插入排序。
3. *
4. *
5. *
6. */
7. public class Test {
8. public static int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 }; // 预设数据数组
9.
10. public static void main(String args[]) {
11. int i; // 循环计数变量
12. int Index = a.length;// 数据索引变量
13.
14. System.out.print("排序前: ");
15. for (i = 0; i < Index - 1; i++)
16. System.out.print(" " + a[i] + " ");
17. System.out.println("");
18.
19. InsertSort(Index - 1); // 选择排序
20. // 排序后结果
21. System.out.print("排序后: ");
22. for (i = 0; i < Index - 1; i++)
23. System.out.print(" " + a[i] + " ");
24. System.out.println("");
25. }
26.
27. public static void InsertSort(int Index) {
28. int i, j, k; // 循环计数变量
29. int InsertNode; // 欲插入数据变量
30.
31. for (i = 1; i < Index; i++) // 依序插入数值
32. {
33. InsertNode = a[i]; // 设定欲插入的数值
34. j = i - 1; // 欲插入数组的开始位置
35. // 找适当的插入位置
36. while (j >= 0 && InsertNode < a[j]) {
37. a[j + 1] = a[j];
38. j--;
39. }
40. a[j + 1] = InsertNode; // 将数值插入
41. // 打印目前排序结果
42. System.out.print("排序中: ");
43. for (k = 0; k < Index; k++)
44. System.out.print(" " + a[k] + " ");
45. System.out.println("");
46. }
47. }
48. }

4,打印九九表:
public class Jiujiu {
public static void main(String args[]) {
Jiujiu jj = new Jiujiu();
jj.test();
}
public void test() {
for (int i = 1; i <= 9; i++) {
System.out.println("");
for (int j = 1; j <= i; j++) {
System.out.print(i + "*" + j + "=" + i * j + "; ");
}
}
}
}
5,打印金字塔
public class Pyramid {

public static void main(String[] args){

for(int i=0;i<10;i++){
for(int j=0;j<2*i+1;j++){
if(j<=i){
System.out.print(" "+(int)Math.pow(2, j));
}else{
System.out.print(" "+(int)Math.pow(2, 2*i-j));
}
}
System.out.println();
}
}
}

6,打印杨辉三角
public class YangHui {
public static void main(String args[]) {
final int ROW = 10;
int a[][] = new int[ROW + 1][];
for (int i = 0; i <= ROW; i++) {
a[i] = new int[i + 1]; // 指定每行的列数

}
yanghui(a, ROW);
}

static void yanghui(int a[][], int ROW) {

for (int i = 0; i <= ROW; i++)
for (int j = 0; j <= a[i].length - 1; j++) {
if (i == 0 || j == 0 || j == a[i].length - 1)
a[i][j] = 1;
else
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];

}
for (int i = 0; i <= ROW; i++) {
for (int j = 0; j <= a[i].length - 1; j++)
System.out.print(a[i][j] + "\t");
System.out.println();
}
}
}

大题不明白你啥意思啊

回答2:

杨辉③捔

main()
{int i,j;
int a[10][10];
printf("\n");
for(i=0;i<10;i++)
{a[i][0]=1;
a[i][i]=1;}
for(i=2;i<10;i++)
for(j=1;j a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++)
{for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}
}

回答3:

写的C++
九九乘法表
#include
main()
{
int i,j,k;
for (i=1;i<10;i++) {
{printf("\n");}
for(j=1;j<=i;j++)
{
k=i*j;
printf("%d*%d=%d ",i,j,k);
}
printf("\n");
}
system("pause");
return 0;
}
等腰三角形(金字塔)
#include
int main()
{
int i,j,k;
for(i=1;i<5;i++)
{
{if(i==1)
printf(" ");}
for(j=1;j {printf("**");}
{printf("*\n");}
for(k=1;k<=3-i;k++)
{printf(" ");}
}
system("pause");
return 0;
}
直角三角形
#include
int main()
{
int i,k;
for(i=1;i<=6;i++)
{{printf(" ");}
for(k=1;k {
printf("*");
}
printf("*\n");
}
system("pause");
return 0;
}
平行四边形
#include
int main(){
int i,k;
for(i=1;i<5;i++)
{
for(k=1;k {printf(" ");}
printf("*****\n");
}
system("pause");
return 0;

}
JAVA
菱形
public class Ling{
public static void main(String [] args){
for(int i=1;i<5;i++){
for(int k=4;k>i;k--){
System.out.print(" ");
}
for(int j=1;j<=2*i-1;j++){
System.out.print("*");
}
System.out.println();
}

for(int i=1;i<4;i++){
for(int k=1;k<=i;k++){
System.out.print(" ");
}
for(int j=5;j>=2*i-1;j--){
System.out.print("*");
}
System.out.println();
}
}
}
空心菱形
public class LingXing{
public static void main(String [] args){
for(int i=1;i<5;i++){ // i表示行数.上层有四行
for(int k=4;k>i;k--){ //k表示空格 .第一行有三个空格
System.out.print(" ");
}
for(int j=1;j<=2*i-1;j++){ //j表示* 第一行有一个*
if(j==2*i-1||j==1){
System.out.print("*");
}
else{
System.out.print(" ");
}

}
System.out.println();
}

for(int i=1;i<4;i++){
for(int k=1;k<=i;k++){
System.out.print(" ");
}
for(int j=5;j>=2*i-1;j--){
if(j==2*i-1||j==5){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
冒泡排序 排列一个有5个int型元素的数组 C++
#define N 5
int maopao(int a[],int n){
int i,j,temp;
for(i=0;i for(j=0;j if(a[j]>a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
}
void print(int a[],int n){
int i;
printf("按从小到大顺序输出:\n");
for(i=0;i printf("%5d",a[i]);
printf("\n");
}
void scan(int a[],int n){
int i;
printf("请输入%d个数:\n",n);
for(i=0;i scanf("%d",&a[i]);
}
main(){
int a[N];
scan(a,N);
maopao(a,N);
print(a,N);
system("pause");
return 0;
}

回答4:

main()
{int i,j;
int a[10][10];
printf("\n");
for(i=0;i<10;i++)
{a[i][0]=1;
a[i][i]=1;}
for(i=2;i<10;i++)
for(j=1;ja[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++)
{for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}
}
这是JAVA代码吗?