1樓:匿名使用者
前三個賦值語句都是正確的。選項d是錯誤的,a是陣列,只能對陣列元素賦值,要有下標。選d。
2樓:匿名使用者
d是錯的,陣列名是位址,這個位址不可以修改。
設有以下語句,則()不是對a陣列元素的正確引用,其中0<=i<10
3樓:匿名使用者
四個選bai項中,d不是對a陣列元素的正du確引用。
int a[10]=, *p=a;
相當zhi於
int a[10]=;
int *p;//定義p為執行daoint的指標變數
p = a; //a為陣列名,版代表數權組的起始位址
a、p的值是乙個位址(陣列a的起始位址),所以p-a = 0,那麼a[p-a]相當於a[0]
b、a[i]是陣列的乙個元素,&a[i]是陣列的元素的位址,*(&a[i])相當於a[i]
c、p[i] <=> *(p+i), p+i的結果是乙個位址,*(p+i)就是對陣列中下標為i的元素的訪問
d、a+i的值是乙個位址,*(a+i)<=>a[i],也就是說表示式*(a+i)的值是乙個整數,在表示式*(*(a+i))中,最左邊的*,相當於是對乙個整數進行解引用,所以是非法的。
設有定義語句:int a=3, b, *p=&a;要將變數a的值賦給變數b,下列語句中不正確的賦值方式是______。
4樓:匿名使用者
選d*是用來取指標指向的位址中的資料的.a不是指標,當然不能寫作*a了.
而b=*&a之所以對是因為:
int *p=&a;它相當於int *p;p=&a; p是指標,所以&a也是指標,所以才會有*(&a)之說啊
若有以下定義和語句: int a[10]={1,2,3,4,5,6,7,8,9,10},p=a; 則不能表示a陣列元素的表示式是( ) a) *p b)
5樓:墨汁諾
不能表示a陣列元素的表示式是( b) a[10] )----因為陣列a的最大下標只能是9,即a[9],
a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],一共10個元素。
a、*p ---表示取p指標指向的單元的值,即表示取陣列a的首個元素a[0]的值。
b、a[10] ---因為陣列a一共10個元素,從0開始計數,
即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],正好10個,沒有a[10],所以a[10]就是不能表達這個陣列元素。
c、*a ----陣列名a中儲存的是陣列的首位址,*是取單元中的值,*a就是取陣列首位址中單元中a[0]的值。
d、a[p-a] --- p指向的是陣列a,因為p中與a同資料相同都是陣列a的首位址,而p-a就等於0,因此 a[p-a]就相當於a[0]。
6樓:匿名使用者
選b)a[10] a[0]、a[1]、a[2]......a[9]分別是陣列a[10]的十個元素,故a[10]不能表示a陣列的元素。
7樓:匿名使用者
選 b a[10]
陣列是從a[0] 到 a[9] 的。。。。。。
設有語句int a 3則執行了語句a a a a後
a a a等價於a a a a,a 6a a等價於a a a,a 12 所以變數a的值是 12 擴充套件資料由於變數讓你能夠把程式中準備使用的每一段資料都賦給乙個簡短 易於記憶的名字,因此它們十分有用。變數可以儲存程式執行時使用者輸入的資料 如使用inputbox函式在螢幕上顯示乙個對話方塊,然後把...
設有定義語句「int a 4123則a的值為多少?a的值為多少?能有詳細解題步驟嗎
這是乙個二 來維陣列,a 3 4 列舉出源來就是 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 a 0 代表第一行,a 1 代表第二行.a 1 1 代表第二行第二列的值,a 2 1 代表第三行第二列的值...
設有變數定義inta21,2,3,4,5,6pa表示式p2p
p 2 a表示來 將p定義為乙個指向自 含2個元素的一維陣列的指標變數,那麼二維陣列就可以看作是一維陣列a 3 其中每乙個元素都是乙個一維陣列,a 1 a 2 a 3 則p 2就指向了a 3 p 2 是a 3 的首位址,p 2 就是a 3 的首元素,即為5。p 2 p 2 這兩個表示式是等價的,當然...