這里整理c語言常用算法,主要有:
城步ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
交換算法
查找最小值算法
冒泡排序
選擇排序
插入排序
shell排序 (希爾排序)
歸并排序
快速排序
二分查找算法
查找重復(fù)算法
1.輸入語句:scanf("控制格式",接受值列表),其中控制格式常用的有:%d,%c,%s,%f,分別
表示整型,字符型,字符串和浮點型.
例如int
a;char
c;scanf("%d
%c",a,c);表示向a和c輸入值
2.賦值語句:=號,如將b賦值為10,為b=10
3.條件:if(布爾表達式){程序}else{程序}(注:此結(jié)構(gòu)可嵌套)
switch(離散量){case
常量:...;case
常量:...}
例:int
a;scanf("%d",a);
if(a10)
{printf("大于10");}
else
{printf("小于10")}
例:switch(months)
{
case
1:printf("1月有31天");break;
case
3:printf("3月有31天");break;
....
default:break;
}
4.循環(huán):for結(jié)構(gòu),while結(jié)構(gòu),do-while結(jié)構(gòu)
for(初始化;判斷;變化)
{
}
while(條件)
{
}
do
{
}while(條件)
一個數(shù)的各位數(shù)之和
#include "stdio.h"
main()
{
int n,sum=0,j;
printf("please input n:\n");
scanf("%d",n);
while(n)
{
j=n%10;
n=n/10;
sum+=j;
}
printf("%d\n",sum);
}
冒泡法排序
#include "stdio.h"
#define MAX 10
int score[MAX];
void bubble()
{
int i,j,tmp;
for(i=0;i=MAX-2;i++)
{
for(j=0;jMAX-i-1;j++)
if(score[j]score[j+1])
{
tmp=score[j];//前后交換//
score[j]=score[j+1];
score[j+1]=tmp;
}
}
}
void main()
{
int i;
printf("please input 10 students score1!\n");
for(i=0;iMAX;i++)
scanf("%d",score[i]);
bubble();
for(i=0;iMAX;i++)
{
printf(" %d",score[i]);
if((i+1)%5==0)
printf("\n");
}
}
階乘
#include "stdafx.h"
#include "stdio.h"
int main()
{
long n,sum=1,i;
scanf("%d",n);
if(n==0||n==1)
sum=1;
else
for(i=1;i=n;i++)
{
sum*=i;
}
printf("%ld\n",sum);
return 0;
}
楊輝三角
#include "stdio.h"
int main()
{
int i,j,n,k,a[21][21];//數(shù)組的大小,為了節(jié)約內(nèi)存空間,最好不要太大。后面的“n”不要超過這個數(shù),這里最好用宏定義//
for(i=0;i20;i++)
{
a[i][0]=1;
a[i][i]=1;
}
printf("please input n:\n");
scanf("%d",n);//n不要超過上面的數(shù)組大小//
for(i=1;i=n+1;i++)
{
for(k=1;k=2*(n-i+1);k++)
printf(" ");
for(j=1;ji;j++)
{
a[i][j]=a[i-1][j-1]+a[i-1][j];
printf("%4d",a[i-2][j-1]);
}
printf("\n");
}
return 0;
}
100--999水仙花數(shù)
#include "stdio.h"
int main()
{
int num,a,b,c;
for(num=100;num=999;num++)
{
a=num/100;
b=num/10%10;
c=num%10;
if(a*a*a+b*b*b+c*c*c==num)
printf("%4d\n",num);
}
return 0;
}
判斷素數(shù)
#include "stdio.h"
#include "math.h"
int main()
{
int n,i;
printf("please input N:\n");
scanf("%d",n);
for(i=2;i=sqrt(n+1);i++)
{
if(n%i==0)
break;
}
if(isqrt(n+1))
printf("%d是素數(shù)!\n",n);
else
printf("n不是素數(shù)!\n");
return 0;
}
數(shù)位分離、進制轉(zhuǎn)換、排序(選擇\冒泡)、插入、刪除、合并、查找、素數(shù)、閏年、平年、眾多數(shù)值計算、鏈表操作等等。