在此示例中,您将学习如何打印两个数字之间的所有质数(由用户输入)。
要理解此示例,您应该了解以下C语言编程主题:
为了找到这两个整数之间的所有质数,创建了checkPrimeNumber()。这个函数检查数字是否为质数。
#include <stdio.h> int checkPrimeNumber(int n); int main() { int n1, n2, i, flag; printf("输入两个正整数: "); scanf("%d %d", &n1, &n2); printf("%d和%d之间的质数为: ", n1, n2); for (i = n1 + 1; i < n2; ++i) { // 如果i是质数,flag就等于1 flag = checkPrimeNumber(i); if (flag == 1) printf("%d ", i); } return 0; } //用户定义函数来检查质数 int checkPrimeNumber(int n) { int j, flag = 1; for (j = 2; j <= n / 2; ++j) { if (n % j == 0) { flag = 0; break; } } return flag; }
输出结果
输入两个正整数: 12 30 13和30之间的质数为: 13 17 19 23 29
如果用户首先输入较大的数字,则该程序将无法正常工作。 要解决此问题,您需要先交换数字。