求两个整数见的素数问题,再弄
本帖最后由 无情修罗 于 2014-12-21 12:03 编辑#include <stdio.h>
#include <math.h>
/* userCode(<50字符): 自定义函数之原型声明 */
int shu(int number);
int main(void)
{
int m, n, cnt;
printf("Input the m, n: ");
scanf("%d,%d", &m, &n);
printf("\nThe result:\n");
for (cnt=0; cnt<n; m++)
{
if(shu(m)); /* userCode(<50字符): 调用函数判断m是否为素数 */
{
printf("%d ", m);
cnt++;
}
}
putchar('\n');
return 0;
}
/* User Code Begin:考生在此后完成自定义函数的设计,行数不限 */
int shu(int number)
{
int i,l=1;
for(i=2;i<number;i++ )
{
if(number%i==0)
{
l=0;
break;
}
}
return l;
}
输入两个整数m和n,输出大于等于m(m>5)的n个素数,输出的各素数间以空格相隔。注:素数(Prime Number),亦称质数,指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
无情修罗 发表于 2014-12-23 13:07
我总是爱出这些错,考试也因此搞砸了!
能不能采纳下 ,着急用<。)#)))≦币 //程序逻辑是正确的。没出现结果是因为你用的 scanf("%d,%d", &m, &n); 在你输入m和n时不能用空格隔开而要用,隔开!如果是 scanf("%d%d", &m, &n);就可以用空格隔开了!
#include <stdio.h>
#include <math.h>
/* userCode(<50字符): 自定义函数之原型声明*/
int shu(int number);
int main(void)
{
int m, n, cnt;
printf("Input the m, n: ");
scanf("%d,%d", &m, &n);
printf("%d %d", m ,n); //这一句是用来检测你输入的是不是你想输入的m和n
printf("\nThe result:\n");
for (cnt=0; cnt<n; m++)
{
if(shu(m)); /*userCode(<50字符): 调用函数判断m是否为素数 */
{
printf("%d ", m);
cnt++;
}
}
putchar('\n');
return 0;
}
/* User Code Begin:考生在此后完成自定义函数的设计,行数不限 */
int shu(int number)
{
int i,l=1;
for(i=2;i<number;i++ )
{
if(number%i==0)
{
l=0;
break;
}
}
return l;
}
楼主 你的第16行 if后面的 “;” 是啥子意思 赶紧去掉~~太粗心了:lol: 735899422 发表于 2014-12-23 13:02
楼主 你的第16行 if后面的 “;” 是啥子意思 赶紧去掉~~太粗心了
我总是爱出这些错,考试也因此搞砸了! 735899422 发表于 2014-12-21 11:39
能不能采纳下 ,着急用
已采纳
页:
[1]