zoukankan      html  css  js  c++  java
  • 《C和指针》章节后编程练习解答参考——6.4

    《C和指针》——6.4

    题目:

      质数是只能被1和本身整除的整数。

      在1到1000之间的质数,在数组中剔除不是质数的数。

    解答代码:

    #include <stdio.h>
    
    #define LIMIT 1000
    
    void show_array(int *p, int n)        //显示数组p[]中的n个元素
    {
        int i;
        for(i=0; i<n; i++)
        {
            if(i%10 == 0)
                printf("
    ");
            printf("%5d ", *(p+i));
        }
        printf("
    ");
    }
    
    void def_array(int *p)        //初始化数组元素值为索引号+1
    {
        int i;
    
        for(i=0; i<(LIMIT); i++)
        {
            *(p+i) = i+1;
        }
    }
    
    void DataProcess(int *p)        //将数组中的非质数替换为0
    {
        int i, j;
        for(i=1; i<(LIMIT/2); i++)
        {
            if (*(p+i) > 1)
            {
                for(j=i+1; j<LIMIT; j++)
                {
                    if (*(p+j) % *(p+i) == 0)
                    {
                        *(p+j) = 0;
                    }
                }
            }
        }
    }
    
    int DataSelect(int *p)            //将数组中的所有0去掉
    {
        int i, j;
        for(i=0, j=0; i<LIMIT; i++)
        {
            if(*(p+i) > 1)
            {
                *(p+j) = *(p+i);
                j++;
            }
        }
        return j;
    }
    
    int main()
    {
        int arrayt[LIMIT];
        int *p = arrayt;
        int n = 0;
    
        def_array(p);            //初始化数组元素值为索引号+1
        show_array(p, LIMIT);    //显示数组p[]中的n个元素
        DataProcess(p);            //将数组中的非质数替换为0
        n = DataSelect(p);        //将数组中的所有0去掉,n为质数的个数
        show_array(p, n);
        printf("There are %d numbers!
    ", n);
        getchar();
        return 0;
    }

    代码简析:

      1、定义一个数组,元素依次为从1、2、3、……

      2、使用两层循环,外层从2开始遍历数组前半部分,内层从3开始遍历之后的全部数组元素,内层元素除以外层元素,余数为零时内层元素置为0。

      3、将数组中为零的元素全部剔除

  • 相关阅读:
    python3 flask 文件下载服务器
    jquery cdn加速
    cherry 与sqlite
    cherry 与react.js
    cherrypy json 解析
    cherrypy cookies
    cherrypy 打印日志
    cherrypy pytest 覆盖,测试代码
    cherrypy ajax 请求
    cherrypy 访问css文件
  • 原文地址:https://www.cnblogs.com/microxiami/p/4967412.html
Copyright © 2011-2022 走看看