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

溫馨提示×

溫馨提示×

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

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

Time life C

發布時間:2020-03-28 16:55:13 來源:網絡 閱讀:334 作者:長路慢 欄目:編程語言

文化、時代、生活 仿佛還在昨天。
C語言嚴謹的來說是一門面向過程的語言,面向對象、面向過程到底是怎樣,困擾了我一年兩年的時光。C的好處靈活性、效率高這些就不一一介紹來了,C++與C其實并不是一門語言,C++兼容C,C++面向對象。就像起床,C就會定義怎樣睜眼,怎樣動胳膊等等,而C++簡答說把這些過程存儲了,函數調用,換句話說C++的標準庫要比C強大多的。
既然都這樣了還學啥C語言,直接學C++不就好了嗎?這也完全沒問題,直接學習C++也是沒有問題的,就像說的那樣這是兩種語言,只不過關聯程度大,但是大多數人還是會從C學起來,因為可以了解每一個過程,靈活性算是語言中很強的,可以隨心所欲寫自己想要的過程,對于優秀的程序員對封裝下面都是很清楚,出現的問題調試都是在這個層面完成的,所以C基礎牢固的人與沒接觸過C的人一起學習C++考慮的層面,涉及到的程度是不一樣的,久而久之差距會越來越大。
說了那么多廢話就是想說,學習C++可以沒C的基礎一樣學習,C語言可以學,也可以不學,但是學好了之后你會在編程上看到更多深層面知識。
學習C之后,從基礎學習到函數卻不知道記錄什么樣的重點與大家分享交流,留下的是一堆文本代碼,學習C這段時間最大的感觸認真兩個字的確不簡單,最近也逛一些論壇一起來看幾個有意思的小故事
1、關于scanf

scanf("%f %f",&a,&b);scanf是接收用戶數據的關鍵字類似于python中raw_input函數,讀取不檢查邊界的!會出現內存訪問越界。而且不需要引入stdio.h(inputout)頭文件也可以使用與Printf函數是一樣的。
scanf接收格式很嚴格要求,如果中間空格,在命令行輸入時候必須也是空格,是逗號就得輸入逗號。這個地方本人就經常犯低級的錯誤。
普及一下%d(整型1,2,3),%f(浮點型1.0,2.0,3.0),%c(字符串),%f最為有意思,也是比較靈活的double與float類型都用%f接收
sizeof()這個函數用來查看這些類型占幾個bit位,1byte=8bit 一個字節8位,**注意并不是int就一定是占4和字節32位,這是不科學的,有的書上是2個字節,有的是4個字節,其實占幾個字節根據根據系統來的**,并不是C定義好的。 

再來說兩個函數pow這個函數在后面全被Double類型取代了,輸入輸出都是double,求立方的函數,自己寫的源碼貼出來供大家參考,本人代碼風格是譚老師風格,因為學的他的書,所以有時候代碼不符合大家感覺

include <stdio.h>

void  main()
{

    double power(double a,double b);
    double x,y;

    scanf("%lf,%lf",&x,&y);

    printf("%lf\n",power(x,y));

}

double power(double a,double b)
{   

    double f=1;
    int i;
//  printf("%f,%f",a,b);

    for(i=0;i<b;i++)
    {
        f*=a;
    }
    return f;
}

僅供大家參考,那么再來個有意思的二分法與冒泡排序,其實本人挺喜歡數據姐與算法,因為好玩而且實用,畢竟是程序的靈魂如下

本人只會有序的冒泡排序,下面是自己初始化一個數組,下面是排序+循環

#include <stdio.h>

void main()
{
    int i,j,l,d;
    static int a[5]={5,1,3,6,2};

    int b[5];
    for(i=0;i<5;i++)
    {
        for(j=i;j<4;j++)
        {
            if(a[i] > a[j+1])
            {
                b[j] = a[j+1];
                a[j+1] = a[i];
                a[i] = b[j];
            }
        }
        printf("{%d}",a[i]);
    }
    printf("\nPlease enter find numbers:\n");
    scanf("%d",&d);
    for(l=0;l<5;l++)
    {   
        if(d == a[l])
        {
            printf("您查詢%d是本數組中的元素,排在數組中第%d位",d,l+1);
        }

    }
    printf("\n");
}

下面再來個二分法查找

#define M 7
#include <stdio.h>

void main()
{
    static int a[M]={-12,0,6,16,23,56,80};
    int n,start,middle,finlly,found;
    start = 0;
    finlly = M - 1;
    found = 0;
    printf("請輸入:\n");
    scanf("%d",&n);

    while(start <= finlly)
    {
        middle = (start+finlly)/2;
        if(n == a[middle])
        {
            found=1; break;
        }
        else if(n > a[middle])
            start = middle+1;
        else
            finlly = middle -1;

    }
    if(found==1)
        printf("您查找%d",middle+1);
    else
        printf("沒有查找到%d",n);
}

文本粘貼上來的 格式有點不好看,講解就么意思不會的可以討論 畢竟思路是一樣的 百度也有大量學習代碼

向AI問一下細節

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

AI

金阳县| 会宁县| 井陉县| 从化市| 林州市| 泰来县| 亚东县| 赤壁市| 安泽县| 县级市| 舟山市| 延长县| 曲沃县| 信阳市| 晴隆县| 沧州市| 潜山县| 年辖:市辖区| 萍乡市| 榆林市| 罗城| 白水县| 岫岩| 额敏县| 灌云县| 石台县| 龙岩市| 延津县| 扎兰屯市| 安吉县| 军事| 贵南县| 石棉县| 东明县| 河间市| 靖远县| 上思县| 阳曲县| 广水市| 武威市| 尼勒克县|