c課堂筆記 day-1

c語(yǔ)言之父:丹尼斯.里奇

c語(yǔ)言的優(yōu)缺點(diǎn):看書(shū)查找

1.c的引入:

gcc編譯的格式:gcc hello.c -o hello -o是目標(biāo)的意思o(jì)bject;

hello world程序的解析:

< #>:預(yù)處理命令 include:頭文件的包含 <>:把括號(hào)里的內(nèi)容引入到源文件中
<stdio.h>:標(biāo)準(zhǔn)輸入輸出頭文件,是計(jì)算機(jī)自帶的庫(kù),可以直接使用
< main>:函數(shù)名,main()是主函數(shù),c程序源文件有且只能有一個(gè)main()函數(shù)!!!c程序的入口,即所有的c程序都是從
main函數(shù)開(kāi)始執(zhí)行;
int argc:參數(shù)的個(gè)數(shù); char *argv[]:記錄參數(shù)
printf():是庫(kù)函數(shù),包含在<stdio.h>中;
return 0:返回,或者函數(shù)結(jié)束;
注:以上內(nèi)容基本決定了程序的框架;

c的數(shù)據(jù)類型:

基本數(shù)據(jù)類型:
int:基本整型
short int:短整型
long int:長(zhǎng)整型
unsigned :無(wú)符號(hào)
signed:有符號(hào)
char 字符型 getchar 只能得到一個(gè)字符
float 單浮點(diǎn)類型:小數(shù)點(diǎn)后6位
double 雙浮點(diǎn)類型: 小數(shù)點(diǎn)后15位
numf e/E n :e為10的n次方
例:12.2E3<=====>12.2*10^3
enum 枚舉類型
構(gòu)造數(shù)據(jù)類型:
數(shù)組類型,結(jié)構(gòu)體(struct),聯(lián)合體(union)
指針類型:
空類型: void

2.變量的定義:

    data:數(shù)據(jù)
    type:類型
    value:值

DataType Name1,Name2,......,Numen;
可以定義多個(gè)變量,中間用逗號(hào)隔開(kāi),結(jié)尾用分號(hào)結(jié)束??!
DataType Name; 一行定義一個(gè)變量最好
DataType Name1;
建議一行定義一個(gè)變量并初始化

3.標(biāo)識(shí)符:

包括變量名,函數(shù)名,及其它標(biāo)號(hào)等;
(1)標(biāo)識(shí)符的命名要求
字母(A~Z,a~z),下劃線(_),數(shù)字組成;
且規(guī)定:第一個(gè)字符不能為數(shù)字;
(2)命名規(guī)則:
可讀性要高,做到“見(jiàn)名知義”
駝峰命名法;
盡量不要用漢語(yǔ)拼音?。。?/p>

4.格式輸入\輸出:scanf()\printf()

printf("占位符",參數(shù)):按一定格式輸出,一一對(duì)應(yīng)??!
也可以直接輸出printf("====")
%m.nf:m代表總位數(shù)(%5.3f=3.142 包含小數(shù)點(diǎn)加起來(lái)共五位數(shù),小數(shù)點(diǎn)后面三位),n小數(shù)部分保留幾位
%-m.n:左對(duì)齊! %m.n:右對(duì)齊! 正負(fù)決定左右對(duì)齊;
scanf("占位符",參數(shù)): 按一定格式輸入,一一對(duì)應(yīng)!!
&(取地址符):取相應(yīng)地址

#######include<stdio.h>
int main()
{
float numf=1.234;

//按一定格式輸出
printf("numf=%f\n",numf);
//輸入numf的值,&numf為取地址符,將輸入的 數(shù)據(jù)保存
//到numf對(duì)應(yīng)的內(nèi)存空間中!
scanf("%f",&numf);
printf("numf=%5.3f",numf);

}

\

#######include<stdio.h>
int main()
{
int numt=123;
float numf=1.23;
printf("input two num:\n");
//printf給的什么格式scanf就按一定格式輸入
scanf("%d,%f",&numt,&numf);
printf("numt=%d\tnumf=%f\n",numt,numf);
//\t 制表符;
return 0;
}

 占位符:
           printf         scanf
 int            %d         %d              
 char           %c         %c
 long           %ld        %d
 float          %f         %f
 double         %lf        %f
 字符串         %s

5.常量

數(shù)字常量:123 1 567 -234
字符常量:'d' '$' '?' 'A'
實(shí)型常量:1.234 3.1415926 -1.423
字符串常量:由雙引號(hào)括起來(lái)的字符序列(由一個(gè)或多個(gè)字符組成的)
注意:字符串和字符的區(qū)別
'a':字符 占一個(gè)字節(jié)
"a":字符串 占兩個(gè)字節(jié) 默認(rèn)結(jié)束標(biāo)志為‘\0’, 一般不顯示
表示形式: "ahsoifhaiu" "asdf?<@sdaf"

6.變量和常量的區(qū)別:

變量:
其職可以更改!
先定義,后使用!
常量:
其值不可更改!
隨時(shí)可以使用,無(wú)需定義或聲明!
#include<stdio.h>
int main()
{
int numt=34; //變量先定義后使用
//常量名=值
printf("numt=%d,888=%d\n",numt,888);
return 0;
}

二、運(yùn)算符

1.sizeof():計(jì)算大小,得出對(duì)應(yīng)變量或數(shù)據(jù)類型所占內(nèi)存空間大小
單位:字節(jié)(byte) 1字節(jié)=8位(bit)
sizeof DataType:
64位機(jī)下:

#######include<stdio.h>
int main()
{
printf("sizeof DataType:\n");
printf("sizeof(char)=%ld\n",sizeof(char)); =1
printf("sizeof(int)=%ld\n",sizeof(int)); =4
printf("sizeof(short)=%ld\n",sizeof(short)); =2
printf("sizeof(long)=%ld\n",sizeof(long)); =8
printf("sizeof(float)=%ld\n",sizeof(float)); =4
printf("sizeof(double)=%ld\n",sizeof(double)); =8
return 0;
}

#######include<stdio.h>
int main()
{
char ch;
short short_size;
int int_size;
long long_size;
float float_size;
double double_size;
printf("sizeof(ch)=%ld\n",sizeof(ch));
printf("sizeof(short_size)=%ld\n",sizeof(short_size));
printf("sizeof(int_size)=%ld\n",sizeof(int_size));
return 0;
}
注意:對(duì)比數(shù)據(jù)類型所占大小,和其定義的變量所占內(nèi)存的大??!

2.算數(shù)運(yùn)算符(七個(gè))

加:+ 減:- 乘:* 除:/ 取余:% a%b求余 6%4余2

    #include<stdio.h>
    int main()
    {
        int a=12;
        int b=3;
        int sum=a+b;
        //或者:int sum;
        printf("%d,%d,%d\n",a,b,sum);
        return 0;
    }

    #include<stdio.h>
    int main()
    {
        int a=12;
        int b=3;
        int sum=a-b;
        int c=a*b;
        int d=a/b;
        //或者:int sum;
        printf("%d,%d,%d,%d,%d\n",a,b,sum,c,d);
        return 0;
    }

自增:++
++i :num=++i; i=i+1; num=i;
i++ : num=i; i=i+1;
#include<stdio.h>
int main()
{
int num=5;
int sum=++num + ++num; 6+6
printf("sum=%d\n",sum);
int i=5;
int j=i++ + i++; 5+5
printf("i=%d j=%d\n",i,j);

    }

自減:-- --i i--

    #include<stdio.h>
    int main()
    {
       int num=5;
       printf("%d\n",++num);6
       printf("%d\n",num++);6
       printf("%d\n",num--);7
       printf("%d\n",++num);7
       printf("%d\n",num++);7
    }

關(guān)系運(yùn)算符:(結(jié)果成立為1 不成立為0)
大于:>
小于:<
等于等于:==
大于或者等于:>=
小于或者等于:<=
不等于:!=

#######include<stdio.h>
int main()
{
int a=3;
int b=4;
printf("a>b:%d\n",a>b); =0
printf("a<b:%d\n",a<b); =1
printf("a==b:%d\n",a==b); =0
printf("a<=b:%d\n",a<=b); =1
printf("a>=b:%d\n",a>=b); =0
printf("a!=b:%d\n",a!=b); =1
}

逗號(hào)運(yùn)算符(,):

表達(dá)式1,表達(dá)式2,表達(dá)式3;
其中每個(gè)表達(dá)式又可以是一個(gè)逗號(hào)表達(dá)式!
一次計(jì)算表達(dá)式1,表達(dá)式2,表達(dá)式3的值,整個(gè)逗號(hào)表達(dá)式的值取決于最后一個(gè)表達(dá)式的值
#include<stdio.h>
int main()
{
int a=4;
a+2,a3,a-5;
printf("a=%d\n",a); a=4
(a=a+3,a
2),a/3; //有等于號(hào)才賦值 這里a=a+3
printf("%d\n",a); a=7

    }

使用scanf()注意事項(xiàng)
(1) 一定要嚴(yán)格按照scanf()中的格式輸入變量的值?。?br> (2) 使用scanf()時(shí),取參數(shù)列表中參數(shù)的地址,scanf()是將輸入的值保存到變量對(duì)應(yīng)的地址中!
(3) 緩存區(qū)問(wèn)題
scanf() 函數(shù)中不能使用換行符:\n;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,197評(píng)論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,415評(píng)論 3 415
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事?!?“怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 176,104評(píng)論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 62,884評(píng)論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,647評(píng)論 6 408
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,130評(píng)論 1 323
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,208評(píng)論 3 441
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,366評(píng)論 0 288
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,887評(píng)論 1 334
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,737評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,939評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,478評(píng)論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,174評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,586評(píng)論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,827評(píng)論 1 283
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,608評(píng)論 3 390
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,914評(píng)論 2 372

推薦閱讀更多精彩內(nèi)容