下载的测试点1输出是2 3 5 2,
但是自己用编译器试只输出2 3 5
by JIUZHOU1 @ 2023-11-21 11:08:16
正好看了你的代码我看到我的代码错在哪里,我帮你简化了一下```c
#include <stdio.h>
int count[10001];
int prime(int a){
int isprime=1;//可以把isprime改为flag
if(a<2) return 0;//注意加这个,1的问题
for(int j=2;j<=(a/2);j++){
if(a%j==0)isprime=0;
}
if(isprime) return a;
return 0;
}
int main(){
int prime(int a);//可以把这个删了,没用
int n,number;
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&number);
int x=prime(number);
if(x){
//if(count[x]<1){
printf("%d ",x);
// count[x]++
// }
}
}
return 0;//注意规范
}
```
看到回复一下
by 40tianlingying @ 2023-12-12 20:00:31
```c
#include <stdio.h>
int count[10001];
int prime(int a){
int isprime=1;//可以把isprime改为flag
if(a<2) return 0;//注意加这个,1的问题
for(int j=2;j<=(a/2);j++){
if(a%j==0)isprime=0;
}
if(isprime) return a;
return 0;
}
int main(){
int prime(int a);//可以把这个删了,没用
int n,number;
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&number);
int x=prime(number);
if(x){
//if(count[x]<1){
printf("%d ",x);
// count[x]++
// }
}
}
return 0;//注意规范
}
```
@[JIUZHOU1](/user/1192626)
by 40tianlingying @ 2023-12-12 20:01:35
难道1不是质数吗,输出1还是错的?
by C15989709725 @ 2023-12-17 16:31:25
@40tianlingying谢谢
by JIUZHOU1 @ 2023-12-19 17:33:14
@[C15989709725](/user/1208268) 1不是质数
by JIUZHOU1 @ 2023-12-19 17:33:39
@[40tianlingying](/user/1116698) 收到了,谢谢。
已了解该题出错点
by C15989709725 @ 2024-01-07 22:40:48
@[C15989709725](/user/1208268)
好的好的
by 40tianlingying @ 2024-01-19 21:04:40