c語言問題

時間 2023-05-19 18:03:09

1樓:匿名使用者

1、int main(void),這是標準的寫法,你的那個寫法首先會導致編譯器將它當作七幾年的標準寫的,那時候c語言還沒有規範,後來ansi-c後規定沒有引數的要帶引數void。另外最好都能夠提供返回值,而沒有,則預設為int,因此明確的宣告很重要!因此最後也要順便補上return 0;

2、int x,y;完畢之後,最好要進行初始化,雖然我們假設我們的編譯器會將其初始化為0,但是還是請進行一下明確的初始化。

3、在x=y;y=x;之外,應該新增大括號,表示它們是一起的,否則下面的else將因為找不到if而出現編譯器錯誤。

4、在x++;y++;之外,可能也要新增大括號,我的意思是說,並不會導致編譯器錯誤,但是跟樓主的目的應該不一樣。

5、在printf中,請始終保持輸出fmt帶有%,否則它將被當作字串輸出,比如printf("%5d,%d",x,y);不知道你這裡是不是要保持5。這些引數要看實際需要。

6、第1點中提到了,要返回返回值,表示程式結束沒有發生錯誤,通常這個值是0,也可以引入標準庫#include,然後使用return exit_success;進行返回。

2樓:匿名使用者

//少了括號。

#include

main()

這個。else //這個。

printf("5d,%d",x,y);

3樓:匿名使用者

#include

main()

elseprintf("%d,%d",x,y);

scanf的控制符號兩個%d之間不能有逗號。

最後printf後的5應該是% *

4樓:

if(x>y)

x=y;y=x;

else 語法錯誤。

if 和 else 之間只能有一條語句。

5樓:聞雞休息

不知你想表達的題意,但是提醒你,如果同一條件下的語句超過一個,即》=2,則需要新增大括號。

6樓:匿名使用者

沒大括號。再加一個變數t,t=x,y=x;才能以小到大輸出xy.

7樓:匿名使用者

x=y;y=x; 你這樣寫是要交換x和y的值嘛??這個邏輯不對。

c語言問題

8樓:

摘要。親,您好,c語言問題:1、語法錯誤概念:

是指程式中含有不符合語法規定的語句2、邏輯錯誤概念:是指程式中沒有語法錯誤,可以通過編譯、連線生成可執行程式, 但程式執行的結果與預期不相符的錯誤。3、系統錯誤概念:

是指程式沒有語法錯誤和邏輯錯誤,但程式的正常執行依賴於某 些外部條件的存在,如果這些外部條件缺失,則程式將不能執行。

c語言問題。

親,您好,c語言問題:1、語法錯誤概念:是指程式中含有不符合語法規定的語句2、邏輯錯誤概念:

是指程式中沒有語法錯誤,可以通過編譯、連線生成可執行程式, 但程式執行的結果與預期不相符的錯誤。3、系統錯誤概念:是指程式沒有語法錯誤和邏輯錯誤,但程式的正常執行依賴於某 些外部條件的存在,如果這些外部條件缺失,則程式將不能執行。

親,**太模糊了,看不清楚。

c語言問題

9樓:

摘要。您好,c語言之問題集。

c語言 %-6d:6表示輸出列寬是6個字元,如果實際輸出的字元不足6個,則用空格補充其餘的位置,如果實際輸出大於6個字元,則按實際寬度輸出,前面的負號表示在右邊補空格。

如果沒有負號則表示在左面補空格。

數字是幾就表是幾個空格。

即:printf("%6d",123);

輸出的結果是(一個小數點表示一個空格)

c語言問題。

您好,c語言之問題集c語言 %-6d:6表示輸出列寬是6個字元,如果實際輸出的字元不足6個,則用空格補充其餘的位置,如果實際輸出大於6個字元,則按實際寬度輸出,前面的負號表示在右邊補空格如果沒有負號則表示在左面補空格。數字是幾就表是幾個空格。

即:printf("%6d",123);輸出的結果是(一個小數點表示一個空格)

具體的源**怎麼打。

問一問自定義訊息】

c語言問題

10樓:渠彩榮熊釵

#include

floatn;int

main()

integer

表示整數。real表示實數。

如果這個數取整之後還等於原數,則說明這個數是整數。、

11樓:巢文賦愛蕊

deque::push_back

原型void

push_back(const

t&x);typedef

dequeintdeque;

intdeque

dequetest;

就是在當前的佇列尾部插入一個數value

例如:;依次插入了1,2,3

與pop_back不同,pop_back是刪當前的隊尾值。

push_back

類似堆疊操作push,pop_back

類似堆疊操作。

pop.這裡的"back"

容易把人搞糊塗。

自己看吧。

12樓:匿名使用者

五. 判斷一個正數是否為對稱數,如果是返回0,不是返回1,(不允許呼叫c庫字串轉換相關函式),如11,121,1221就是對稱的。

首先把正數(沒有考慮浮點數)存放到字元陣列中a,len記錄正數長度。

while(num>=10)

然後比較判斷就可以了。}

13樓:我不喜歡故事

第一題的資料儲存形式看不懂到底是啥意思。求解……

14樓:海海胡

選擇題:

1、c2、d

3、b4、c

5、a6、a

7、c8、d

9、b10、d

判斷題:1、錯2、對。

3、對4、錯5、對。

15樓:雲淡風輕

!(a+b)+y-1&&x+b/2

這就是邏輯運算子和算數運算子的優先順序運算問題;

是邏輯非運算子,意思是(a+b)如果不等於0,則!(a+b)的值是0,如果等於0,則!(a+b)的值是1;

知道了!(a+b)的值以後,!(a+b)+y-1的值也就知道了。

然後求x+b/2,先求b/2,也就是b除以2,用得到的商加上x,就得出了x+b/2的值;

然後如果!(a+b)+y-1的值不等於0,同時x+b/2的值也不等於0,那麼這個式子的結果就是1;

如果&&兩邊的式子都等於0,或者有一邊等於0,那麼這個式子的結果就是0;

c語言問題

16樓:匿名使用者

第一層1個。

第二層2個。

第三層4個。

第四層8個。

第五層16個。

第n層 有2倍(n-1)層的個數。

但是不知道這棵樹是不是滿二叉樹,所以要計算第幾層,有個公式(看圖)將700帶入,得到n層,然後計算n-1層有多少個節點,700減去得到的節點數,就是葉子節點了。。。

17樓:匿名使用者

算算最下層應該有多少個結點?

18樓:匿名使用者

餓,解釋下吧這樣的。

首先完全2叉樹是h層的節點總數為2的h次方-1;

因此700個是 在。

2的9次方和2的10次方之間。

所以在前9層是滿的;

設第9層的非雙親節點為x;

那麼可以知道。

第9層的雙親節點為256-x;

因此第十層的為2(256-x)或者為2(256-x)-1;

全部加起來。

511+2(256-x)-1=700//前9層和第10層之和得到是x=161;

總的葉子節點為 161+2(256-161)-1=350;//第9層和第十層的的和。

19樓:

完全二叉樹的節點和他的深度h有關,深度為h的完全二叉樹有2的h次方減一個節點,最後一行的節點數應該是2的h-1次方個,(700+1)/2在取整就是350了。

20樓:匿名使用者

通用演算法:

設n為總節點數,n0是度為0的結點總數,n1是度為1的結點總數,n2是度為2的結點總數,二叉樹中只有這三種度的節點。所以n=n0+n1+n2。

又由二叉樹的性質可知:n0=n2+1,即:n2=n0-1,帶入上式有:n=2*n0+n1-1

而根據完全二叉樹的定義,可以知道n1只可能是0或1;當總節點數為偶數時,n1=1,當總結點數為奇數時,n1=0。

因為總結點數為700為偶數,所以n1=1。帶入到n=2*n0+n1-1有n0=n/2=350。

度為0的節點即葉子節點,所以葉子節點數為350。

c語言問題

21樓:匿名使用者

(一)int a,k,i;

i=1;k=(i++)i)+(i++)

a=(i++)i)+(i);

printf("%d%d%d",k,a,i);

k=1+3+3這句沒有錯但是執行完這局後i的值就為4了在「a=(i++)i)+(i);」中就是a=4+6+7然後i值為8

二)《這個符號是將一個數的二進位制碼向右移動一位 如果0001(1)的話移動完事就是0010(2)在移動就是0100(4)

這個符號是位反 就二進位制碼的每一位1變0 0變1^這個符號是異或 相同的為0 不同的為1 1^0為1 1^1為0~ 運算級最高 《其次 然後是 ^

2的二進位制碼是 00000010

5的二進位制碼是 00000101

先進行a的位反 11111101

然後進行b<<2 00010100

然後異或結果 11101001 這個數的最前邊的位數也就是符號位為1代表負值。

負值輸出時候要求其補碼 補碼=反碼+1 符號位不變。

輸出結果 10010111 這就是-23的二進位制碼。

22樓:匿名使用者

第一題中,i先自加得i=2,然後k=2+2+2;然後自加兩次i=4,然後自加一次得到i=5,先前兩個加起來,就是5+5,然後i自加一次此時i=6,故a=5+5+6

注意:加法的話譯成組合語言以後只能兩項相加)

第二題中,c語言有個優化原則,也就是++x||+y&&+z;語句中,先判斷++x>0,就直接判斷此語句為真,故接下來的語句沒有執行,所以答案是2,1,1

第三題中,~a^b<<2語句中,~為按位取反,優先順序最高;《為左移,優先順序次之;^為按位異或,優先順序最低;

a=2的ascii原碼為00000010;b=5的原碼為00000101

樓主你試試看。

C語言問題,C語言問題C語言問題

選a首先,空格也是一種字元,b d選項分別把空格賦給了c1,c1 其次,c選項不完整,排除 不僅a這樣,10a20b也是可以的。 聽不清啊 答案a 10a 20b cr 是正確的。因為scanf d c 時,會忽略數字前面的空格,遇到非數字字元就會結束讀取 非數字字元會留待下一次讀取,即被後面的 c...

C語言問題,C語言問題

符合,相當於一個字元,ascii字元可以直接轉成short整型數字。101 不符合,這是一個字串,不能作為常數。不符合,因為 會對雙引號轉義,找不到另一個雙引號。會出錯。而且就算是 也不符合,因為編譯器會把它理解成一個字串,而非單個字元。e3不符合。019不符合,0開頭代表8進位制數,不能出現9。0...

c語言問題,C語言問題?

char c 好好看書去 小 超 字元型變數 1 字元變數的定義 字元變數只能存放一個字元常量。字元變數的定義形式如下 char c1,c2 2 字元資料在記憶體中的儲存形式及其使用方法 字元型資料在記憶體中以相應的ascii 存放。字元在記憶體佔一個位元組,表示數的範圍從0 127。把字元對應的a...