以相反的顺序打印从1到N的质数
输入数字n直至计算出质数并以相反顺序显示
Input : number 30Output : 29 23 19 17 13 11 7 5 3 2
算法
STARTStep 1 -> declare variables as n, I, j, flag to 0 as int
Step 2 -> input number in n
Step 3 -> Loop For from i to n and i>1 and i—
Step 3.1 ->. Inner loop for from j to i/2 and j>=1 and j—
Statement If %j==0 && j!=1
Set flag=0
Break
End IF
Else
Flag=1
End Else
Step 3.2 -> end inner Loop For
Step 4 -> statement IF to check flag=1
Print i
End IF
Step 5 -> End outer For
STOP
示例
#include <stdio.h>int main(int argc, char const *argv[]) {
int n, i, j, flag=0;
printf("Enter a number\n");
scanf("%d", &n);
for(i=n; i>1; i--) {
for (j = i/2; j >= 1; j--) {
if(i%j==0 && j!=1) {
flag = 0;
break;
}
else
flag = 1;
}
if(flag == 1) {
printf("%d ", i);
}
}
return 0;
}
输出结果
如果我们运行上面的程序,那么它将生成以下输出
Enter a number30
29 23 19 17 13 11 7 5 3 2
以上是 以相反的顺序打印从1到N的质数 的全部内容, 来源链接: utcz.com/z/334954.html