研究生复试上机编程练习7

问题描述

输入一个整数(大于等于4 小于等于100),输出小于此数的所有非素数

标准输入

17

标准输出

4 6 8 9 10 12 14 15 16

解题思路

就是一个判断素数的问题,注意输出的是非素数

判断素数的方法就是用它本身÷3到根号它自己,如果都不能整除,则是素数

解题代码

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int judge(int a){ //判断是素数 返回1,非素数 返回0
	int i;
	if(a % 2 == 0) return 0;
	for(i = 3; i <= sqrt(a); i++)
		if(a % i == 0) return 0;
	return 1;
}
int main(){
	int i,a;
	scanf("%d",&a);
	for(i = 4; i < a; i++)
		if(!judge(i))
			printf("%d ",i);
	printf("\n");
}

猜你喜欢

转载自blog.csdn.net/weixin_44572229/article/details/129326414
今日推荐