c++ for循环 输入两个整数X和Y,输出两者之间的素数个数(包括X和Y)。

#include <iostream>
using namespace std;
int main()
{
int x,y,data,ans=0;
cin>>x>>y;
if(x > y)
{
int temp=x;
x=y;
y=temp;
}
for(int i =x;i<=y;i++)
{
int data=i;
bool flag = true;
for(int j=2;j<=data/2;j++)
{
if(data % j==0)
{
flag=false;
break;
}
}
if(flag && i!=1)
{
ans ++;
}
}
cout<<ans;
return 0;
}
为什么我的超时了!!!!!求大神

#include <iostream>

#include <cmath>

using namespace std;

int main()

{
 int x,y,data,ans=0;
 cin>>x>>y;
 if(x > y)
{
    int temp=x;
    x=y;
    y=temp;
}
 for(int i =x;i<=y;i++)
 {
  int data=i;
  bool flag = true;
  for(int j=2;j<=sqrt(data);j++)  //这里修改成平方根更好,如果你原来那样,循环次数太多了,不要用j<=data/2,如果非要用,可以用 j<data/2
  {
   if(data % j==0)
   {
      flag=false;
      break;
   }
  }

  if(flag && i!=1)
  {
   ans ++;
  }
 }
       cout<<ans;
       return 0;
   }

温馨提示:内容为网友见解,仅供参考
无其他回答

c++ for循环 输入两个整数X和Y,输出两者之间的素数个数(包括X和Y)。
y,data,ans=0; cin>>x>>y; if(x > y){ int temp=x; x=y; y=temp;} for(int i =x;i<=y;i++) { int data=i; bool flag = true; for(int j=2;j<=sqrt(data);j++) \/\/这里修改成平方根更好,如果你...

c++ for的循环语法 输入两个整数X和Y,输出两者之间的素数个数(包括X和...
第8行少了个判定吧,if(x > y),不然不管你xy两个值为多少都做交换

判决素数个数 输入两个整数X和Y,输出两者之间的素数个数(包括X和Y...
printf("共计%d个素数\\n",sum);return 0;}

c++输入两个素数,求介于两者之间素数的个数
} return true;} int main() { int num1, num2;int cnt = 0; \/\/ 记录素数个数 cout << "请输入两个素数,中间用空格隔开:" << endl;cin >> num1 >> num2;cout << num1 << "和" << num2 << "之间的素数有:" << endl;for (int i = num1 + 1; i < num2; ...

求助!C语言。输入两个整数分别给变量x、y,判断x和y的大小并输出相关信息...
include<stdio.h> void max(int x,int y){ if(x>y)printf("x>y\\n");else if(x==y)printf("x=y\\n");else printf("x<y\\n");} main(){ int x,y;printf("please input x and y:\\n");scanf("%d%d",&x,&y);max(x,y);} ...

c++求任意两个数之间的所有素数
return 0; \/\/如果能被整除说明不是质数, 返回0; return 1;} \/\/检测完了还没可以被整除的数,返回1 int main() \/\/主函数{int i,a,b; \/\/循环变量和任意两个数 printf("请输入起点:

程序题:输入两个不相等的正整数x,y,计算x和y之间所有整数的累加和(用伪...
先判断x,y的大小,如果x大于y的话,就循环:while x>y x-- sum=0 sum+=x 如果x小于y的话,把上面步骤反过来就行了。

...输入两个字符给变量x和y,然后输出x和y,在交换x和y中的值后,再输出x...
include <stdio.h> void main (){ char x,y,ch;printf("请输入要交换的两个字符x,y以任意空格间隔\\n");x=getchar();getchar();y=getchar();ch=x;x=y;y=ch;printf("交换后的结果为\\n");printf("x=%c,y=%c\\n",x,y);} ...

编写一个程序,提示用户输入两个整数,并存储在变量 x 和 y 中。然后确 ...
并存储在变量 x 和 y 中。然后确定坐标(坐标)(x,y)是的一种方法是:引入stdio.h头文件,用于输入输出函数 定义两个整型变量x和y,用于存储用户输入的两个整数 用printf函数打印提示信息,让用户输入两个整数 用scanf函数读取用户输入的两个整数,并赋值给x和y 用if-else语句判断x和y的符号,...

1. 输入两个数,分别放入x和y中,若两数不相等,则输出其中的大数;若两...
int x,y;printf("Enter x&y:\\n");scanf("%d%d",&x,&y);printf("x,y:%d %d\\n",x,y);if(x>y) printf("x=%d\\n",x);if(y>x) printf("y=%d\\n",y);if(x==y) printf("x==y x=%d\\n",x);} 原题:C语言-输入两个数,分别放入x和y中,若两数不相等,则输出其中...

相似回答