C语言实例3

1.求两数的最大公约数

#include<stdio.h>

main()

{

   int n1,n2,i,gcd;

   printf("输入两个正整数,以空格分割: ");

   scanf(\"%d %d\",&n1,&n2);

   for(i=1;i<=n1&&i<=n2;++i)

 {

       if(n1%i==0&&n2%i==0)

         gcd=i;

  }

    printf("%d 和 %d 的最大公约数是%d",n1,n2,gcd);

     return 0;

}

2.阶乘

#include<stdio.h>

main(){

    int n,i;

    long fac=1;

    printf("输入一个整数 ");

    scanf("%d",&n);

    if(n<0)

        printf("没有阶乘");

    else

    {

        for(i=1;i<=n;i++)

        {

            fac=fac*i;

        }

        printf("%d的阶乘是%lu",n,fac);

    }    

    return 0;

}

3.判断数字为几位数

#include<stdio.h>

main()

{

    int n;

    int count;

    printf("输入一个整数: ");

    scanf("%d",&n);

    while(n!=0)

    {

        n/=10;

        ++count;

    }

    printf("数字是%d位数",count);

}

4.计算一个数的n次方

#include<stdio.h>

main()

{

    int a,b,result;

    printf("基数是");

    scanf("%d",&a);

    printf("指数是");

    scanf("%d",&b);

    while(b!=0)

    {

        result*=a;

        --b;

    }

    printf("结果 %d",result);

    return 0;

}

5.判断回文数

#include<stdio.h>

int main()

{

    int n;

    int reverse=0,remainder,origin;

    printf("输入一个数");

    scanf("%d",&n);

    origin=n;

    while(n!=0)

    {

        remainder=n%10;

        reverse=reverse*10+remainder;

        n/=10;

    }

    if(origin==reverse)

        printf("%d是回文数",origin);

    else

        printf("%d不是回文数",origin);    

    return 0;    

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值