| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 391 人关注过本帖
标题:哪里错了啊
只看楼主 加入收藏
a1069821321
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-12-20
结帖率:0
收藏
已结贴  问题点数:20 回复次数:1 
哪里错了啊
#include<stdio.h>
#include<stdlib.h>
#include<cstdlib>
main()
{int a,b,c,d,e;
d=1;
e=2;
      
      printf("请输入所求素数范围最低值,如‘20’并击下回车键");
      scanf("%d",&d) ;
      
      printf("请输入所求素数范围最高值,如‘100’并击下回车键,为你计算");
            scanf("%d",&e) ;
      for(a=d;a<=e;a++)
      { for(b=d;b<=e;b++)
        
      { c=a%b;
       if(c==0&&a!=b)
        { printf("%d\t",a);
         break;}
       else
         continue;
       }
  
       }

   
}
搜索更多相关主题的帖子: continue include 
2014-12-20 16:11
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:20 
程序代码:
/* 用筛法查找某个整数区间内素数并保存在数组内 */
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

#define LEN (y-x+1)

int cur = 0;
int * numlist(int x, int y);
int * filter(int * p, int len);
int * newnum(int *p, int len);

int main(void) {
    int i, x, y, *pnum = NULL;
    printf("查找某个整数区间内素数 (下限 上限) : ");
    scanf("%d%d", &x, &y);
    pnum = newnum(filter(numlist(x, y), LEN), LEN);
    printf("下限: %d\n上限: %d\n区间内的素数:\n", x, y);

    for(i = 0; i < cur; i++) {
        printf("%d ", *(pnum + i));
    }

    printf("\n");
    free(pnum);
    return 0;
}

int * numlist(int x, int y) {
    int i = 0, *p = NULL, len = ((y - x) >= 0 && x >= 2 && y >= 2) ? LEN : 0;

    if(len != 0) {
        p = malloc(len * sizeof(int));

    } else {
        return NULL;
    }

    if(p == NULL) {
        printf("*内存分配错误!");
        return NULL;

    } else {
        for(; i < len; i ++) {
            *(p + i) = x + i;
        }
    }

    return p;
}

int * filter(int * p, int len) {
    int i, j, k;

    for(i = 0; i < len; i++) {
        if(*(p + i) != 0) {
            for(j = 2; j <= sqrt(*(p + i)); k = 0, j++) {
                if(*(p + i) % j == 0) {
                    while(k * j <= sqrt(*(p + i))) {
                        *(p + i + j * k) = 0;
                        k++;
                    }

                    *(p + i) = 0;
                }
            }
        }
    }

    return p;
}

int * newnum(int *p, int len) {
    int i, j = 0, *pnew = NULL;

    for(i = 0; i < len; i++) {
        if(*(p + i) != 0) {
            cur++;
        }
    }

    pnew = malloc(cur * sizeof(int));

    if(pnew != NULL) {
        for(i = 0; i < len; i++) {
            if(*(p + i) != 0) {
                *(pnew + j) = *(p + i);
                j++;
            }
        }

    } else {
        printf("**内存分配错误!\n");
        return NULL;
    }

    return pnew;
}

Only the Code Tells the Truth             K.I.S.S
2014-12-23 01:00
快速回复:哪里错了啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039994 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved