#include <stdio.h> int main() { int s; scanf("%d",&s); for (int i=2;i<s;i++) { if (s%i==0) { printf("not prime\n"); break; } else { printf("prime\n"); break; } } return 0; } 我这个简单还是复杂
#include <bits/stdc++.h> using namespace std; int judge(int x){ for(int i=2;i<x;i++){ if(x%i!=0) cout<<"prime"<<endl; else cout<<"not prime"<<endl; break; } if(x==2){ cout<<"prime"<<endl; } } int main(){ int x; cin>>x; judge(x); return 0; }
# include <stdio.h > int f(int a) { int i ; for (i=2;i<=a;++i) { if (0 == a%i) break ; } if (i == a) printf ("prime"); else printf ("no prime"); return 0 ; } int main (void) { int a ; printf ("输入一个数,普安端是否是素数:"); scanf("%d",&a); f(a); return 0; } 求大神指导 这个怎么错了
#include<stdio.h> void prime(int n){ int i; bool flag=1; for(i=2;i<=n/2;i++){ if(n%i==0){ flag=0; break; } } if(flag) printf("prime"); else printf("not prime"); } int main() { int n; scanf("%d",&n); prime(n); return 0; } 为什么编译错误呢
循环可以只循环k/2次
#include"stdio.h" int pan(int a) { int i,b=1; for(i=a/2;i>1;i--) { if(a%i==0) { b=0; break; } } return b; } int main() { int a,b; scanf("%d",&a); b=pan(a); if(b) printf("prime"); else printf("not prime"); return 0; }
圣者psy素爱 2019-10-15 09:42:28 |
思路一样,计算量为一半,优秀
C语言程序设计教程(第三版)课后习题12.5 (C语言代码)浏览:820 |
C语言训练-计算一个整数N的阶乘 (C语言代码)浏览:928 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:578 |
K-进制数 (C语言描述,蓝桥杯)浏览:925 |
蚂蚁感冒 (C语言代码)浏览:1319 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:527 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:635 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:663 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:535 |
明明的随机数 (C语言代码)浏览:953 |