C语言冒泡排序和其他板子

C语言实用类板子

各位刚刚开始学习C语言的小伙伴是不是有的时候很郁闷,老是记不住一些常用的套路,在这里我总结了一些常用的C语言套路,方便使用。

一、 冒泡排序
  1. 核心内容
//n是数组里面的个数
    for(i=0; i<n-1; i++)
    {
        for(j=0; j<n-i-1; j++)
        {
            if(a[j]>a[j+1])
            {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }
    }
  1. 利用函数包装调用
#include <stdio.h>
#include <stdlib.h>
void paixu(int n,int a[n])
{
    int i,j;
    int temp=0;
    for(i=0; i<n-1; i++)
    {
        for(j=0; j<n-i-1; j++)
        {
            if(a[j]>a[j+1])
            {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }
    }
    for(i=0; i<n; i++)
    {
        printf("%d\t",a[i]);
    }

}
int main()
{
    int n,i;
    scanf("%d",&n);
    int a[n];
    for(i=0; i<n; i++)
    {
        scanf("%d",&a[i]);
    }
    paixu(n,a);

    return 0;
}
二、 最大公约数和最小公倍数
#include <stdio.h>
#include <stdlib.h>
int max(int a,int b)
{
    int temp;
    if(a<b) //使a最大。
    {
        temp=a;
        a=b;
        b=temp;
    }
    while(b!=0) //辗转相除法
    {
        temp=a%b;
        a=b;
        b=temp;
    }
    return a;
}
int min(int a,int b)
{
    int tt;
    tt=a*b/(max(a,b));//最小公倍数就是两数之积除以最大公约数。
    return tt;
}
int main()
{
    int a,b;
    int maxp,mino;
    scanf("%d%d",&a,&b);//输入两个数
    maxp=max(a,b);
    mino=min(a,b);
    printf("最大公约数是:%d,最小公倍数是:%d\n",maxp,mino);
    return 0;
}
三、 水仙花数(三位)
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n;
    scanf("%d",&n);
    int q,w,e;
    q=n/100;
    w=n%100/10;
    e=n%100%10;
     if(n==(q*q*q+w*w*w+e*e*e)){
        printf("%d是水仙花数\n",n);
    }
    else{
      printf("%d不是水仙花数\n",n);
    }

    return 0;
}
四、素数
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int m,i,k;
    scanf("%d",&m);
    k=(int)sqrt(m);//使时间复杂度降低
    for(i=2; i<=k; i++)
    {
        if(m%i==0)
            break;
    }
    if(i>k)
    {
        printf("%d是素数\n",m);
    }
    else
    {
        printf("%d不是素数\n",m);
    }
    return 0;
}
五、闰年判断

1.能被4整除而不能被100整除。
2.能被100整除也能被400整除

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int m;
    scanf("%d",&m);
    if((m%4==0)&&(m%100!=0)||((m%100==0)&&(m%400==0))){
        printf("%d是闰年\n",m);
    }
    else{
       printf("%d不是闰年\n",m);
    }
    return 0;
}

以上就是我总结的一些实用类板子,但是最重要的还是需要你自己牢记于心,多敲多练。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值