Trong ví dụ này, bạn sẽ học cách in tất cả các số nguyên tố giữa hai số (do người dùng nhập vào).
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình C sau:
- C cho Vòng lặp
- C nghỉ và tiếp tục
- Chức năng C
- C Các chức năng do người dùng định nghĩa
Để tìm tất cả các số nguyên tố giữa hai số nguyên, checkPrimeNumber()
được tạo. Hàm này kiểm tra xem một số có phải là số nguyên tố hay không.
Số nguyên tố giữa hai số nguyên
#include int checkPrimeNumber(int n); int main() ( int n1, n2, i, flag; printf("Enter two positive integers: "); scanf("%d %d", &n1, &n2); printf("Prime numbers between %d and %d are: ", n1, n2); for (i = n1 + 1; i < n2; ++i) ( // flag will be equal to 1 if i is prime flag = checkPrimeNumber(i); if (flag == 1) printf("%d ", i); ) return 0; ) // user-defined function to check prime number int checkPrimeNumber(int n) ( int j, flag = 1; for (j = 2; j <= n / 2; ++j) ( if (n % j == 0) ( flag = 0; break; ) ) return flag; )
Đầu ra
Nhập hai số nguyên dương: 12 30 Các số nguyên tố từ 12 đến 30 là: 13 17 19 23 29
Nếu người dùng nhập số lớn hơn trước, chương trình này sẽ không hoạt động như dự kiến. Để giải quyết vấn đề này, bạn cần phải hoán đổi các số trước.