幾道C語言數組的選擇題.,一題一分1.若有以下語句,則下面【】是正
1、B 這兩種定義不同,因為x字符串后面有\0,多1個字節.2、D 字符串只能這么比較3、A 該程序就是將字符串轉變為整型4、B 選項D不行,必須在語句前申明變量5、B6、C 只能省略第一個值7、C8、B 只能省略第一個值9、C 注意數組邊界,a[4]是0~3,沒有4.10、D11、D 舉幾個特例12、B scanf輸入字符串是不用加&的(和變量不同),gets()只能有一個參數,即gets(a);13、【1】a[i]【2】i % 4 == 0【3】printf("\n");。
c語言中數組有什么作用
所謂數組,是有序的元素序列。數組是在程序設計中,為了處理方便, 把具有相同類型的若干元素按無序的形式組織起來的一種形式。這些無序排列的同類數據元素的集合稱為數組。
比如油煙機的風扇轉速會和工作的模式之間有一定的關系,那么我們就可以把它的工作模式和一維數組的下標對應起來,我們將具體的轉速放在數組中,這樣的話就非常方便我們在日后查詢。
再比如說家中的冷暖燈光控制這方面,色溫燈里會有兩個燈珠,分別對應的是冷光和暖光,選擇不同的模式燈光的顏色就不同,我們就可以將這兩種燈光的亮度pwm值事先放在二維數組中,以便調用調光。
在程序中合理地使用數組,會使程序的結構比較整齊,而且可以把較為復雜的運算,轉化成簡單的數組來表示。
擴展資料:
一、使用規則:
1、可以只給部分元素賦初值。當{ }中值的個數少于元素個數時,只給前面部分元素賦值。
2、只能給元素逐個賦值,不能給數組整體賦值。
(請注意:在C、C#語言中是這樣,但并非在所有涉及數組的地方都這樣,數據庫是從1開始。)
3、若不給可初始化的數組賦初值,則全部元素均為0值。
4、假如給全部元素賦值,則在數組說明中, 可以不給出數組元素的個數。
動態賦值可以在程序執行過程中,對數組作動態賦值。這時可用循環語句配合scanf函數逐個對數組元素賦值。
二、表示方法:
數組元素是組成數組的基本單元。
數組元素也是一種變量, 其標識方法為數組名后跟一個下標。下標表示了元素在數組中的順序號。數組元素的一般形式為:數組名[下標] 其中的下標只能為整型常量或整型表達式。
如為小數時,C編譯將自動取整。例如,a[5],a[i+j],a[i++]都是合法的數組元素。數組元素通常也稱為下標變量。必須先定義數組, 才能使用下標變量。在C語言中只能逐個地使用下標變量, 而不能一次引用整個數組。
參考資料:百度百科-數組
C語言里數組元素是什么
元素組成了數組,數組的定義為 ,
int a[10];
其中 int 為類型,即整型(還有字符型 char 和float 實型等)
a 為數組名 [] 為下標符號,里面的數字常量為 數組的第幾號成員元素。
例如 a[0]為 數組a[10]的第一號成員元素。
這里有點要注意的是,數組元素下標值是從0開始的,即你定義a[10],
則他的成員數為a[0]到a[9].千萬不要把a[10]也當成了他的成員了。
至于元素,例如你定義一個變量 int a;
那么 你可以讓 a 成為數組 a[10]的一個元素。如果你要用到很多變量的話,
總不能定義N個變量吧! 這個時候你就可以用數組了來表示哪些個變量了!
但是定義數組的時候一定要定義他的下標值,即a[10]中[]內必須為一個常量。
關于c語言的數組作用
c語言中數組有什么作用這一個問題有人提問且“加精”,如下:數組在內存中分配是棧內存,是【連續】存儲【同一種類型】的【線性】結構。
它的作用主要體現在對同一類型的數據進行存儲。(要是int型,全都是int型,要是char型,全都是char型),不可以出現其他類型。
對數據的訪問是具名訪問,可是直接讀出數據中某一塊的數據,例如 int array[5]={1,2,3,4,5}; array[3]等于3.這里需要注意的是:數組的下標是從0開始的。如果你想訪問array[5],會提示錯誤,因為已經越界了。
提取數據比較方便,因為數組在內存中是連續存儲數據的,好找。隨便說句,數組可以當指針用,但它絕不是指針。
C語言數組的定義以及使用
定義:組是在程序設計中,為了處理方便, 把具有相同類型的若干變量按有序的形式組織起來的一種形式。這些按序排列的同類數據元素的集合稱為數組。
實際應用:
#include <stdio.h>
void main()
{
int ary[10];//數組聲明,可存放10個元素,序號是0~9
int i;
for(i=0;i<10;i++)
{
printf("請按數序輸入第%d個數:",i+1);
scanf("%d",&ary[i]); //依次輸入十個整數并保存到數組
}
//數組輸出
printf("您輸入的十個數為:\n");
for(i=0;i<10;i++)
{
printf("%d,"a[i]);
}
}
c語言數組
聲明數組的語法為在數組名后加上用方括號括起來的維數說明.
如:
int day[10];
這條語句定義了一個具有10個整型元素的名為day的數組。這些整數在內存中是連續存儲的。
c語言在編譯的時候會根據你的數組的聲明在內存中開辟出一段連續的空間用來做數組的存儲地址。因此在聲明數組時必須賦長度。
數組聲明時不能用變量,因為其內存的分配在程序運行前,而不是使用數組的時候。
如果你不確定數組的長度可以考慮用動態數組。如一維數組,不知道數組大小可以這樣做:
int *a;
int n=10;
a=(int *)malloc(n*sizeof(int));
malloc()為動態申請內存函數,默認返回值是void型指針,因此需要在返回值前規定其類型。
上面三行語句就實現了建立一個長度為n(本例n=10)的一維數組。其中n為變量,可以根據程序運行中n的長度建立數組 。
C語言中的數組什么意思
把具有相同數據類型的若干變量按有序的形式組織起來,以便于程序處理,這些數據元素的集合就是數組,按照數組 元素的類型不同,可分為:數值數組、字符數組、指針數組 結構數組等各種類別。
數組說明的一般形式為: 類型說明符 數組名[常量表達式],。
; 其中類型說明符可以是任一種基本數據類型或構造數據類型 數組名是定義的數組標識符。常量表達式表示數據元素的個 數,也就是數組的長度。
對數組類型的說明應注意:1)數組的類型實際上是數組元素的取值類型。2)數組名的書寫應符合標識符的書寫規范。
3)數組名不能與其他變量名相同。4)常量表達式表示數組元素的個數,但是其下標從0開始計算5)不能在方括號中用變量來表示元素的個數,但是可以用符號 常數或常量表達式。
6)允許在同一個類型說明中,說明多個數組和多個變量。數組元素的表示方法 一般比較簡單就是數組名[下標]來引用,先定義后用,如果 是小數的話,直接自動取整。
數組賦值分為:初始化賦值和動態賦值 初始化賦值一般形式為:static 類型說明符 數組名[常量表達式]={值,值。
}; static表示靜態存儲類型,c語言規定只有靜態存儲數組和外部數組 才可做初始化賦值。c語言對數組的初始化賦值還有幾個規定:1)可以只給部分元素賦值。
2)只能給元素逐個賦值,不能給數組整體賦值。3)如不給可初始化的數組賦初值,在在數組說明中,可以不給出數組 元素的個數。
下面看一下多維數組 主要看一下二維數組,其他的就可以用二維數組類推得到 二維數組的類型說明的一般形式是:類型說明符 數組名[常量表達式1][常量表達式2]。;在c語言中二維數組是按行排列的 二維數組的表示方法:數組名[下標][下標] 二維數組的初始化 二維數組初始化也是在類型說明時給各下標變量賦以初值。
二維數組可 按行分段賦值,也可按行連續賦值。二維數組的初始化還應該注意:1)可以只對部分元素賦初值,未賦初值的元素自動取為0。
2)如對全部元素賦初值,則第一維的長度可以不給出。字符數組:用來存放字符變量的數組稱為字符數組。
C語言允許用字符串的方式對數組作初始化賦值。例如: static char c[]={'c', ' ','p','r','o','g','r','a','m'}; 可寫為:static char c[]={"C program"}; 或去掉{}寫為:sratic char c[]="C program"; 用字符串方式賦值比用字符逐個賦值要多占一個字節, 用于存放字符串結 束標志'\0'。
上面的數組c在內存中的實際存放情況為: C program\0`\0'是 由C編譯系統自動加上的。由于采用了`\0'標志,所以在用字符串賦初值時一 般無須指定數組的長度, 而由系統自行處理。
在采用字符串方式后,字符數 組的輸入輸出將變得簡單方便。 除了上述用字符串賦初值的辦法外,還可用 printf函數和scanf函數一次性輸出輸入一個字符數組中的字符串, 而不必 使用循環語句逐個地輸入輸出每個字符。
void main() { static char c[]="BASIC\ndBASE"; printf("%s\n",c); } printf("%s\n",c); 注意在本例的printf函數中,使用的格式字符串為"%s", 表示輸出的是一 個字符串。而在輸出表列中給出數組名則可。
不能寫為: printf("%s",c[]); void main() { char st[15]; printf("input string:\n"); scanf("%s",st); printf("%s\n",st); } char st[15]; 本例中由于定義數組長度為15, 因此輸入的字符串長度必須小于15,以留出一個字節用于存放字符串結束標志`\0`。 應該說明的是,對一個字 符數組,如果不作初始化賦值,則必須說明數組長度。
還應該特別注意的是,當用scanf函數輸入字符串時,字符串中不能含有空格,否則將以空格作為串 的結束符。例如運行例4.8,當輸入的字符串中含有空格時,運行情況為: input string:this is a book this 從輸出結果可以看出空格以后的字符 都未能輸出。
為了避免這種情況, 可多設幾個字符數組分段存放含空格的 串。程序可改寫如下:Lesson void main() { char st1[6],st2[6],st3[6],st4[6]; printf("input string:\n"); scanf("%s%s%s%s",st1,st2,st3,st4); printf("%s %s %s %s\n",st1,st2,st3,st4); } 本程序分別設了四個數組, 輸入的一行字符的空格分段分別裝入四個數組。
然后分別輸出這四個數組中的字符串。在前面介紹過,scanf的各輸入項必須以 地址方式出現,如 &a,&b等。
但在例4.8中卻是以數組名方式出現的,這是為 什么呢?這是由于在C語言中規定,數組名就代表了該數組的首地址。 整個 數組是以首地址開頭的一塊連續的內存單元。
如有字符數組char c[10],在 內存可表示如圖4.2。設數組c的首地址為2000,也就是說c[0]單元地址為2000。
則數組名c就代表這個首地址。因此在c前面不能再加地址運算符&。
如寫作 scanf("%s",&c);則是錯誤的。 在執行函數printf("%s",c) 時,按數組名c 找到首地址,然后逐個輸出數組中各個字符直到遇到字符串終止標志'\0'為止。
字符串常用函數:用于輸入輸出的字符串函數在使用前應包含頭文件"stdio.h",使用其他字符串 函數則應包含頭文件"string.h".下面介紹幾個常用的字符串函數:1)字符串輸出函數 puts 格式:puts(字符數組名) 功能:把字符數組中的字符 串輸出到顯示器。#include"stdio.h" main() { 。
C語言中都有什么類型數組
我們常見的C需要類型數組有:
char:只允許輸入字符,
int:是整型變量,輸入整數,范圍不大,在-32767到32767,
float:輸入可以使小數也可以輸入整數,在不確定的情況下,就用float,范圍還是比較的大,
double:如果說float是四個字節的話,大伯是八個字節。范圍比float大好多。
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。 盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性。
以一個標準規格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平臺。 二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言制定了一套完整的美國國家標準語法,稱為ANSI C,作為C語言最初的標準。
目前2011年12月8日,國際標準化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標準,也是C語言的最新標準,該標準更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。