Code không ra kết quả và lệnh break trong c

Mn cho e hỏi 2 câu
Câu 1 Tại sao bài này code chi ra dòng "n so nguyen to dau tien la : " mà không có kết quả
Câu 2 lệnh break trong bài này nếu không xài thì vòng lặp for vẫn tự thoát khi giá trị i đi quá giá trị căn của j đúng không ?
Đề bài liệt kê n số nguyên tố đầu tiên,bài làm:

void ntd(int n) {// liet ke n so nguyen to dau tien
	int count = 1, j = 2;
		while (count <= n) {
			int h = 0;
			for (int i = 2; i <= sqrt(j); i++) {
				if (n / i == 0)h = 1;
				break;
			}
			if (h = 0)printf("%d", j);
			count++; 
			j++; //xet tung gia tri nguyen duong 
		}
}

int main() {
	int n;
	scanf_s("%d", &n);
	printf("%d so nguyen to dau tien la : ", n);
	ntd(n);
	system("pause");
	return 0;
}

Câu 1: chỗ này if (n / i == 0)h = 1; nên là if (j % i) == 0 h =1;
Câu 2: Đúng

5 Likes

A post was merged into an existing topic: Topic lưu trữ các post off-topic - version 3

cảm ơn a, lỗi vớ vẩn quá ngồi cả tiếng để xem lại mà ko biết @@

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?