日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言编常见算法,5个常见C语言算法

發布時間:2023/12/9 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言编常见算法,5个常见C语言算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

5個常見C語言算法

十進制轉換為二進制的遞歸程序

字符串逆置的遞歸程序

整數數位反序,例如12345->54321

四舍五入程序(考慮正負數)

二分法查找的遞歸函數

#include

#include

#include

//十進制轉換為二進制的遞歸程序

voidDecimalToBinary(int n)

{

if(n<=0)

{

printf("0"); return;

if(n==1)

{

printf("1"); return;

}

else

{

DecimalToBinary((int)n/2);

printf("%d",n%2);

return;

}

}

//字符串逆置的遞歸程序

voidInverseString(char *s,int n)

{

if(n<=1) return;

else

{

char ch;

ch= s[0];

s[0]= s[n-1];

s[n-1] = ch;

InverseString(s+1,n-2);

}

}

//整數數位反序12345->54321

intInverseIntBit(int n)

{

int sum = 0;

while(n)

{

sum = sum * 10 + n % 10;

n /= 10;

}

return sum;

}

//四舍五入程序(考慮正負數):

intRoundDouble(double d)

{

int sign = 0;

sign = (d>0)?1:-1;

double td = d + sign * 0.5;

return (int)td;

}

//二分法查找的遞歸函數

intBinarySearch(int key,int a[],int low,int high)

{

if(low>high) return 0;

int mid = (low+high)/2;

if(a[mid]>key) return BinarySearch(key,a,low+1,mid-1);

else if(a[mid]return BinarySearch(key,a,mid+1,high-1);

else return 1;

}

voidmain()

{

printf("/nDecimal To Binary(224) = ");

DecimalToBinary(224);

char a[27] = "abcdefghijklmnopqrstuvwxyz";

InverseString(a,26);//這里必須考慮后面的'/0'

printf("/nString Inverse(abcdefghijklmnopqrstuvwxyz) = %s/n",a);

int t = InverseIntBit(123456);

printf("/nInt Inverse 123456 = %d/n",t);

int rd1 = RoundDouble(1.4);

int rd2 = RoundDouble(1.5);

int rd3 = RoundDouble(-1.4);

int rd4 = RoundDouble(-1.5);

printf("/nround(1.4)=%d round(1.5)=%d round(-1.4)=%d round(-1.5)=%d/n",rd1,rd2,rd3,rd4);

int aa[10] = {0,1,2,3,4,5,6,7,8,9};

if(1==BinarySearch(7,aa,0,9)) printf("/nI Find 7 /n");

else printf("/nI Cannot Find 7/n");

if(1==BinarySearch(17,aa,0,9)) printf("/nI Find 17/n");

else printf("/nI Cannot Find 17/n");

getch();

}

結果:

{

printf("0"); return;

}

printf("0"); return;

}

}

總結

以上是生活随笔為你收集整理的c语言编常见算法,5个常见C语言算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。