亲,你写的排序有问题差蔽,举个例子:对4,3,1,5进行排序,用你的排序方法就是:先是把4赋给imin,接着扫描后面的数字,把遇到的第一个灶庆盯比4小的也就是3与之换位,但这并不是最小的(最小的是1),然后接着就开始从第二位做上述相同的 *** 作,简言之,就是并没有把最小的放在了前面。我叙述的可能有些乱,不知道你能不能看懂- -。
我贴上我写好的,排序用的是简单的冒泡排序法
欢迎追问 ,希望能帮到你
import java.util.*public class ArraySort {
public static final int N = 3
void sort (int[][] A){
int row, col, x
for(row=0 row<N row++) {
for(int i=0 i<N i++) {
for(col=0 col<N-1 col++) {
if(A[row][col] > A[row][col+1]) {
x = A[row][col]
A[row][col] = A[row][col+1]
A[row][col+1] = x
}
}
}
}
}
public static void main(String[] args) {
ArraySort as = new ArraySort()
Scanner reader = new Scanner(System.in)
int[][] A = new int[N][N]
int i, j
System.out.println("请输入" 隐和+ N*N + "个整数:")
for (i=0i<Ni++){
for(j=0j<Nj++) {
A[i][j] = reader.nextInt()
}
}
System.out.println("对每行排序前的数组为:")
for (i=0i<Ni++){
for(j=0j<Nj++) {
System.out.print(A[i][j] + " ")
}
System.out.println()
}
as.sort(A)
System.out.println("对每行排序后的数组为:")
for (i=0i<Ni++){
for(j=0j<Nj++){
System.out.print(A[i][j] + " ")
}
System.out.println()
}
}
}
package disimport java.io.*
import java.math.*
public class dis
{
public static void main(String [] s) throws Exception
{
Float a,b,c
double x2
double x1
System.out.println("请输入a, b, c的值")
BufferedReader bReader=new BufferedReader(new InputStreamReader(System.in))
a=Float.parseFloat(bReader.readLine())
b=Float.parseFloat(bReader.readLine())
c=Float.parseFloat(bReader.readLine())
if (b*b - 4*a*c <= 0)
System.out.println("输入的系数不对,b2-4ac不大于0!程序退出!")
else
{
x1 = (-b + Math.sqrt(b*b - 4*a*c))/2*a
x2 = (-b - Math.sqrt(b*b - 4*a*c))/激轮游2*a
System.out.println("明销x1 = "桐腊+ x1)
System.out.println("x2 = "+x2)
}
return
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)