求三道编程题
发布网友
发布时间:2023-06-29 17:00
我来回答
共3个回答
热心网友
时间:2023-12-06 14:01
应该是for while do-while吧
100以内的素数
第一种
#include <stdio.h>
#include <math.h>
int main()
{
int i; /*外循环*/
int j; /*内循环*/
int flag; /*素数标志,flag为1则此数为素数*/
flag = 0;
for(i = 2; i <= 100;i++;)
{
j = 2;
flag = 1; /*假设此数为素数*/
while(j <= (int) sqrt(float(i)))
{
if(0 == (i %j))
flag = 0; /*根据第三种算法可知次数不为素数*/
j ++;
}
if(flag)
printf("%d\t",i);
}
printf("\n");
return 0;
}
第二种
#include <stdio.h>
#include <math.h>
int main()
{
int i; /*外循环*/
int j; /*内循环*/
int flag; /*素数标志,flag为1则此数为素数*/
flag = 0;
i = 2;
while( i <= 100)
{
j = 2;
flag = 1; /*假设此数为素数*/
while(j <= (int) sqrt(float(i)))
{
if(0 == (i %j))
flag = 0; /*根据第三种算法可知次数不为素数*/
j ++;
}
if(flag)
printf("%d\t",i);
i++;
}
printf("\n");
return 0;
}
第三种
#include <stdio.h>
#include <math.h>
int main()
{
int i; /*外循环*/
int j; /*内循环*/
int flag; /*素数标志,flag为1则此数为素数*/
flag = 0;
i = 2;
do
{
j = 2;
flag = 1; /*假设此数为素数*/
while(j <= (int) sqrt(float(i)))
{
if(0 == (i %j))
flag = 0; /*根据第三种算法可知次数不为素数*/
j ++;
}
if(flag)
printf("%d\t",i);
i++;
}while( i <= 100);
printf("\n");
return 0;
}
热心网友
时间:2023-12-06 14:02
waile?
unile?
这些是什么
热心网友
时间:2023-12-06 14:02
用C语言?