如何编写C语言程序,使用For循环和While循环打印1到100或最小值到最大值或范围内的素数,并计算它们的和。
C语言使用While循环打印1到100之间的素数程序
在这个返回1到100之间素数的程序中,我们使用了嵌套的while循环和多个if语句来获得输出。
如果您不理解While循环,请参考WHILE循环
#include <stdio.h>
int main()
{
int i, a = 1, count;
while(a <= 100)
{
count = 0;
i = 2;
while(i <= a/2)
{
if(a%i == 0)
{
count++;
break;
}
i++;
}
if(count == 0 && a != 1 )
{
printf(" %d ", a);
}
a++;
}
return 0;
}
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
这与上面的程序相同,但我们允许用户选择要打印的最小值和最大值。
#include <stdio.h>
int main()
{
int i, Number, count, Minimum, Maximum;
printf("\n Please Enter the Minimum & Maximum Values\n");
scanf("%d %d", &Minimum, &Maximum);
Number = Minimum;
printf("Prime Numbers Between %d and %d are:\n", Minimum, Maximum);
while(Number <= Maximum)
{
count = 0;
i = 2;
while(i <= Number/2)
{
if(Number%i == 0)
{
count++;
break;
}
i++;
}
if(count == 0 && Number != 1 )
{
printf(" %d ", Number);
}
Number++;
}
return 0;
}

C语言使用For循环打印1到100之间的素数程序
在这个程序中,第一个For循环将确保值在它们之间。
#include <stdio.h>
int main()
{
int i, N, count;
for(N = 1; N <= 100; N++)
{
count = 0;
for (i = 2; i <= N/2; i++)
{
if(N%i == 0)
{
count++;
break;
}
}
if(count == 0 && N != 1 )
{
printf(" %d ", N);
}
}
return 0;
}
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
提示:我们已经在C语言的判断给定数字是否为素数文章中解释了逻辑。
您可以允许用户决定最小值和最大值,而不是打印固定值。此程序允许用户输入最小值和最大值。
接下来,此程序使用For循环打印最小值和最大值之间的素数。
#include <stdio.h>
int main()
{
int i, val, count, Minimum, Maximum;
printf("\n Please Enter the Minimum & Maximum Values\n");
scanf("%d %d", &Minimum, &Maximum);
printf("Between %d and %d are:\n", Minimum, Maximum);
for(val = Minimum; val <= Maximum; val++)
{
count = 0;
for (i = 2; i <= val/2; i++)
{
if(val%i == 0)
{
count++;
break;
}
}
if(count == 0 && val != 1 )
{
printf(" %d ", val);
}
}
return 0;
}
Please Enter the Minimum & Maximum Values
20
150
Between 20 and 150 are:
23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149
使用for循环计算1到100之间素数的和
此程序使用for循环查找1到100之间的素数,并将它们相加以计算总和。
#include <stdio.h>
int main()
{
int i, Num, count, Sum = 0;
for(Num = 1; Num <= 100; Num++)
{
count = 0;
for (i = 2; i <= Num/2; i++)
{
if(Num%i == 0)
{
count++;
break;
}
}
if(count == 0 && Num != 1 )
{
Sum = Sum + Num;
}
}
printf(" Sum between 1 to 100 = %d", Sum);
return 0;
}
Sum between 1 to 100 = 1060
您可以允许用户决定最小值和最大值,而不是先将1到100相加。此代码允许用户输入最小值和最大值。接下来,此C程序使用For循环查找最小值和最大值之间的素数的总和。
#include <stdio.h>
int main()
{
int i, Num, count, Sum = 0, Minimum, Maximum;
printf("\n Please Enter the Minimum & Maximum Values\n");
scanf("%d %d", &Minimum, &Maximum);
for(Num = Minimum; Num <= Maximum; Num++)
{
count = 0;
for (i = 2; i <= Num/2; i++)
{
if(Num%i == 0)
{
count++;
break;
}
}
if(count == 0 && Num != 1 )
{
Sum = Sum + Num;
}
}
printf(" Sum between %d and %d = %d", Minimum, Maximum, Sum);
return 0;
}
Please Enter the Minimum & Maximum Values
100
200
Sum between 100 and 200 = 3167
评论已关闭。