day 5

 一、输出从起始值到终止值之间,所有能被3或5整除的所有数,起始值和终止值由用户输入

#include<string.h>
#include<stdio.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
    int m;    //输入起始值
    int n;       //输入终止值

    printf("请输入起始值:");
    scanf("%d",&m);

    printf("请输入终止值:");
    scanf("%d",&n);

    for(m;m<=n;m++)
    {
        if(m%3==0||m%5==0)
        {
            printf("%d\5t\n",m);
        }
    }

    return 0;
}

结果:

ubuntu@ubuntu:day5$ gcc 11zuoye.c 
ubuntu@ubuntu:day5$ ./a.out 
请输入起始值:5
请输入终止值:98
5    6    9    10    12    15    18    20    21  24    25    27    30    33

 二、输出斐波那契前20项的值

                                    斐波那契数列:1 1 2 3 5 8 13……

#include<string.h>
#include<stdio.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
    int i;//定义整数
    int n;//输出斐波那契数列项数
    int t1=1,t2=1,nextterm;//从第三项开始前两个数值相加
                            //等于下一项

    printf("输出几项:");

    scanf("%d",&n);

    printf("斐波那契数列:");

    for(i=1;i<=n;i++)
    {
        printf("%d\t",t1);
        nextterm=t1+t2;
        t1=t2;
        t2=nextterm;    
    }

    return 0;
}
 

结果:ubuntu@ubuntu:day5$ ./a.out 
输出几项:20
斐波那契数列:1    1    2    3    5    8    13    2134    55    89    144    233    377    610    987    1597    2584    4181    6765    

三、输入一个数,判断该数是否为素数(只能被1和其本身整除的数)

#include<string.h>
#include<stdio.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
    int i,j;
    printf("请输入一个正整数:");
    scanf("%d",&j);
    if(i<0)
    {
        printf("输入负整数,取绝对值\n");
        i=-i;
    }
    if(i==0||i==1)
    {
        printf("0和1不在素数讨论范围之内。\n");
        
    }
    for(i=2;i<=j-1;i++)
    {
        if(j%i==0)
        {
            printf("%d不是素数\n",j);
            break;
        }
    }
    if(i==j)
    {
        printf("%d是素数\n",j);
    }

    return 0;
}
结果:

ubuntu@ubuntu:day5$ ./a.out 
请输入一个正整数:78
78不是素数
ubuntu@ubuntu:day5$ ./a.out 
请输入一个正整数:17
17是素数
 

四、输入一个数,判断该数是否为完美数(所有真因子之和等于其本身,例如:6=1+2+3)

#include<string.h>
#include<stdio.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
    int i=0,sum=0;
    int num=0;
    printf("请输入一个数:");
    scanf("%d",&num);
    for(i=1;i<num;i++)
    {
        if(num%i==0)
        {
            sum+=i;
        }
    }
        if(num==sum)
        {
            printf("%d是完美数\n",num);
        
        }else
    {
        printf("%d不是完美数\n",num);
    
    }

    return 0;
}
 

结果

ubuntu@ubuntu:day5$ ./a.out 
请输入一个数:6
6是完美数
ubuntu@ubuntu:day5$ ./a.out 
请输入一个数:8
8不是完美数
 

五、输出起始值和终止值之间的所有素数

#include<string.h>
#include<stdio.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
    int min;//起始值
    int max;//终止值
    printf("请输入起始值:");
    scanf("%d",&min);
    printf("请输入终止值:");
    scanf("%d",&max);
    for(int i=min;i<=max;i++)
    {
        int j=0;
        for(int k=2;k<i;k++)//0和1不在素数考虑范围之内
        {
            if(i%k==0)
            {
                j++;
            }
        }
        if(j==0)
        {
            printf("%d\n",i);
        }
    }

 
    return 0;
}
结果

ubuntu@ubuntu:day5$ ./a.out 
请输入起始值:5
请输入终止值:78
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
 

六、输出起始值和终止值之间的所有完美数

#include<string.h>
#include<stdio.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
    int min;
    int max;
    printf("请输入起始值:");
    scanf("%d",&min);
    printf("请输入终止值:");
    scanf("%d",&max);

    for(int i=min;i<=max;i++)
    {
        int j=0;
        for(int k=1;k<i;k++)
        {
            if(i%k==0)
            {
                j+=k;
            }
        }
        if(j==i)
        {
            printf("%d\n",i);
        }
    }


    return 0;
}
 

结果:

ubuntu@ubuntu:day5$ ./a.out 
请输入起始值:2
请输入终止值:88
6
28
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值