1樓:匿名使用者
line 69: 函式showarr,parr是指向結構體的指標,你這裡要訪問的應該是它的成員陣列parr->pbase
void showarr(struct arr *parr)ps1:這個問題在編譯階段通常會有警告的,因為printf格式符%d是整數,你給的parr[i]跟它是不匹配的,會引起“format %d expect argument of type”的警告;
ps2:**寫得不規範,這裡僅指出一點,調的庫是c的,bool變數用的c++的,在稍早些的c標準裡面是沒有的。這樣寫在很多編譯器上是過不了的
2樓:受映冬俟山
答案是d,(1,3)那是逗號運算,從左至右算,所以結果是3
3%5==3,“%”前後必須是整型的,3%5就是求餘運算,如果是3/5,則是3/5==0。你懂了嗎?
3樓:羊舌平春醜容
問題一:選d。
x%y=1,x/y=3,則z=(1,3)結果要取後者,所以z=3.
問題二:3%5=5.
因為3除以5商0餘5,%取餘。
4樓:仍易闕鈴
問題一,那是逗號表示式,括號內依次運算,取最後的值為結果,所以是3而不是1,這個是定義了的,沒有為什麼,記住就好;問題二,3%5是3,因為這是取餘運算,就是簡單的取餘數,不用想的很複雜,和除法有區別!、
5樓:御巧蠻水凡
在c語言中,\是轉義符號,其後面緊跟著一個字元,兩者組合成一個新的字元,代表另外的意思,所以稱為轉義。
故,\0表示換行或者回車的意思;在字串中表示字串的結尾。
上面的**意思是,將讀入的字串,對有多少個字元進行統計,字串最後一位為\0
6樓:貴高馳史飛
第一個迴圈完成之後i=10
在第二個迴圈一開始,列印出a[10],但你的陣列只有a[0]到a[9]十個資料,a[10]記憶體越界,是隨機數
解決辦法是在第一個迴圈完成後i=i-1即可
關於c語言的幾個小問題
7樓:
非執行語句不會轉換成二進位制指令
(x/10)%10
不可以,%只能用於整型取餘
_0_可以做使用者標識,使用者標識不能以數字開頭
8樓:fs求救者
好像只有可執行語句被編譯成二進位制,
空格x-(x%10*10) , 256-(25*10)=6%兩邊都要是整數,
標示符是以英文字母 或下劃線開頭的,英文大小寫,數字字元0-9,和下劃線組成。
_0_對的。
c語言報錯的問題?
9樓:匿名使用者
你的程式錯誤,是在
cout << “enter the temperature in celsius:”;
cout << “fahrenheit value is:”;中用了中文狀態下的雙引號。
#include
#include
#include
using namespace std;
int main(int nnumberofargs, char* pszargs)
以上程式正確,可以執行。
如果還不行,那就是編譯器的問題。建議:用vc2008,c-free或vc2010.
微軟已停止對vc6.0進行更新了。(開始不習慣很正常,成為高手後會喜歡例如vc2010的)。
c語言程式設計小問題,C語言程式設計小問題
我的電腦 工具 選單 資料夾選項 檢視 頁 勾掉 已知檔案型別的副檔名 就可以顯示副檔名exe了 另外,這些檔案要到dos視窗 命令視窗 下執行才可以看到結果,如果在windows雙擊,程式執行終止後就會退出,當然視窗一閃就過了 首先,沒有.exe是因為你在 資料夾選項 中設定了 隱藏已知檔案型別的...
C語言的小問題,C語言的一個小問題。
s格式符表示輸出的是字串,後面對應的引數用字元陣列或是字元指標,c則是輸出單個字元,引數為該字元的ascii碼。char a 12 是字元陣列,賦值 hello world 後成為字串,賦值後,a 0 h a 1 e a 2 l a 3 l a 4 o a 5 空格 a 6 w a 7 o a 8 ...
C語言小問題
gets 函式會把輸入的字元連線起來並在後面加上 0 構成字串。不會把 n 補在後面,所以,a i 裡面是沒有 n 的,你的輸出 如果是a i 0就會在碰到 0 時停止,如果寫成a i 10,就不會停止,而是輸出10個字元,就是aaa及其後面的字元,後面的字元你並沒賦值所以是亂碼。一個誤解 gets...