中国大学MOOC: 设计一个函数,用来判断一个整数是否为素数。代码如下,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。#include#includeintIsPrimeNumber(intnumber);intmain(){intn,ret;printf("Inputn:");scanf("%d",&n);ret=IsPrimeNumber(n);if(___________){printf("%disaprimenumber\n",n);}else{printf("%disnotaprimenumber\n",n);}return0;}//函数功能:判断number是否是素数,函数返回非0值,表示是素数,否则不是素数intIsPrimeNumber(intnumber){inti;if(number<=1)return0;//负数、0和1都不是素数for(i=2;________________;i++){if(_______________)//被整除,不是素数return0;}return1;}
举一反三
- 设计一个函数,用来判断一个整数是否为素数。代码如下,按要求在...素数return0;}return1;}
- 设计isPrime 函数,其功能:判断n是否为素数,若是,返回1,否则返回0,下列哪个设计的函数是错误的 A: int isPrime(int n) { int i; for(i = 2; i <= sqrt(n); i++) if(n % i == 0) return 0; return 1; } B: int isPrime(int n) { int i; for(i = 2; i < n; i++) if(!(n % i)) return 0; return 1; } C: int isPrime(int n) { int i,iPri=1; for(i = 2; i <= sqrt(n); i++) if(!(n % i)) iPri=0; return iPri; } D: int isPrime(int n) { int i,iPri=1; for(i = 2; i <= sqrt(n); i++) if(n % i == 0) iPri=0; break; return iPri; }
- 下面( )是正确的判断素数程序(m>1)。 A: j=0;for (i =2; i<=m-1; i++) if ( m % i != 0) j++;if(j==m-2) printf(“%d是素数\n", m); B: j=0;for (i =2; i<=m-1; i++) if ( m % i == 0) j++;if(j==0) printf(“%d是素数\n", m); C: flag=0;for (i =2; i<=m-1; i++) if ( m % i == 0) flag=1;if(flag==0) printf(“%d是素数\n", m); D: for (i =2; i<=m-1; i++) if ( m % i == 0) i=m+2;if(i==m+3) printf(“%d是素数\n", m);
- 下面( )是正确的判断素数程序(m>1)。 A: j=0; for (i =2; i<=m-1; i++) if ( m % i==0) j++; if(j==0)printf(“%d是素数\n", m); B: j=0; for(i =2; i<=m-1; i++) if ( m % i != 0) j++; if(j==m-2)printf(“%d是素数\n", m); C: for (i =2; i<=m-1; i++)<br> if ( m % i==0) i=m+2; if(i==m+3)printf(“%d是素数\n", m); D: flag=0; for (i =2; i<=m-1; i++) if ( m % i==0) flag=1; if(flag==0)printf(“%d是素数\n", m);
- 下面函数的功能是求出100~300间的素数和,横线处应填写______。 #include"stdio.h" intmain {inti,j,flag,sum=0; for(i=100;i<=300;i++) {flag=0; for(j=2;j<=i-1;j++) if(i%j==0){flag=1;break;} if(________)sum+=i; } printf("Thesumis%d\n",sum); return0; }