素数和---翁凯C语言基础第五周测试

一.题目要求

二.执行代码

#include<stdio.h>
int main()
{
	int n; 
	int x;
	int count=0; //统计素数个数 
	int min,max;
	int sum,t;
	scanf("%d %d",&min,&max);
	for(n=2;;n++)    //死循环从2开始枚举找素数 
	{
		int i;
		int mk=1;  
		for(i=2;i<n;i++)  //遍历 
		{
			if(n%i==0)  //判断是不是能被其整除 
			{
				mk=0;
				break; //跳出第一个for循环 
			}
		}//执行break语句过后 程序会从这开始运行 
		if(mk==1)   //判断是不是素数 
		{
			count+=1;  //统计素数个数 
			t=n;      //记录第count个素数的值,如果此时count=1,那么就是第一个素数的值也就是2 
			if(count>=min&&count<=max) //判断素数的位置是不是位于你输入的闭区间之内 
			{
				sum+=t;//记录该闭区间内所有素数和 
			}
			if(count>max) //判断个数是否超出该区间范围 
			{
				goto out; //跳到离他最近的out:位置后面开始执行语句 
			}
		}
    }
    out:  //执行goto out;语句后,程序从他后面开始继续执行 
    printf("%d",sum);
    return 0;
 } 

 我的这个解决办法是有缺点的哦,那就是引入太多变量,其他解法我就不写了,大家可以想想不用goto语句又该如何解决

三.goto 语句拓展

上述代码中goto语句命令格式为

goto 参数;

参数:

我主要是想说goto后面参数是自己定的不一定是out

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿鹏别摆烂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值