每日一学
一维数组课本题目实例练习
题目:输出100以内的素数
#include<stdio.h>
#include"math.h" //包含数学函数库
#define N 101 //数组元素总数
int main(void)
{
int i,j,line,a;//定义数组
for(i=2;i<N;i++) //数组元素赋值
a=i;
for(i=2;i<sqrt(N);i++)//求素数,i的范围2到10
{
for(j=i+1;j<N;j++)
{
if(a!=0&&a!=0)
if(a%a==0)
a=0;
}
}
for(i=2,line=0;i<N;i++)
{
if(a!=0)
{
printf("%5d",a);
line++;
}
if(line==10)
{
printf("\n");
line=0;
}
}
printf("\n");
return 0;
} #include <stdio.h>
#include <math.h> // 包含数学函数库
#define N 101 // 数组元素总数
int main(void)
{
int i, j, is_prime;
printf("100以内的素数有:\n");
for (i = 2; i < N; i++) {
is_prime = 1; // 假设当前数是素数
for (j = 2; j <= sqrt(i); j++) {
if (i % j == 0) {
is_prime = 0; // 如果i能被j整除,则i不是素数
break;
}
}
if (is_prime) {
printf("%d ", i); // 输出素数
}
}
printf("\n");
return 0;
}
以上代码通过for循环检查100以内的所有数,使用一个内部循环检查每个数是否为素数。如果一个数不能被小于等于其平方根的任何数整除,则认为它是素数。代码中主要用到了 `sqrt()` 函数来计算平方根,并进行了整除检查。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]