JavaEE实战班第八天
今天修復了昨天的bug,因為大小于符號寫反導致其篩選功能從最一開始就失效,經改正過后功能正常。
今天完成五個作業
1.
public class work02 {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);
?? ??? ?System.out.println("請輸入十個整數:");
?? ??? ?int[] nums = new int[10];
?? ??? ?for (int i=0;i<nums.length;i++) {
?? ??? ??? ?nums[i] = input.nextInt();
?? ??? ?}
?? ??? ?System.out.println("請輸入一個要查找的數:");
?? ??? ?int find = input.nextInt();
?? ??? ?for (int i=0;i<nums.length;i++) {
?? ??? ??? ?if( find == nums[i]) {
?? ??? ??? ??? ?System.out.println("找到了:"+i);
?? ??? ??? ??? ?break;
?? ??? ??? ?}else if (i==nums.length-1) {
?? ??? ??? ??? ?System.out.println("不在數組中");
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
出現過的錯誤:沒寫break
2.
public class work03 {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);
?? ??? ?System.out.println("請輸入十個整數:");
?? ??? ?int[] nums = new int[10];
?? ??? ?for (int i=0;i<nums.length;i++) {
?? ??? ??? ?nums[i] = input.nextInt();
?? ??? ?}
?? ??? ?int max = nums[0];
?? ??? ?for (int i=0;i<nums.length;i++) {
?? ??? ??? ?max = max>nums[i]?max:nums[i];
?? ??? ?}
?? ??? ?System.out.println("最大值為"+max);
?? ??? ?int min = nums[0];
?? ??? ?for (int i=0;i<nums.length;i++) {
?? ??? ??? ?min = min<nums[i]?min:nums[i];
?? ??? ?}
?? ??? ?System.out.println("最小值為"+min);
?? ?}
}
3.
public class work04 {
?? ?public static void main(String[] args) {
?? ??? ?int[] nums = {2,7,11,15};
?? ??? ?int target = 9;
?? ??? ?boolean flag = false;
?? ??? ?for(int i=0;i<nums.length;i++) {
?? ??? ??? ?for(int j=i+1;j<nums.length;j++) {
?? ??? ??? ??? ?if(nums[i]+nums[j]==target) {
?? ??? ??? ??? ??? ?System.out.println("找到了 "+i+"-"+j);
?? ??? ??? ??? ??? ?flag = true;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(!flag)?
?? ??? ??? ?System.out.println("沒有找到");
?? ??? ?
?? ?}
}
出現過的錯誤:在復制的時候把i++復制過來沒改成j++,導致數組下標越界。
4.
public class work05 {
?? ?public static void main(String[] args) {
?? ??? ?int[]nums = {1,3,9,5,6,7,15,4,8};
?? ??? ?int temp;
?? ??? ?for(int i=0;i<nums.length-1;i++) {
?? ??? ??? ?for(int j=0;j<nums.length-i-1;j++) {
?? ??? ??? ??? ?if(nums[i]>nums[j+i]) {
?? ??? ??? ??? ??? ?temp=nums[j];
?? ??? ??? ??? ??? ?nums[j]=nums[j+1];
?? ??? ??? ??? ??? ?nums[j+1]=temp;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?
?? ??? ??? ?}
?? ??? ?}
?? ??? ?int s = 6;
?? ??? ?int maxi = nums.length-1;
?? ??? ?int mini = 0;
?? ??? ?int zhongjian = (maxi + mini)/2;
?? ??? ?while(true) {
?? ??? ??? ?if(nums[zhongjian]>s) {
?? ??? ??? ??? ?maxi = zhongjian-1;
?? ??? ??? ?}else if(nums[zhongjian]>s) {
?? ??? ??? ??? ?mini= zhongjian+1;
?? ??? ??? ?}else {
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?if(mini>maxi) {
?? ??? ??? ??? ?zhongjian=-1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?System.out.println("位置"+zhongjian);
?? ?}
}
5.
public class work06 {
?? ?public static void main(String[] args) {
?? ??? ?int[]nums = {0,1,0,3,12};
?? ??? ?int index1 = 0;
?? ??? ?int index2 = 0;
?? ??? ?while(index2<nums.length) {
?? ??? ??? ?if(nums[index2]!=0) {
?? ??? ??? ??? ?nums[index1]=nums[index2];
?? ??? ??? ??? ?index1++;
?? ??? ??? ??? ?index2++;
?? ??? ??? ?}else {
?? ??? ??? ??? ?index2++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?for (int i=index1;i<nums.length;i++) {
?? ??? ??? ?nums[i]=0;
?? ??? ?}
?? ??? ?for (int i=0;i<nums.length;i++) {
?? ??? ??? ?System.out.println(nums[i]);
?? ??? ?}
?? ?}
}
總結
以上是生活随笔為你收集整理的JavaEE实战班第八天的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享42个精美的免费PSD素材
- 下一篇: [文摘20080428]无线局域网的相关