中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C基礎(26——30)

發布時間:2020-04-27 22:38:36 來源:網絡 閱讀:480 作者:pure夢 欄目:編程語言

C基礎(26——30)

如果n越大,則遞歸計算比較慢
//#include <stdio.h>
//#include <stdlib.h>
//
//int FibNoRecursion(int n)  //斐波那契非遞歸
//{
//             int a=0;
//             int b=1;
//             int c=a+b;
//
//             if(n==0)
//                             return 0;
//             if(n==1)
//                             return b;
//             if(n==2)
//                             return a+b;
//             for(int i=3;i<=n;i++)
//             {
//                             a=b;
//                             b=c;
//                             c=a+b;
//             }
//             return c;
//}
//void test()
//{
//             int n=0;
//             printf("Please input n: ");
//             scanf("%d",&n);
//             int ret=FibNoRecursion(n);
//             printf("Fibonacci(%d) = %d\n",n,ret);
//}
//int main()
//{
//             test();
//             system("pause");
//             return 0;
//}


//數組實現
#include <stdio.h>
#include <stdlib.h>

int FibNoRecursion(int n)  //斐波那契非遞歸
{
                 int fib_arr[100]={0};    //數組元素全部初始化為0
                fib_arr[0]=1;
                fib_arr[1]=1;
                 int count=0;

                 while(count<n-1)
                {
                                fib_arr[count+2]=fib_arr[count+1]+fib_arr[count];
                                count++;
                }
                 return fib_arr[n-1];
}
void test()
{
                 int n=0;
                printf( "Please input n: ");
                scanf( "%d",&n);
                 int ret=FibNoRecursion(n);
                printf( "Fibonacci(%d) = %d\n",n,ret);
}
int main()
{
                test();
                system( "pause");
                 return 0;
}

結果:

C基礎(26——30)



C基礎(26——30)

#include <stdio.h>
#include <stdlib.h>

void test()
{
                 char* str="abcdefghi123" ;
                 int count=0;

                 while(*str)
                {
                                count++;
                                str++;
                }

                printf( "%d\n",count);
}
int main()
{
                test();
                system( "pause");
                 return 0;
}

結果:

C基礎(26——30)



C基礎(26——30)

//不用臨時變量,即可以用遞歸來求

#include <stdio.h>
#include <stdlib.h>

int Strlen(char * str)
{
                 if(*str =='\0')
                                 return 0;
                 if(*str )
                {
                                 str++;
                                 return Strlen(str )+1;
                }
}
void test()
{
                 char* str="0abc123def" ;
                 int ret=Strlen(str);

                printf( "strlen=%d\n",ret);
}
int main()
{
                test();
                system( "pause");
                 return 0;
}

結果:

C基礎(26——30)



C基礎(26——30)

#include <stdio.h>
#include <stdlib.h>
#define N 8
void test()
{
                 int arr[N ]={23,88,12,8,37,99,25,0};

                 for(int i=0;i<N-1;i++)
                {
                                 int j=i+1;

                                 for(j;j<N ;j++)
                                {
                                                 if(arr[i]>arr[j])
                                                {
                                                                 int tmp=arr[i];
                                                                arr[i]=arr[j];
                                                                arr[j]=tmp;
                                                }
                                }
                }
                 //輸出
                 for(int m=0;m<N;m++)
                {
                                printf( "%d ",arr[m]);
                }
                printf( "\n");
}
int main()
{
                test();
                system( "pause");
                 return 0;
}

結果:

C基礎(26——30)



C基礎(26——30)

C基礎(26——30)

#include <stdio.h>
#include <stdlib.h>

void test()
{
                 int a=15;
                 int count=0;

                 while(a)
                {
                                 if(a & 1)  //按位與
                                                count++;

                                a=a>>1;
                }

                printf( "%d\n",count);
}
int main()
{
                test();
                system( "pause");
                 return 0;
}

結果:

C基礎(26——30)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c
AI

高台县| 安图县| 义马市| 沿河| 革吉县| 萝北县| 仙桃市| 柳河县| 延边| 灵山县| 蓬安县| 嘉义县| 成都市| 甘洛县| 张家口市| 贞丰县| 青浦区| 手机| 潜江市| 张掖市| 彝良县| 京山县| 宜丰县| 潼南县| 宜春市| 阿城市| 新源县| 江门市| 荆门市| 曲周县| 蓬安县| 土默特左旗| 彩票| 公安县| 辽阳县| 眉山市| 梨树县| 来凤县| 甘孜| 烟台市| 宜昌市|