C语言中实用的子函数(持续加料)

【函数的作用】

C语言中的函数的作用是可以将一段经常需要使用的代码封装起来,在需要使用时可以直接调用。

 

一,判断素数

int prime(int m)
{
    int i,k;
    if(m==1)
    {
        return 0;
    }
    k=(int)sqrt(m);     /*减少运行时间*/
    for(i=2;i<=k;i++)
    {
        if(m%i==0)
        {
            return 0;
        }
    }
        return 1;
}

二,计算一个非负整数组成它的每位数的数字之和

int digit_sum(int n)
{
    int sum=0;
    while(n)
    {
        sum+=n%10;
        n/=10;
    }
    return sum;
}

三,斐波那契数列(适合大数计算)

https://blog.csdn.net/qq_45748475/article/details/105773437

void fib()
{
	int s,c;
	a[1][0]=1;a[2][0]=1;
	for(int i=3;i<1001;i++)
	{
		c=0;
		for(int j=0;j<=500;j++) /*以下步骤模拟大数计算,初始化斐波那契数列*/
		{
			s=a[i-1][j]+a[i-2][j]+c;
			a[i][j]=s%10;
			c=s/10;
		}
	}
}

四,求数的阶乘(较小的数)

int fun(int n)
    {
    int i;
    int s=1;
    for(i=1;i<=n;i++)
    s*=i;
    return s;
    } 

五,进制之间的转换

1,十进制转换成二进制

void DToB(int n,char str[])
{
    int len=0;
    while(n)
    {
        str[len]=n%2+'0';
        len++;
        n/=2;
    }
    strlen='\0';
    strrev(str);
}

2,二进制转换成十进制

int BToD(char str[])
{
    int i,d;
    d=0;
    for(i=0;str[i]='\0';i++)
    {
        d=d*2+[str[i]-'0'];
    }
    return d;
}

六,判断回文数

int panduan(int n)
{
    int m=0;
    int s,r;
    s=n;
    while(s!=0)
    {
        r=s%10;
        m=10*m+r;
        s/=10;
    }
    if(m==n)            
        return 1;         /*是回文数*/
    else
        return 0;       /*不是回文数*/
}


求回文数的方法有很多,我也借鉴了很多,觉得还是这个方法比较容易理解,
这个代码所用的思路较简单,代码易懂,可以直接用,代码中多用函数便于排错,
长代码表现得更为明显!
 

  • 4
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值