C語言選擇題第8題和12題,求大神幫忙給個具體解析和思路,謝

2021-03-20 22:37:09 字數 3243 閱讀 1602

1樓:忘卻世俗的人

在邏輯符號與的兩邊只要有一個為0(假),就返回0,兩邊都為1時返回1,所以a正確,d選項中邏輯與前面的部分:由於x<y所以為真,前面又有個非號所以為0,後面的就不用看答案就出來了

邏輯或的兩邊只要有一個是1,結果就為1,z不為0所以邏輯或的兩邊都為1,返回1,然後加個非,又變成0了

另外邏輯符號是最後判斷的,先判斷兩邊的式子的值

c語言選擇題8,9題,求大神給個具體解答思路和解析,謝謝了,**等。

2樓:匿名使用者

8. 假定 a 為一個整數型別的陣列名,整數型別的長度為 2,則元素 a[4] 的地址比 a 陣列的首地址大 8 個位元組

解析:&a[4] 比 &a[0] 大 4 個元素的大小,而一個元素是 2 位元組,所以 &a[4] - &a[0] == 8

9. 假定 s 被定義為指標型別 char * 的變數,初始指向的字串為 "hello world!",若要使變數 p 指向 s 所指向的字串,則 p 應定義為 char *p = s;

解析:b 選項中 char *p = &s;,該句無意義,由於 s 已經是一個 char * 變數了,再進行 & 操作符只會使它變為一個 char ** 的表示式,賦值到 p 中。

c 選項中 char *p; p = *s;,該句無意義,只是把一個 char 表示式強制轉換成 char * 表示式賦值到 p 中。

d 選項中 char *p; p = &s;,同 b。

所以應選 a。

3樓:匿名使用者

第八題:a陣列的首地址是a[0],a[4]的地址當然是a[4],因為題目告訴

你了,整形型別的長度是 2,並且a[4]-a[0]=4,a[4]比a[0]大四個空間,注意是空間而不是位元組數,所以要算字 節數的話要乘以它的長度,4x2=8,所以選d。

第九題:你要好好學學c語言的指標了,指標變數指向字串用兩種方式,一種就是a選項的指 針初始化,另一種就是先定義再賦值,比如說這個題目的另一種方式是: char *p;p=s;

希望能夠幫到你

c語言程式填空題,求大神具體解析和解題思路。

4樓:不想那年

第一空:定義初始值

float a,b,c;

第二空:判斷是否為三角形,兩邊之和大於第三邊if(a+b>c&&a+c>b&&b+c>a)第三空:三角形面積公式求平方根

s=sqrt(s)

第四空else

注:三角形面積海**式:

三角形面積s=√[p(p-a)(p-b)(p-c)],其中p=(a+b+c)/2

c語言選擇題第4,5,8題,求大神幫忙**解答一下,寫出解題過程和解題思路。

5樓:

此題x=y==z後少了分號。a正確,1。因為前一名使z和y都為10,後一句==的優先順序比=高,所以造價為x=(y==z);,而y==z是成立的(都是10),所以y==z的邏輯結果是1,把1賦給x就使x最後為1了。

c語言選擇題,求大神幫忙解答,為什麼輸出結果不確定?請給出具體解析。

c語言程式填空題,答案已給出,求大神指點,具體解題思路,謝

6樓:匿名使用者

哎,真是想吐槽,在c語言中字串都是以'\0'結尾的。例如char str2 = "abcd"; 題目裡是通過gets來用鍵盤輸入給str2賦值的,所以你輸入abcd實際上是 a b c d \0。 那個while迴圈的結束條件是 !

=\0,所以當i = 4的時候迴圈會跳出,也就是str1實際的值在現在為a b c d,沒有\0。

所以最後那填空那一行就是要把str2結尾的\0賦值給str1,也就是str1[4]= str2[4],也就是題目上的str1[i] = str2[i];、

程式設計不是紙上談兵,可以自己用vs除錯一下。

7樓:

二級c語言有三道上機題,程式填空和程式改錯是按照填寫的源程式內容**評分的,系統會根據**所在第幾行進行評分。所以一定不能擅自增行、刪行以及改變**的行位置。這個一般根據命題人的思路,考慮n中答案,只要和其中之一吻合,就有分。

如果你的思路過於奇葩,命題老師都沒想到這種可能就悲劇了。  還有一道是程式設計題,這道題不檢察源程式**的,怎麼寫都可以。系統會根據最終執行的結果來評分。

編寫完程式後,經儲存、編譯、連線、執行,並且執行成功的,會在考生資料夾下生成一個out.dat檔案,考試系統要求你所生成的out.dat檔案與系統預設的完全一致。

如不一致就證明你的程式有錯誤,就沒有分。如果不瞭解系統評分原理,編寫完程式沒執行,也悲劇了。

一道c語言題,跪求大神解答!我需要的是思路,謝謝! 20

8樓:匿名使用者

3, 2, 6, 5, 4, 1從右向左看到6的時候遞減,所以要替換掉2,在1、4、5、6中4是剛剛比2大,所以4換掉2,然後6125數字從小到大排列。

9樓:止語

這是一個典型的排列問題,關於演算法可以參閱排列演算法,不是一兩句話說得清楚的。關於組合數的這類問題我略有涉及,有好的演算法,如果需要,可以與你分享。排列的問題,我沒有怎麼分析過。

c語言題目第7-8-10題,會做的給個解釋,謝謝了

10樓:匿名使用者

7. p+5,指向的是第6個字元,也就是'e' printf從'e'開始輸出,直到遇到'\0' 所以輸出ef

8. union是各成員

公用一塊記憶體,union所佔的記憶體是成員中,佔記憶體最多的位元組數。 這裡union的成員是flaot和int,都是四位元組,所以它佔4位元組。

stuct佔的記憶體,是各成員所佔記憶體之和:8+4 +4 = 16; (正好是int型別的整數倍,符合記憶體對齊的要求)

9.feof沒啥好說的

10. 巨集定義,就是替換 s(x)用5 *x替換。

s(a +b)替換之後是: 5 *a+b = 7;

程式設計c語言問題。if語句只選擇第一個怎麼解決,求大神幫忙.謝謝? 10

11樓:金色潛鳥

所有 if 用 chose==, 不用 = 號

if (chose==1)

C語言選擇題求解快

你是 的學生 吧?這是學校機房無憂考試系統c語言a卷裡面的題目吧?以下給你詳解 希望課後能仔細推敲認真考證,不枉汽院學子之身份!以下能正確定義字串的語句是 d a char str b char str c char str x43 d char str 0 a 定義的是字元陣列,這個陣列只有一個元...

求教幾道C語言選擇題詳細解答

第一題 a。解析 首先得到一個靜態陣列a,指標p指向a 0 p 3 4可寫為 p 3 p 3 4,p 3的意思是指標移動至a 3 所在單元,p 3 是取值,即為9,那麼運算 p 3 4得 p 3 的最終值為13,p由於指向陣列初位置則 p為1.第二題 b。解析 第一全域性變數b 3,先看main函式...

c語言選擇題兩道,求詳細解釋。謝謝

1 x 12345 y 0 while x true x 10 5 case 5 y 2,x 10 break x 1234,y 2 while x true x 10 4 default y 3 x 10 x 123 y 5 while x true x 10 3 case 3 y x 10 ca...