以下のコードは、ユーザーからの入力を読み取って、int [1-100] が素数かどうかを確認するものです。(範囲外の場合、「完了」と出力されます。素数でない場合は、それをコンソールに出力し、割り切れる数を出力します。
現在、このプログラムは 3 と 9 を除いて 1 から 10 に対して正しく実行されています... 何か提案はありますか?
#include <stdio.h>
int main()
{
int num, i;
printf("Number [1-100]:? \n");
scanf("%d", &num);
while(num>0 && num <101)
{
if (num==1||num==2)
printf("Prime\n");
for (i=2; i<=num/2; ++i)
{
if (num%i==0)
{
printf("Non-prime,divisible by %d\n",i);
break;
}
else {
printf("Prime\n");
break;
}
}
printf("Number[1-100]:? \n");
scanf("%d",&num);
}
printf("Done\n");
}