30/09/2018, 21:22
Xin các chữa lỗi chương trình: Xây dựng class bai1th3 gồm hai member data là: Name và Salary. Class bai1th3 cung cấp các member function cho phép nhập và hiển thị hai member data trên
E đang tập viết chương trình: Xây dựng class bai1th3 gồm hai member data là: Name và Salary. Class bai1th3 cung cấp các member function cho phép nhập và hiển thị hai member data trên.
E viết chương trình nhưng sau khi nhập số lượng cho bai1th3 thì chương trình lại báo lỗi.
Các anh/chị cho e hỏi cần sửa lỗi thế nào?
import java.util.Scanner;
public class bai1th3 {
private String name;
private float salary;
private static int n;
static Scanner sc=new Scanner(System.in);
public static void main(String[] args) {
bai1th3[] A=new bai1th3[100];
System.out.println("nhap n: ");
n=sc.nextInt();
for(int i=1;i<=n;i++){
A[i].input();
}
for(int i=1;i<=n;i++){
A[i].output();
}
}
public void input(){
System.out.println("nhap ten: ");
name= sc.nextLine();
System.out.println("nhap luong: ");
salary=sc.nextFloat();
}
public void output(){
System.out.print(name+" "+salary+"
");
}
}
Bài liên quan
Lỗi ở đây chắc là do bạn mới cấp bộ nhớ cho mảng nhưng mỗi phần tử
A[i]=null
vì thế trước câu nhập, cần tạo A[i]=new bt…()Cảm ơn bạn,mình sửa được rồi
Bạn ơi cho mình hỏi tại sao sau khi chạy xong thì chương trình của mình chỉ in ra salary mà k hiện tên vậy?
lạ nhỉ, trong hàm out của bạn có in ra tên mà, nếu không hiện tức là tên vẫn mang giá trị rỗng, có thể là do hiện tượng trôi dòng lệnh hay gì đó…
Nextline ngay sau khi Next các giá trị khác mà không reset sẽ nhận vào là dấu enter luôn, nên sẽ k thấy gì