1樓:匿名使用者
setmem(b,6*sizeof(int),0);
這個函式沒有定義
2樓:大衍之
你這個函式是的意思應該是setmem,為b分配6個int長度的地址空間,並且每個偏移地址(回或是說b的元素)初答始為0了
void setmem(int **p ,int size,int value)}
3樓:匿名使用者
你搜一下setmem這個函式宣告在哪個標頭檔案,然後你include這個標頭檔案,如果你沒有發現哪個標頭檔案宣告但是有原始檔定義,那你就在呼叫之前extern這個函式
c語言上的問題 !(a+b)+c-1&&b+c/2的值 a=3,b=4,c=5
4樓:聽不清啊
整個表示式的值為真(即 1)
!(a+b)=!7=0
!(a+b)+c-1=0+5-1=4
b+c/2=4+2=6
原式=4&&6=1 //兩個非0的值,即兩個true,相與的值,仍為true,即1
5樓:匿名使用者
根據從左到右計算順序,結合運算子優先順序,根據定義
a = 3, b = 4, c = 5,假定 a,b,c 為 int。真值為1,假值為0。
計算步驟如下:
1、計算 a + b,結果為 a + b = 7
2、計算 !( a + b) 結果為 0,也可以認為是false(假)。
3、計算 c/2,假定c為int時,結果為 2(取整),為float或者double時為2.5,但不影響最終結果,因為都是真值(非零值)。
4、計算 0 + c,結果為 5
5、計算 5 -1,結果為 4。
6、計算 b + 2 或者 b + 2.5,結果為 6 或者 6.5。
7、計算 4 && 6 後者 4 && 6.5,因為兩邊都為非零值,所以結果為 1,或者true。
這裡主要是一個運算子優先順序的問題,在本表達多中。
小括號的優先順序最高,所以最先計算括號內的值。
其次是邏輯非,然後是除法,然後是 加減法,最終是 邏輯與。
6樓:匿名使用者
這個是邏輯運算只討論真假,與數值沒有多大關係只要弄懂運算級別高低就可以最後結果為一,不懂可以mm我
7樓:匿名使用者
()優先順序最高先算 !(a+b) =!7=0算術運算子大於&& 所以先算c-1=4
* /大於加減先算c/2=2然後加b等於6最後相與 4&&6 真與真還是真 最後等於1
8樓:麒麟也涅槃
a=3,b=4,c=5
a+b=7
!7=0
c-1=4 為真
b+c/2 不為0 所以也是真
真&&真 值為真 即=1
9樓:k寂寞的小炮
結果等於1
!(a+b) = 0;
0+c-1 = 4;
b+c/2 = 6;
6&&4 = 1;
10樓:匿名使用者
整個表示式為1啊···
11樓:有郊範圍
!(a+b)+c-1&&b+c/2=1
12樓:皚子萋萋
!(a+b)=0;1&&b=1;所以0+5-1+5/2=6
c語言程式問題,C語言程式問題?
1.在你打算學習c語言之前,你要下一個狠狠地決心.因為許多電腦愛好者在學習c語言的過程中,都會遇到困難,從而沒有堅持到最後.只有你下定狠狠地決心,才能學會c語言,才能學好c語言.2.要想學習好c語言,就要學會細心,耐心.c語言程式的編寫需要非常細心,因為一個標點符號的錯誤,可能導致程式的無法執行.3...
c語言程式問題新手,C語言程式問題 新手
include define n 50 人數 define fl 60 統計分數下限void sort float a,int c 選擇排序return r int main void include stdio.h main printf d num 輸出學生個數 程式比較短,考慮到樓主情況後面追...
關於簡單的C語言程式問題
輸出的結果和你預想的不一樣是因為你沒有理解關於引數傳遞的一些問題 引數的傳遞有兩種方式 1。按值傳遞 你的程式用的都是這種方式 傳遞的只是當前值的一個副本 拷貝的 所有在函式中,副本的改變時不會影響原來的那個變數的 你的程式是變數i 2。按引用傳遞,即按地址傳遞,這種引數傳遞在函式內部改變了變數的值...