亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

C語(yǔ)言

C語(yǔ)言數(shù)組知識(shí)點(diǎn)總結(jié)

時(shí)間:2024-10-17 03:01:25 C語(yǔ)言 我要投稿
  • 相關(guān)推薦

C語(yǔ)言數(shù)組知識(shí)點(diǎn)總結(jié)

  C語(yǔ)言是把高級(jí)語(yǔ)言的基本結(jié)構(gòu)和語(yǔ)句與低級(jí)語(yǔ)言的實(shí)用性結(jié)合起來(lái)的工作單元,下面是關(guān)于C語(yǔ)言數(shù)組知識(shí)點(diǎn)總結(jié),歡迎參考!

C語(yǔ)言數(shù)組知識(shí)點(diǎn)總結(jié)

  數(shù)組

  定義:數(shù)組是有序的并且具有相同類型的數(shù)據(jù)的集合。

  一維數(shù)組

  1、一般形式:類型說(shuō)明符數(shù)組名[常量表達(dá)式];例如:inta[10];元素為a[0]----a[9].

  2、常量表達(dá)式中不允許包含變量,可以包含常量或符號(hào)常量。

  3、數(shù)組元素下標(biāo)可以是任何整型常量、整型變量或任何整型表達(dá)式。

  4、可以對(duì)數(shù)組元素賦值,數(shù)組元素也可以參與運(yùn)算,與簡(jiǎn)單變量一樣使用。

  5、使用數(shù)值型數(shù)組時(shí),不可以一次引用整個(gè)數(shù)組,只能逐個(gè)引用元素。

  6、需要整體賦值時(shí)只可以在定義的同時(shí)整體賦值。如

  int a[10]={0,1,2,3,4,5,6,7,8,9};正確。

  int a[10]; a[10]={0,1,2,3,4,5,6,7,8,9};錯(cuò)誤。

  7、可以只給一部分元素賦值。例如:

  int a[10]={5,8,7,6};后面沒(méi)有賦值的元素值默認(rèn)為0。

  8、對(duì)全部數(shù)組元素賦值時(shí)可以不指定數(shù)組長(zhǎng)度,例如:

  int a[10]={0,1,2,3,4,5,6,7,8,9};可以寫成 int a[]={0,1,2,3,4,5,6,7,8,9};

  但是,既不賦初值,也不指定長(zhǎng)度是錯(cuò)誤的。例如:int a[];錯(cuò)誤。

  二維數(shù)組

  1、一般形式:類型說(shuō)明符數(shù)組名[常量表達(dá)式1][常量表達(dá)式2];例如:

  int a[3][4];可以看成是包含3個(gè)一維數(shù)組,每個(gè)一維數(shù)組里包含4個(gè)元素。一共3*4=12個(gè)元素。所有元素為a[0][0],a[0][1],a[0][2],a[0][3]

  a[1][0],a[1][1],a[1][2],a[1][3]

  a[2][0],a[2][1],a[2][2],a[2][3]

  2、與一維數(shù)組一樣元素下標(biāo)可以是是任何整型常量、整型變量或任何整型表達(dá)式。

  3、需要整體賦值時(shí)只可以在定義的同時(shí)整體賦值。例如:

  int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};正確。

  int a[3][4]; a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};錯(cuò)誤。

  4、可以把所有數(shù)據(jù)寫在一個(gè)花括號(hào)內(nèi)。例如:

  int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};正確。

  5、可以只對(duì)部分元素賦值。例如:

  int a[3][4]={{1},{5},{9}};其余未賦值的元素默認(rèn)為0。

  int a[3][4]={{1},{5,6}};可以看成是int a[3][4]={{1,0,0,0},{5,6,0,0},{0,0,0,0}};

  6、對(duì)全部數(shù)組元素賦值時(shí)可以省略第一維長(zhǎng)度,第二維不可以省略。例如:

  a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

  可以寫成a[][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

  或者a[][4]={1,2,3,4,5,6,7,8,9,10,11,12};

  字符數(shù)組

  1、定義:char a[10];字符數(shù)組a長(zhǎng)度為10。每個(gè)元素只能存放一個(gè)字符。例如:

  a[0]='h';a[1]='a';a[2]='p';

  2、初始化:

  char a[]={'h','a','p','p','y'};

  char a[]="happy";

  char a[]={"happy"}; 注意,因?yàn)樽址Y(jié)尾自動(dòng)加'',所以char a[]="happy";長(zhǎng)度為6,不是5。

  3、C語(yǔ)言中沒(méi)有字符串變量,字符串的輸入、存儲(chǔ)、處理和輸出等必須通過(guò)字符數(shù)組實(shí)現(xiàn)。

  4、字符串的輸入。

  scanf();可以用%C逐個(gè)字符輸入比如char a[6];for(i=0;i<6;i++) scanf("%c",&a[i]);

  可以用%S以字符串的形式輸入,比如char a[6];scanf("%s",a);注意,a前不用加&,因?yàn)閍是數(shù)組名,

  已經(jīng)代表了數(shù)組首地址。

  注意:以%S輸入時(shí),以第一個(gè)非空白字符開始,終止于第一個(gè)空白字符。比如:輸入How are you

  時(shí)。只輸出How.

  gets();作用為輸入一個(gè)字符串。與scanf();功能一致,但空格和回車都存放在數(shù)組中,最后自動(dòng)加入‘’.

  不會(huì)出現(xiàn)上面輸出不全的情況。

  調(diào)用方式為:gets(數(shù)組名);需要包含頭文件“stdio.h”.

  5、字符串的輸出。

  printf();可以使用%C逐個(gè)字符輸出,比如:char a[6];for(i=0;i<6;i++) printf("%c",a[i]);

  可以用%S以字符串的形式輸出,比如char a[6];printf("%s",a);

  puts();輸出一個(gè)字符串,結(jié)尾自動(dòng)換行。

  調(diào)用形式:puts(字符數(shù)組名或字符串常量);需包含頭文件“stdio.h”

  常用字符串處理函數(shù)(以下函數(shù)需要頭文件“string.h”)

  1、strlen()作用是測(cè)試字符串長(zhǎng)度。這里不包括‘’.使用形式strlen(數(shù)組名或字符串常量)

  2、strcat()作用是連接兩個(gè)字符串。調(diào)用方式strcat(字符數(shù)組1名,字符數(shù)組2名);合并后的字符串存放在字

  符數(shù)組1中。

  3、strcmp()比較兩個(gè)字符串是否相等。調(diào)用方式strcmp(字符串1,字符串2);相等時(shí)值為0。1>2時(shí)為正數(shù)。

  1<2時(shí)為負(fù)數(shù)。

  4、strcpy()復(fù)制字符串。調(diào)用方式strcpy(字符數(shù)組1,字符串2);2的內(nèi)容復(fù)制到1中。1只能是字符數(shù)組名。

  拓展閱讀:c語(yǔ)言知識(shí)易錯(cuò)點(diǎn)

  C語(yǔ)言的最大特點(diǎn)是:功能強(qiáng)、使用方便靈活。

  C編譯的程序?qū)φZ(yǔ)法檢查并不象其它高級(jí)語(yǔ)言那么嚴(yán)格,這就給編程人員留下“靈活的余地”,但還是由于這個(gè)靈活給程序的調(diào)試帶來(lái)了許多不便,尤其對(duì)初學(xué)C語(yǔ)言的人來(lái)說(shuō),經(jīng)常會(huì)出一些連自己都不知道錯(cuò)在哪里的錯(cuò)誤。

  1.書寫標(biāo)識(shí)符時(shí),忽略了大小寫字母的區(qū)別。

  2.忽略了變量的類型,進(jìn)行了不合法的運(yùn)算。

  3.將字符常量與字符串常量混淆。

  4.忽略了“=”與“==”的區(qū)別。

  5.忘記加分號(hào)。分號(hào)是C語(yǔ)句中不可缺少的一部分,語(yǔ)句末尾必須有分號(hào)。

  6.多加分號(hào)。復(fù)合語(yǔ)句的花括號(hào)后不應(yīng)再加分號(hào),否則將會(huì)畫蛇添足。

  7.輸入變量時(shí)忘記加地址運(yùn)算符“&”。

  8.輸入數(shù)據(jù)的方式與要求不符。代碼①scanf("%d%d",&a,&b);輸入時(shí),不能用逗號(hào)作兩個(gè)數(shù)據(jù)間的分隔符②scanf("%d,%d",&a,&b);C規(guī)定:如果在“格式控制”字符串中除了格式說(shuō)明以外還有其它字符,則在輸入數(shù)據(jù)時(shí)應(yīng)輸入與這些字符相同的字符。

  9.輸入字符的格式與要求不一致。在用“%c”格式輸入字符時(shí),“空格字符”和“轉(zhuǎn)義字符”都作為有效字符輸入。

  10.輸入輸出的數(shù)據(jù)類型與所用格式說(shuō)明符不一致。

  11.輸入數(shù)據(jù)時(shí),企圖規(guī)定精度。

  12.switch語(yǔ)句中漏寫break語(yǔ)句。

  13.忽視了while和do-while語(yǔ)句在細(xì)節(jié)上的區(qū)別。

  14.定義數(shù)組時(shí)誤用變量。

  15.在定義數(shù)組時(shí),將定義的“元素個(gè)數(shù)”誤認(rèn)為是可使的最大下標(biāo)值。

  16.初始化數(shù)組時(shí),未使用靜態(tài)存儲(chǔ)。

  17.在不應(yīng)加地址運(yùn)算符&的位置加了地址運(yùn)算符。

  18.同時(shí)定義了形參和函數(shù)中的局部變量。

  C語(yǔ)言入門知識(shí):位運(yùn)算

  一、位運(yùn)算符

  在計(jì)算機(jī)中,數(shù)據(jù)都是以二進(jìn)制數(shù)形式存放的,位運(yùn)算就是指對(duì)存儲(chǔ)單元中二進(jìn)制位的運(yùn)算。C語(yǔ)言提供6種位運(yùn)算符。

  二、位運(yùn)算

  位運(yùn)算符&|~<<>>∧按優(yōu)先級(jí)從高到低排列的順序是:

  位運(yùn)算符中求反運(yùn)算“~“優(yōu)先級(jí)最高,而左移和右移相同,居于第二,接下來(lái)的順序是按位與“&“、按位異或“∧“和按位或“|“。順序?yàn)閪<<>>&∧|。

  例1:左移運(yùn)算符“<<”是雙目運(yùn)算符。其功能把“<<”左邊的運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由“<<”右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0。

  例如:

  a<<4

  指把a(bǔ)的各二進(jìn)位向左移動(dòng)4位。如a=00000011(十進(jìn)制3),左移4位后為00110000(十進(jìn)制48)。

  例2:右移運(yùn)算符“>>”是雙目運(yùn)算符。其功能是把“>>”左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位,“>>”右邊的數(shù)指定移動(dòng)的位數(shù)。

  例如:

  設(shè)a=15,

  a>>2

  表示把000001111右移為00000011(十進(jìn)制3)。

  應(yīng)該說(shuō)明的是,對(duì)于有符號(hào)數(shù),在右移時(shí),符號(hào)位將隨同移動(dòng)。當(dāng)為正數(shù)時(shí),最高位補(bǔ)0,而為負(fù)數(shù)時(shí),符號(hào)位為1,最高位是補(bǔ)0或是補(bǔ)1 取決于編譯系統(tǒng)的規(guī)定。

  例3:設(shè)二進(jìn)制數(shù)a是00101101,若通過(guò)異或運(yùn)算a∧b使a的高4位取反,低4位不變,則二進(jìn)制數(shù)b是。

  解析:異或運(yùn)算常用來(lái)使特定位翻轉(zhuǎn),只要使需翻轉(zhuǎn)的位與1進(jìn)行異或操作就可以了,因?yàn)樵瓟?shù)中值為1的位與1進(jìn)行異或運(yùn)算得0 ,原數(shù)中值為0的位與1進(jìn)行異或運(yùn)算結(jié)果得1。而與0進(jìn)行異或的位將保持原值。異或運(yùn)算還可用來(lái)交換兩個(gè)值,不用臨時(shí)變量。

  如 int a=3,b=4;,想將a與b的值互換,可用如下語(yǔ)句實(shí)現(xiàn):

  a=a∧b;

  b=b∧a;

  a=a∧b;

  所以本題的答案為:11110000。

【C語(yǔ)言數(shù)組知識(shí)點(diǎn)總結(jié)】相關(guān)文章:

C語(yǔ)言數(shù)組知識(shí)點(diǎn)03-29

C語(yǔ)言數(shù)組知識(shí)點(diǎn)03-29

什么是C語(yǔ)言數(shù)組01-09

C語(yǔ)言數(shù)組考點(diǎn)知識(shí)點(diǎn)歸納04-20

C語(yǔ)言數(shù)組實(shí)例解析03-28

C語(yǔ)言數(shù)組是什么12-02

c語(yǔ)言多維數(shù)組地址的表示方法07-31

c語(yǔ)言中什么是二維數(shù)組03-20

C語(yǔ)言指針和數(shù)組基礎(chǔ)知識(shí)12-03