美文网首页上嵌学习笔记
作业:数组内排序;数组倒置;0~100素数,

作业:数组内排序;数组倒置;0~100素数,

作者: Hassan_chao | 来源:发表于2016-12-14 20:59 被阅读9次

    1、数组内排序:完成内容,无疑问。

    #include<stdio.h>
    int main()
    {
        int num;
        int i=0;
        int j;
        int k;
        int arr[10]={1,3,5,7,9,11};
        printf("Please input a even number from 1~10 :");
        scanf("%d",&num);
        for(i=0;i<10;i++)
        {
            printf("%3d",arr[i]);
    
        }
        printf("\n");
        for(i=0;i<10;i++ )
        {
            if((num>arr[i])&&(num<arr[i+1]))
            {
            //  j=arr[i+1];
            //  arr[i+1]=num;
            
        
        for(i;i<10;i++)
            {
                
                j=arr[i+1];
                arr[i+1]=num;
                num=j;
    
            }
            }
        }
        for(i=0;i<10;i++)
        {
            printf("%3d",arr[i]);
    
        }
        printf("\n");
            return 0;
    }
    

    2、数组倒置

    #include<stdio.h>
    int main()
    {
        int i;
        int arr[10]={0,1,2,3,4,5,6,7,8,9};
        printf("原来数组:");
        for(i=0;i<10;i++)
        {
            printf("%2d",arr[i]);
        }
        printf("\n");
        int mid=10/2;
        int m;
        for(i=0;i<=mid;++i)
        {
            int k=9-i;
            m=arr[i];
            arr[i]=arr[k];
            arr[k]=m;
        }
        printf("倒置数组:");
        for(i=0;i<10;i++)
        {
            printf("%2d",arr[i]);
        }
        printf("\n");
        return 0;
    }
    

    3、0~100素数 出现核心转储问题,解决中。。。。。

    //素数,只能被1和自身整除的数,即素数
    //2~100之间的素数并保存到数组中
    //开方处理,效率指数提升 sqrt();  #include<math.h>
    #include<stdio.h>
    #define N 50
    int main()
    {
    
        int arr[N];
        int i=2;
        int j=0; //统计素数的个数
        int k=2;
        for(i=2;i<=100;i++)
        {   
            
            for(k=2;k<i;k++) //从开始2遍历,找到能被i整除的数
            {
                if(i%k==0)
                break;  //找到则退出内层循环
            }
            if(i==k)    //若i==k,则k为素数,否则不是素数
            {   
                arr[j]=i;
                j++;
                /*printf("%4d",i);
                if(j%5==0)
                printf("\n");*/ 
            }
        }
        
            for(i=0;i<j;i++)
        {   
            
            if(i%5==0)
            printf("\n");
            printf("%4d",arr[i]);
        }
        printf("\n");
        return 0;
    }
    

    相关文章

      网友评论

      本文标题:作业:数组内排序;数组倒置;0~100素数,

      本文链接:https://www.haomeiwen.com/subject/zthwmttx.html