1029 - C语言程序设计教程(第三版)课后习题8.3

1029 - C语言程序设计教程(第三版)课后习题8.3

时间限制:1秒 内存限制:128兆

题目描述

写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。

输入

一个数

输出

如果是素数输出prime 如果不是输出not prime

样例输入

97

样例输出

prime

判断素数在于如何去判断因子个数,素数是只有两个因子的数

(因子为1和他本身,1不是素数),首先最容易想到的方法应该

是从1开始一个个遍历,看看有没有是这个数因子的数,此时,

对因子个数进行一个计次,如果遍历结束之后,因子个数为2,

那么这个数是素数,代码如下

(这个求素数的方法是最基础的方法,做到后面的时候会发现跑

程序的时间非常长,需要对程 序进行优化处理,至于如何进行优

化,等到具体的题目时再进行讨论) 

#include<stdio.h>

int main()

{

	int a, num;

	num=0;

	scanf("%d",&a);

	for(int i=1;i<=a;i++)

	{

		if(a%i==0)                              //判断i是否为a的因子 

		num++;                                  //对因子个数进行计次 

	}

	if(num==2)                                  //如果只有两个因子,则为素数 

	printf("prime");

	else

	printf("not prime");

	return 0;

} 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值