ios之c語(yǔ)言學(xué)習(xí)筆記

C語(yǔ)言筆記

1.Printf輸出函數(shù)語(yǔ)法
printf的語(yǔ)法 輸出語(yǔ)句
(1)printf("你想輸出的內(nèi)容")乘碑;
(2)printf("格式字符串"挖息,...);占位符%d整形數(shù) %f小數(shù) %s字符串 %c單個(gè)字符
printf("\n")兽肤;換行    
2.常量與變量
定義變量  語(yǔ)法:數(shù)據(jù)類(lèi)型 變量名

C語(yǔ)言中數(shù)據(jù)類(lèi)型:
       字符char套腹,短整型short
       整型int,長(zhǎng)整型long
       單精度浮點(diǎn):float
       長(zhǎng)精度浮點(diǎn):double
       要想使用變量资铡,必須先定義它电禀。變量通過(guò)賦值語(yǔ)句保存東西。

3.scanf輸入函數(shù)語(yǔ)法
scanf("數(shù)據(jù)類(lèi)型的占位符"笤休,地址)%d〖夥伞%f %s〉暄拧%c
%ld≌%lf

inta,b闹啦;
printf("請(qǐng)輸入第一個(gè)數(shù)")
scanf("%d"腋么,&a)
printf("請(qǐng)輸入第二個(gè)數(shù)")
scanf("%d",&b)
printf("%d+%d=%d\n"亥揖,a珊擂,b圣勒,a+b);

4.運(yùn)算符
(1)特殊運(yùn)算符:()〈萆取.->∈ッ场[]
(2)算術(shù)運(yùn)算符:+—×/%++--
(3)關(guān)系運(yùn)算符:> >=】富<∮蹙<= == ≡谡拧S煤=
(4)位操作運(yùn)算符:&∧/<< >>
(5)邏輯運(yùn)算符:&&\\帮匾!
(6)條件運(yùn)算符:啄骇?:
(7)賦值運(yùn)算符:= +=∥列薄-= ×=「准小/= %=
5.無(wú)條件轉(zhuǎn)向之goto語(yǔ)句goto標(biāo)簽

goto l;
l:```
**條件轉(zhuǎn)向語(yǔ)句if語(yǔ)句**
if(條件)
{
條件成立時(shí)要做的事(一行或多行代碼)
}
舉例:

int a;
scanf(“%d”,&a);
if(a%2==0)
{
Pintf(“%d是偶數(shù)!\n”,a);
}
if(a%2!=0)
{
Pintf(“%d是奇數(shù)!\n”,a);
}```
6.條件判斷之if else語(yǔ)句

if(條件1)
{
條件1成立時(shí)要做的事(一行或多行代碼)
}
else if(條件2)
{
條件2成立時(shí)要做的事(一行或多行代碼)
}..................
else
{
以上條件都不成立時(shí)的代碼
}```
舉例1:

int a;
scanf(“%d”,&a);
if(a%2==0)
{
Pintf(“%d是偶數(shù)!\n”,a);
}
else
{
Pintf(“%d是奇數(shù)!\n”,a);
}```
舉例2:

int a=0;
printf(“請(qǐng)輸入一個(gè)有效的分?jǐn)?shù)(0-100):”);
scanf(“%d”,&a);
if(a<60)
{
  Printf(“%d是不及格螺句!\n”虽惭,a);
}
else if(a<80)
{
  Printf(“%d是及格!\n”蛇尚,a);
}
else if(a<90)
{
  Printf(“%d是優(yōu)良芽唇!\n”,a);
}
else
{
  Printf(“%d是優(yōu)秀取劫!\n”披摄,a);
}```
**7.條件判斷之switch開(kāi)關(guān)語(yǔ)句**

Swith(表達(dá)式)
{
case值1:
做是值1的事
break;
case值2:
做是值2的事
break勇凭;
...........
default:
如果前面的值都不是的事
}```
舉例1:

int a;
scanf(“%d”,&a);
if (a==0)
{
  printf(“零\n”);
}
else If (a==1)
{
  printf(“壹\n”);
}
else If (a==2)
{
  printf(“貳\n”);
}
else If (a==3)
{
  printf(“叁\n”);
}
else  If (a==4)
{
  printf(“肆\n”);
}
else If (a==5)
{
Printf(“伍\n”);
}
else  If (a==6)
{
  printf(“陸\n”);
}
else If (a==7)
{
  printf(“柒\n”);
}
else If (a==8)
{
  printf(“捌\n”);
}
else If (a==9)
{
  printf(“玖\n”);
}
else
{
  printf(“對(duì)不起义辕,無(wú)法轉(zhuǎn)換虾标!”);
}```
舉例2:

switch(a)
{
case 0:
printf(“零\n”);
break灌砖;
case 1:
printf(“壹\n”);
break璧函;
case 2:
printf(“貳\n”);
break;
case 3:
printf(“叁\n”);
break基显;
case 4:
printf(“肆\n”);
break蘸吓;
case 5:
printf(“伍\n”);
break;
case 6:
printf(“陸\n”);
break撩幽;
case 7:
printf(“柒\n”);
break库继;
case 8:
printf(“捌\n”);
break箩艺;
case 9:
printf(“玖\n”);
break;
default:
printf(“對(duì)不起宪萄,無(wú)法轉(zhuǎn)換\n”);
break艺谆;
}```
8.循環(huán)之for語(yǔ)句
從某一處開(kāi)始,連續(xù)不斷的做一件事拜英,就叫循環(huán)静汤。

for(表達(dá)式1(賦值語(yǔ)句 初值);表達(dá)式2(條件)居凶;表達(dá)式3(增值的賦值語(yǔ)句))
{
  循環(huán)要做的事(一行或多行代碼)
}```
舉例1:

for(int i=0虫给;i<8;i++)
{
printf(“1\n”);(輸出8個(gè)1)
}```
舉例2:

for(int i=1侠碧;i<101抹估;i++)
{
  printf(“%d\n”,i);(輸出1到100的數(shù))
}```
舉例3:

for(int i=11;i<=55舆床;i=i+3)
{
printf(“%d\n”,i);(輸出11棋蚌、14、17.挨队。谷暮。。盛垦。湿弦。。53)
}```
舉例4:

for(int i=9腾夯;i>0颊埃;i--)
{
  printf(“%d\n”,i);(輸出987654321)
}```
Continue:結(jié)束本次循環(huán),開(kāi)始下一次循環(huán)
Break:跳出循環(huán)
For循環(huán)的嵌套:外面的for循環(huán)一次蝶俱,里面的for循環(huán)一圈班利,再循環(huán)到外面的for。
舉例5:

int a=9榨呆;
scanf(“%d”,&a);
for(int i=a罗标;i>0;i--)
{
for(int j=1积蜻;j<=3闯割;j++)
{
printf(“%d\n”,j)
}
}
(當(dāng)輸入5時(shí),輸出5個(gè)123)```
9.循環(huán)之while語(yǔ)句

while(條件)
{
  循環(huán)體
}```
舉例1:

int sum=0竿拆,i宙拉;
for(i=1;i<=100;i++)
{
sum=sum+i
}
printf(“sum=%d\n”,sum);(5050)```
舉例2:

int sum=0丙笋,i谢澈;
for(i=1;i<=100煌贴;i++)
{
  sum=sum+i
  if(sum=3003)
  {
    break;
  }
}
printf(“i=%d\n”,i);(77)```
舉例3:

int i=0澳化;
while(i<100)
{
i++崔步;
Printf(“%d\n”,i);
}
(輸出1-100)```
舉例4:

int i=0,sum=0缎谷;
while(sum井濒!=3003)
{
  i++;
 sum+=i
}
printf(“i=%d\n”,i);(77)```
**10.循環(huán)之do while語(yǔ)句**

do
{
循環(huán)體
}while(條件)列林;```
舉例1:

int i=0瑞你,sum=0;
do
{
  i++希痴;
 sum+=i
}while(sum者甲!=3003);
printf(“i=%d\n”,i);(77)```
當(dāng)知道循環(huán)次數(shù)的時(shí)候砌创,用for循環(huán)虏缸,當(dāng)不知道循環(huán)次數(shù)的時(shí)候,用while或do while循環(huán)嫩实。
舉例:

int n刽辙;(保存總?cè)藬?shù))
int score;(成績(jī))
int sum=0;(總分)
printf(“請(qǐng)輸入你班級(jí)總?cè)藬?shù)”)
scanf(“%d”,&n)
for(int i=1;i<=n甲献;i++)
{
printf(“請(qǐng)輸入第%d名同學(xué)成績(jī)”宰缤,i);
scanf(“%d”晃洒,&score)慨灭;
sum+=score;
}
printf(“平均分是%g\n,sum*1.0/n”);```
舉例:

int n=0球及;(計(jì)數(shù)器)
int sum=0;(累加器)
int temp氧骤;(每一名同學(xué)成績(jī))
printf(“請(qǐng)輸入第%d名同學(xué)成績(jī)”,n+1)吃引;
scanf(“%d”筹陵,&temp);
while(temp>0)
{
  n++际歼;
  sum+=temp;
  printf(“請(qǐng)輸入第%d名同學(xué)成績(jī)”姑蓝,n+1)鹅心;
  scanf(“%d”,&temp)纺荧;
}
printf(“平均分是%g\n旭愧,sum*1.0/n”);```
**11.函數(shù)**
1.在程序的不同地方出現(xiàn)了相同的代碼
2.把大的應(yīng)用改成幾個(gè)小的部分
定義(函數(shù)的主體部分颅筋,代表函數(shù))
聲明(告訴下面的代碼這個(gè)函數(shù)存在,你可以使用它)
調(diào)用(使用函數(shù))
返回值 函數(shù)的名字(參數(shù)的列表)——函數(shù)頭
{
函數(shù)體
}
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2641649-e2513328610eebc4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
Printf(“11”);相同時(shí)输枯,就用函數(shù)议泵,例如:
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2641649-8497a76252f11882.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**12.自定義函數(shù)**
舉例1.
![](http://upload-images.jianshu.io/upload_images/2641649-c923fa9b76bdbca1.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
舉例2.
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2641649-8a4a12fca36f7726.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**13.函數(shù)的調(diào)用**
點(diǎn)右鍵-——add file to-——add.c/add.h文件
Add.c文件:{
float add(float a,float b桃熄,float c先口,)定義
Return a+b+c;
}
Add.h文件:float add(float a瞳收,float b碉京,float c,)螟深;聲明
![](http://upload-images.jianshu.io/upload_images/2641649-7cec7d9c8a62cdd9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
全局變量(定義在所有函數(shù)外面的變量叫全局變量)
局部變量(定義在大括弧里面的變量)
變量的作用域谐宙,就是變量的生命周期:在大括號(hào)外面使用不了里面的變量,里面能夠使用外面的變量(里面能夠看到外面)
**14.數(shù)組**
要想使用數(shù)組界弧,就必須先定義它凡蜻。
語(yǔ)法:  數(shù)據(jù)類(lèi)型 數(shù)組名稱(chēng)[整型常量]
舉例:```Int cj[6]```

(1).逐一賦值Int cj[0]=44;Int cj[1]=55垢箕;..........Int cj[5]=99划栓;
(2).在定義時(shí)賦值Int cj[6]={44,55,66,77,88,99};
(3).for循環(huán)賦值
for(int i=0,i<6舰讹,i++)
{
cj[i]=60+i
}
printf(“cj[%d]=%d”,i,cj[i]);```
15.二維數(shù)組
在c語(yǔ)言中茅姜,字符串就是使用字符數(shù)組來(lái)保存的
(1)

        char chh[]={‘a(chǎn)’,’a’,’a’,’a’,’\0’};
        Printf(“%s”,chh);(輸出的是aaaa)```
(2)

char chh[]=”hello”;相當(dāng)于char chh[6]={‘h’,’e’,’l’,’l’,’o’,’\0’};```
(3)

int n[3][3]={{0,1,2},{3,4,5},{6,7,8}};```
**16.指針**
(1)
int a;
a=123月匣;
printf(“%d”,*&a)```
&變量   取地址的符號(hào)
*地址   得到地址里面的內(nèi)容```
(2)

{
int a钻洒;
a=123;
printf(“a=%d\n”,a);
int * p;
p=&a;
*p=250;
printf(“a=%d\n”,a);
return 0;
}第一次輸出123锄开,第二次輸出250.```
(3)指針使用的情況:
1.在一個(gè)函數(shù)里面想訪問(wèn)另一個(gè)函數(shù)里的變量
2.動(dòng)態(tài)內(nèi)存申請(qǐng)



17.數(shù)組與指針
數(shù)組名就是一個(gè)指針

{
  int a[10];
  for(int i=0;i<10;i++)
  {
    a[i]=i+1
  }
  int * p=a ;
  printf(“a[9]=%d\n”,*(p+9))
}```

輸出數(shù)組
{
int a[10];
for(int i=0;i<10;i++)
{
a[i]=i+1
}
int * p=a ;
for(int i=0;i<10;i++)
{
printf(“a[%d]=%d\n”,i,*(p+i)) ;
}
}```
18.字符串

#include<string.h>
Strlen計(jì)算字符串的長(zhǎng)度
Strcat字符串相連
Strcmp字符串的比較0代表相等
Strcpy字符串的賦值```
**19.結(jié)構(gòu)體**

語(yǔ)法: Struct結(jié)構(gòu)名稱(chēng)
{
結(jié)構(gòu)的數(shù)據(jù)
};```
舉例1.:


舉例2:

20.結(jié)構(gòu)體的使用
結(jié)構(gòu)是可以嵌套的素标,結(jié)構(gòu)中還可以有結(jié)構(gòu)。

別名typedef```
![](http://upload-images.jianshu.io/upload_images/2641649-9a7664c72fd96292.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**21.聯(lián)合和枚舉**

聯(lián)合union```
結(jié)構(gòu)中的成員都有自己?jiǎn)为?dú)的內(nèi)存萍悴,聯(lián)合中的成員是共同使用內(nèi)存头遭。對(duì)于聯(lián)合,在同一時(shí)間只能使用一個(gè)成員癣诱。



聯(lián)合在程序中的運(yùn)用:


枚舉enum(羅列值)```
**22.文件**
1.打開(kāi)文件fopen
2.對(duì)文件進(jìn)行操作(讀r或?qū)憌)
  寫(xiě)文件有3個(gè)函數(shù):fputc寫(xiě)一個(gè)字符计维;fputs寫(xiě)一個(gè)字符串;fprintf用格式化的寫(xiě)撕予。
  讀文件的函數(shù):fscanf
3.關(guān)閉文件fclose
![](http://upload-images.jianshu.io/upload_images/2641649-5d16cbbfb190df4b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
舉例:

{
FILE * fp=NULL鲫惶;
fp=fopen(“abc.txt”,”w”);第一個(gè)參數(shù)是要打開(kāi)的文件;第二個(gè)參數(shù)是操作的類(lèi)型w r
if(fp==NULL)
{
printf(“打開(kāi)文件失斒德铡欠母!”)欢策;
return 0;
}
for(int i=’a’;i<=’z’;i++)
{
fputc(i,fp);輸出a到z的26個(gè)字母
}
fclose(fp)赏淌;
return 0踩寇;
}```
23.二進(jìn)制文件
寫(xiě)文件:fwrite


讀文件:fread

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市六水,隨后出現(xiàn)的幾起案子俺孙,更是在濱河造成了極大的恐慌,老刑警劉巖缩擂,帶你破解...
    沈念sama閱讀 216,496評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鼠冕,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡胯盯,警方通過(guò)查閱死者的電腦和手機(jī)懈费,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)博脑,“玉大人憎乙,你說(shuō)我怎么就攤上這事〔嫒ぃ” “怎么了泞边?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,632評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)疗杉。 經(jīng)常有香客問(wèn)我阵谚,道長(zhǎng),這世上最難降的妖魔是什么烟具? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,180評(píng)論 1 292
  • 正文 為了忘掉前任梢什,我火速辦了婚禮,結(jié)果婚禮上朝聋,老公的妹妹穿的比我還像新娘嗡午。我一直安慰自己,他們只是感情好冀痕,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布荔睹。 她就那樣靜靜地躺著,像睡著了一般言蛇。 火紅的嫁衣襯著肌膚如雪僻他。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,165評(píng)論 1 299
  • 那天腊尚,我揣著相機(jī)與錄音吨拗,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛丢胚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播受扳,決...
    沈念sama閱讀 40,052評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼携龟,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了勘高?” 一聲冷哼從身側(cè)響起峡蟋,我...
    開(kāi)封第一講書(shū)人閱讀 38,910評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎华望,沒(méi)想到半個(gè)月后蕊蝗,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,324評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡赖舟,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評(píng)論 2 332
  • 正文 我和宋清朗相戀三年蓬戚,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宾抓。...
    茶點(diǎn)故事閱讀 39,711評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡子漩,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出石洗,到底是詐尸還是另有隱情幢泼,我是刑警寧澤,帶...
    沈念sama閱讀 35,424評(píng)論 5 343
  • 正文 年R本政府宣布讲衫,位于F島的核電站缕棵,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏涉兽。R本人自食惡果不足惜招驴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望花椭。 院中可真熱鬧忽匈,春花似錦、人聲如沸矿辽。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,668評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)袋倔。三九已至雕蔽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宾娜,已是汗流浹背批狐。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,823評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人嚣艇。 一個(gè)月前我還...
    沈念sama閱讀 47,722評(píng)論 2 368
  • 正文 我出身青樓承冰,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親食零。 傳聞我的和親對(duì)象是個(gè)殘疾皇子困乒,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評(píng)論 2 353

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

  • 版權(quán)聲明:本文為 gfson 原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明出處贰谣。注:作者水平有限娜搂,文中如有不恰當(dāng)之處,請(qǐng)予以指正吱抚,萬(wàn)分感謝...
    gfson閱讀 2,969評(píng)論 0 6
  • 指針是C語(yǔ)言中廣泛使用的一種數(shù)據(jù)類(lèi)型百宇。 運(yùn)用指針編程是C語(yǔ)言最主要的風(fēng)格之一。利用指針變量可以表示各種數(shù)據(jù)結(jié)構(gòu)秘豹; ...
    朱森閱讀 3,440評(píng)論 3 44
  • 【作者】王雅葉 都是一些門(mén)店以及員工規(guī)范指南携御。 【繪制心得】 其中綠色部分13個(gè)方案,完全寫(xiě)不下既绕,只好用另一張紙畫(huà)...
    王雅葉Yvonne閱讀 377評(píng)論 0 0
  • 摘文 正處在哺乳期的媽媽?zhuān)藭r(shí)為了寶寶的健康及自身健康著想因痛,切忌貪食,什么東西都吃岸更。那么哪些水果或食物是在哺乳期不...
    媛媛小屋閱讀 322評(píng)論 0 1
  • 今天鸵膏,我迎來(lái)了畢生最后的兒童節(jié)。這本該是十分快樂(lè)的怎炊,而我卻迷惘了谭企。“千門(mén)萬(wàn)戶(hù)曈曈日评肆,總把新桃換舊符”债查。新年的的喜慶...
    瑞峰007閱讀 330評(píng)論 0 0