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

時間 2021-09-05 20:03:53

1樓:鷹弈

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碼構成,簡單的說,就是每個人都有一個名字(地址)一樣,目的是要區分每個人(地址中儲存的值)。

2、若有說明:int n=2,*p=&n,*q=p;,則一下其非法的賦值語句是(d)

a.p=q; b.*p=*q; c.n=*q; d.p=n;

解:同上。

3、有以下程式:

void fun(char *a, char *b)

main()

( char c1='a',c2='a',*p1,*p2;

p1=&c1; p2=&c2; fun(p1,p2);

printf("%c%c\n",c1,c2);

}程式執行後的輸出結果是(a)

a. ab b. aa c. aa d. bb

解:這是指標傳值(地址傳值),實參傳給形參,其實就是p1(實參地址)與a(形參地址)共用一個地址,p2與b共用一個地址,a=b並沒有改變地址a中儲存的‘a’,而是讓*a指向地址b,進而改變或控制地址b中存放的值,所以c1=‘a’不變,而(*a)++,就是字元‘a'的asc碼加1,也就是字元‘b'那麼地址b中的值就變成了字元‘b'。

4、以下程式執行後的輸出結果是___1_1_1_1___

main()

}解:上面的q等於1吧,

當i=1;n[1]+q=n[0]*2+1=0*2+1=1;

i=2;n[2]+q=n[1]*2+1=0*2+1=1;

i=3;n[3]+q=n[2]*2+1=1;

i=4;n[4]+q=1;

5、有如下程式:

#include

main()

若文字檔案f1.txt中原有內容為:good,則執行以上程式後檔案f1.txt中的內容為(c)

a.goodabc b.abcd c.abc d.abcgood

解:簡單的說就是以“w(寫生成)”開啟的檔案,檔案內的原始資料將被刪除。這東西不是一兩句就能解釋清楚。

同學,你的c要好好加油啊,這都是些很基本的問題。

2樓:匿名使用者

1. *p表示指標所指向的變數。因此可以可以直接賦值。

對於a,p表示指標,不能直接對一個指標賦值一個變數值。

對於b,*q表示指標同a

對於c,兩者型別不同,一個二級指標一個一級指標,不能直接賦值。

2。p表示指標 *p表示指標指向的值,不能直接對指標賦變數值。

3。對於x而言,函式沒有地方改它的值因此結果為為原來的值a,函式的功能把y地址傳給a,並且把值加1,因此a+1=b;

4.n[i]=n[i-1]*2不管怎麼運算元組中的數全是0因此輸出其實是q值。

5.fopen("f1.txt","w")的時候如果檔案不存在那麼就會建立檔案,如果檔案存在就會把內容清空。

3樓:匿名使用者

1 2題其實就看他們相互之間型別相不相同

4樓:匿名使用者

int n=0;其中n是整型資料,*p=&n,其中p是指向整型資料的指標變數,而**q=&p;其中q是二次指標所以選擇d

第三題,p1,p2是分別指向c1和c2的指標變數,然後呼叫fun函式,a=b,含義是p1和p2都指向了c2,(*a)++是將c2加一

c語言報錯的問題?

5樓:匿名使用者

你的程式錯誤,是在

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語言指標的問題

常玉標 cannot convert from const int to double 編譯器 會出現這樣的錯誤.應為不能把const int 賦值給 double 型別的變數.希望你能懂 首先我鄙視下樓上的回答,答非所問。你這肯定錯誤的啊,首先 double p 是定義了一個指標變數p,p只能存放...

關於C語言的簡單問題,關於C語言的6個問題

void的意思是空。main 其實是縮寫,寫全是int main 意思是函式又返回值。函式結束都會有return 0。意思是如果返回了乙個值,值等於0,那麼這個函式是能編譯的。因為如果返回了0,說明函式能執行完。有些時候你會發現後面並沒有return 0,那也只是省略了,但實質是有的。void ma...

有些關於C語言的問題,C語言報錯的問題?

1 以下選項中屬於c語言的資料型別是 a.複合型 b.雙精度型 c.邏輯型 d.集合型 b正確2 以下說法中正確的是 a.c語言程式總是從第一個的函式開始執行 b.在c語言程式中,要呼叫的函式必須在main 函式中定義 c.c語言程式總是從main 函式開始執行 d.c語言程式中的main 函式必須...