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 函式必須...