冬休みの後、この質問をもう一度見たとき、素数を決めるのを忘れていました...
- コード表示
- コード分析
コード表示:
#include <stdio.h>
int main(void)
{
int m, cnt = 0, i, j;
int array[101];
printf("Input:\nPlease input a number: \n");
scanf("%d", &m);
for (i = 2; i < m; i++)//该循环体判定范围内的所有数字是否为素数
{
for (j = 2; j < i; j++)//该数是否为素数
{
if (i % j == 0)//从2开始到该数字,这个范围内,该数字能被整除,则不为素数
{
break;
}
}
if (j == i)//都未被整除,则该数为素数,将其赋值给数组
{
array[cnt++] = i;//同时计算个数,是否越界。
}
if (cnt > 100)//越界,跳出循环
{
break;
}
}
printf("Output:\n");//以下情况判定
if (m <= 0)
{
printf("error!\n");
}
else if (cnt > 100)
{
printf("overflow!\n");
}
else
{
printf("n=%d\n", cnt);
for (i = 0; i < cnt; i++)
{
printf("%5d", array[i]);//输出以及换行。
if ((i + 1) % 15 == 0)
{
printf("\n");
}
}
printf("\n");
}
return 0;
}
コード分析:
分析の一部はコード内にあり、コード
作成プロセス全体は素数判定と割り当て、およびループマッチング条件に分けられます。
次に、規則に従って、出力の条件文に協力します。
非常に単純ですが、完全ではありません。