關於c語言的幾個問題,關於C語言的幾個問題?

時間 2021-10-20 12:55:37

1樓:

1、不用詳細看,參見

2、getch()

從標準輸入裝置(鍵盤)讀入一個字元,不回顯在顯示器上.

例碼:# include

# include

# include

int main()

getche()

從標準輸入裝置(鍵盤)讀入一個字元,並回顯在顯示器上.

例碼:# include

# include

# include

int main()

getchar()

從標準輸入裝置(鍵盤)讀入一個字元,並回顯在顯示器上.不過只返回第一個字元給ch

例碼:# include

我就不貼了

2樓:於秋無雨

你要是不做嵌入式和微控制器,你就學c++吧,輸入cin>>,輸出cout<<,簡單。

3樓:理長青泰乙

汗,作業題都不自己寫啊

第一個就是一個for迴圈啊

intsum=0;

for(int

i=2;i<=100;i

=2)sum

=i;第二個一樣的撒

intsum=0;

for(int

i=1;i<=99;i

=2)sum

=i;第三個遍歷或者二分查詢都行。

第四個,判斷x值,輸入就行了

if(x==0)

return

-1;if(x>0)

return

(-13*x);

if(x<0)

return

(-12x)

4樓:那拉維運平寅

1.在用tc編譯時可以不加,但是當用vc

編譯時一定要加,因為人一個函式都應該且必須有返回值(包括main函式),一般主函式的返回值是void(空),否則預設返回值為int型的,在編譯時就會出錯。

2.#definen5

inta[n];意思是用n表示5,也就是n和5是一樣的,在編譯時就為陣列分配5個連續的地址;

而intn=5;inta[n];在編譯時不關心變數的值,也就是n是多少不關心,而在為陣列分配地址時就無從得知變數了只是為其分配空間而已,至於這個數是多大在執行時才起作用,所以編譯分配地址為陣列分配多大的地址就無從得知了。也就是說陣列事先一定是要有確定的大小的,如果不知要多大的空間,事先可定義大一點的,但必須確定。

5樓:

第一個:main也是函式,不過被稱做為主函式。在tc裡面假設你不寫就預設為int型

在vc裡面一定要寫函式型別。void為空型別,無返回值,如果你寫int或者其他的最後結束就應該加返回值。

第二個:define是巨集定義,我只是單純的吧5這個字元賦給n

所謂巨集定義,就是把字串給巨集名。不分配記憶體的。是常量,陣列規定下標是常量,所以你用int

n=5定義錯了

應為這個n是變數。

還有那2題

1:你輸入的時候出錯,scanf裡面沒空格,你輸入的時候有空格,導致提取出錯,

你輸入的時候用回車做輸入一次的結束就能解決,

2:你是以十進位制輸出字串的

所以輸出的是acs中那個字元對應的asc表在的十進位制的值。你雖然是x[3],其實是x[0],x[1],x[2].不存在x[3]這個的。

3只是代表個數

,其實要從0開始數。

6樓:位心水校瑛

main()

輸入10

30a後為什麼結果是10,

,3?#include

main()

輸入xyz

後為什麼是121,121,0

希望個位解答詳細點!本人的c很菜!!!!謝謝~~~~~

7樓:嶽愷歌象強

使用未命名的欄位寬度「填充」未命名的洞?

例如:struct

sampelt

回到你給出的第一個位域結構體定義

field1 =2位

第2個欄位是無名域,佔用2位,該2位不使用後面的依次同上

關於第一個結構體你遇到的疑問主要是為什麼要填充?這個是不必須的,這個完全跟你具體的編碼目的由關係的,有些時候出於資料的標識往往會在資料位間填充一些0用於flag的識別。

第一個結構體總共佔用位元組數:

2個位元組

後面你給出的第二個結構體解析同上~

你運到的問題主要是對概念本質理解的不透徹~

8樓:捷彬炳桓婭

void表示無返回型別

#define

n5表示你下文出現的n用5來表示

關於c語言的幾個問題?

9樓:

char str[10]=,佔用記憶體10個位元組,前6個位元組的值是"abcde\0",字串不一定佔用全部字元陣列的記憶體,因此最後會加'\0'(0值)表示字串的實際結尾。該字串實際佔據陣列的前6個單元;

char str={「abcde」},會自動根據字串長度確定佔用記憶體的大小,為6個位元組。

用strlen()函式去檢視,結果都是5。

整數相除,餘數捨去,只有整數部分。

同型別運算,從左至右順次進行。

x/y=3/2=1,x/y/z=1/1=1,取整之後,還是1,化成浮點數之後是1.000000.

如果想得到小數結果,有兩種做法:

(1)在運算之前,先強制型別轉換:(float x)/(float y)/(float z);

(2)運算的第一個數是浮點數:1.0*x/y/z;

運算時會自動選定第一個數的格式,進行計算。

關於c語言的幾個小問題

10樓:

非執行語句不會轉換成二進位制指令

(x/10)%10

不可以,%只能用於整型取餘

_0_可以做使用者標識,使用者標識不能以數字開頭

11樓:fs求救者

好像只有可執行語句被編譯成二進位制,

空格x-(x%10*10) , 256-(25*10)=6%兩邊都要是整數,

標示符是以英文字母 或下劃線開頭的,英文大小寫,數字字元0-9,和下劃線組成。

_0_對的。

關於c語言的幾個問題

關於c語言中的幾個問題。。

12樓:

問題1 return 1的作用是結束遞迴,不再繼續遞迴下去。

問題2 因為只有n<1的時候才不滿足if條件,執行return語句。然後一級一級返回。

13樓:閆和歌

1.最好寫() 括號裡面是要輸入的東西沒()不完整

2.可以轉化的 但是整型沒有這麼大的數也就是說在運算的過程中已經記錄了錯誤的結果再轉化過來也不是這個數了

應該是對的吧 最後這個我不是很拿得準

14樓:

簡單的問題,多測試就好了

關於c語言的幾個問題 10

15樓:匿名使用者

首先明確在大括號內的就像是一個函式似的將括號外的更大範圍的變數遮蔽了,也就是說在大括號內的b和c與括號外的b和c是不一樣的

換個名字也許就好理解了 main()

printf("third:%d,%d,%d\n",a,b,c);}

16樓:匿名使用者

第三題:

main()

printf("third:%d,%d,%d\n",a,b,c);

}++a==2;c==6;

c=b*3,c==12;

a==14;b==4;c==12 firsta+=c;

a==26;b==4;c==12 secondthird:

a==26是 因為中間的語句把a的值改變了!

沒有給他重新賦值!所以一直執行完的話就是26b=3是因為開始b=2;中間的語句把b給重新賦值了!

在第三次的執行的時候b返回原來的值了!

c+=++b

拆分為++b;c=c+b;

++b,b==3;c=c+b,c==6!

關於c語言的問題,關於C語言的問題

鷹弈 1 有定義 int n 0,p n,q p 則以下選項中,正確的賦值語句是 d a.p 1 b.q 2 c.q p d.p 5 解 p為一級指標,其中p為指標的地址,q為二級指標,其中 q為指標的地址,只能給變數或指標變數賦值,不能給地址賦值,所謂地址,就是由acs碼構成,簡單的說,就是每個人...

c語言簡單的一個問題,c語言的幾個問題

第一個x y是假,所以是0.而z y y x都是真,所以與完後為真,是1.1 z y x 計算機是從左往右計算的z y成立反回值為1,不成立為零。在與後面的比較。1 以為z y為真結果為1 然後比較1 z 結果為假 所以為假 就是0 z y為真 y z為真 真與真還是真 所以為1 所以是 d2 首先...

關於c語言的程式設計,關於C語言的程式設計問題?

執行示例 原始碼如下 include stdio.h int main printf n return 0 望採納。int用來定義整型變數 整數 float用來定義浮點型變數 實數 float和int一樣是用來定義變數的,它不是函式.賦值語句value 700 weight 14.5833之所以不在...