c/c++练习、面试题(一个确定数内的素数求和)附源码

今天,我们来看一道计算机(c/c++)习题,如何求一个规定数之内的素数求和,这是一道很多面试都在考的思维题。

在此之前,我们要先了解素数是什么,它有什么特点。在小学数学中我们就学到过素数的定义。

素数---即为质数,它的特点是一个大于1的整数,只能被1或它自己整除的数,也就是因数只有1和它自己的数,如2,3,5,7,11,13,17…………这一类的数,就是质数,那么,在编程中,我们如何实现质数这一功能呢,以及如何求在规定数以内,素数求和的功能呢。

在演示开始之前,首先感谢大家的支持与关注,老乔会更新更多免费语言教学与程序源码和各种学习资源。

演示:

1.演示工具:不限,c++编译器均可,本人演示:visual studio 2022

2.程序选择:控制台程序

3.演示所需库:<stdio.h>

演示思路:

我们来拟一下程序的思路:首先我们要想办法让用户输入范围来表示素数,调用<stdio.h>库,设定一个变量 a ,见演示:

#include <stdio.h>
int main()
{
    int a;
    printf("请输入范围:  \n");
    scanf("%d",a);
    return 0;
}

现在,我们让用户输入的范围保存在了变量a中。接下来要想让程序表示素数,我们前面说过,素数的因数只有1和它本身,那么,我们可以用一个for循环,让编译器一个一个判断素数,一直到用户输入的范围。见代码演示。

for(j=2;j<=a;j++)
	{
		int t = 1;
		for(i=2;i<j;i++)
		{
			if(j%i==0)
			{
				t=0;
				printf("不是素数");
				break; 
			}
		}
		if(t==1)
		printf("%d",i);
	}
	return 0;
} 

这里定义了3个变量,j,i,t,分别用于表示两个计数器,判断机制利用两个计数器判断质数并求和,看全代码:

#include <stdio.h>
int main()
{
	int a;
	int j;
	int i;
	printf("请输入范围 \0");
	
	scanf("%d" a);
	for(j=2;j<=a;j++)
	{
		int t = 1;
		for(i=2;i<j;i++)
		{
			if(j%i==0)
			{
				t=0;
				printf("不是素数");
				break; 
			}
		}
		if(t==1)
		printf("%d",i);
	}
	return 0;
} 

这样看来,素数求和也并不难,编程的精华在于逻辑,只要逻辑性够强,没有能难倒你的程序。

最后,感谢大家收看,记得完结撒花~~~~~~

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值