第7章实验任务4:
任意输入一个整数m,若m不是素数,则输出其所有不包括1和自身的因子;否则输出“没有因子,是素数”的相关提示信息。
输入提示信息:“Please enter a number:”
输入格式:"%d"
输出格式:
有因子时:"%d\n"
无因子时:“It is a prime number.No divisor!\n”
输入为1,0,-1时:“It is not a prime number.No divisor!\n”
程序运行示例:
Please enter a number:8↙
2
4
#include<stdio.h>
int main()
{
int m, i, count = 0;
printf("Please enter a number:");
scanf("%d", &m); //在VS2019中需改为scanf_s
for (i = 2; i <= m/2; i++) // 判断条件改为i<m也可以,但是循环的时间会更长一些
{
if (m % i == 0)
{
printf("%d\n", i);
count++; //使用count记录m的除1和自身之外的因子的个数
}
}
if (count == 0) //当m是素数或者一些特殊情况时count==0
{
if (m == 0 || m == 1 || m == -1)
printf("It is not a prime number.No divisor!\n");
else
printf("It is a prime number.No divisor!\n");
}
}