各位c語言大神,求指教,小輩遇到麻煩了,求大神們指點一二

2022-06-02 05:06:59 字數 2262 閱讀 3747

1樓:

你只是申請了一個stknode型別的指標,但是沒有指向任何例項想對成員變數賦值,必須宣告一個例項,然後讓指標指向它struct stknode s, *p;

p = &s;

s.a[1] = 1;

printf ("%d", p->a[1]);

或者從動態記憶體申請空間

struct stknode *p;

p = (struct stknode *) malloc (sizeof (struct stknode));

p->a[1] = 1;

printf ("%d", p->a[1]);

free (p);

如果你想在使用自定義結構時候不寫struct修飾符,必須給型別起個別名

typedef struct stknode  sn;

2樓:宗茗

你這樣編譯能通過?結構體變數宣告應該都是struct 開頭的吧。可能你這個編譯器高階點。。

你出錯的原因應該是你只宣告瞭一個struct stknode的指標,指標其實就是一個unsigned long型別的數值而已,在記憶體中只佔4個位元組,如果你要用結構體,宣告應該是這樣的

struct stknode p1;

p1.a[1]=1

這樣p1才會佔一個結構體的記憶體

3樓:匿名使用者

你好!這個程式沒有動態分配記憶體空間

如果你寫成這樣的話就可以了

#include

#include//動態儲存分配函式

#define len sizeof( stknode)//規定len為sizeof( stknode)的大小

typedef struct stknode stknode ;

struct stk

;int main()

4樓:

stknode *p1自己malloc一定的空間出來,你再試試。可能現在是野指標,剛好指向了不能寫入的記憶體地址.

5樓:匿名使用者

stknode *p1;只是一個指標啊 指向什麼?

一道c語言程式設計題,執行結果一直是0,求大神指教 5

6樓:gta小雞

scanf的格式字串應該使用%lf%d%lf的形式,中間不要加逗號,讀入資料時以空格或回車作為分隔。格式字串中新增逗號是不好的習慣,除非特殊格式需要否則不要使用逗號。

%lf表示以double型讀入一個資料,而你對應存放資料的變數是float型,型別不匹配。將其改為double型或將%lf改為%f。

怎麼回事,求c語言大神指教,急急急急

7樓:

胡寫,問題大了!指

針、指標的指標、變數三者的關係沒搞清,亂=一氣,肯定錯。首先,從bb=&b...那一行看,bb應該是指向指標的指標,即二重指標,可是宣告的時候它們是指向int型變數的指標,所以類似bb=&b的語句全部非法!

要修改就得在宣告時在*bb、*cc...前再加一個*,讓編譯器知道它們是指向另一個指標的指標而不是指向int型變數的指標。但這樣後,if後面的語句仍有問題:

h是個int型變數,怎麼能用h=ee;這樣的語句為h賦一個二級指標的值?ee=&ff就更離奇了,ee和ff都是二級指標,&ff就是三重指標,ee=&ff分明是要把三重指標的值賦給一個二重指標變數,=號兩邊型別就不匹配……由於沒有說題目要幹什麼,從**中也看不出目的,所以不好改!

8樓:匿名使用者

指標變數 bb,cc,dd,ee,ff 直接列印出來是它的地址值,

所以printf中應該寫為: *bb,*cc,*dd,*ee,*ff

vb程式設計100至999間能被3整除的數 求大神指教,各位大神,求指教,謝謝

9樓:匿名使用者

任何程式設計裡面遇到整除問題,你首先應該想到的是模運算。

整除,就意味著餘數是0;

那麼如果 num % 3 == 0,那麼num 這個數就是可以被3整除的,思路告訴你了,程式自己寫

c語言剛剛入門,求大神指教。

c語言這樣寫輸入y或n後,為什麼它還是重複迴圈啊?求大神指教!

10樓:匿名使用者

!((c='y')||(c='y')||(c='n')||(c='n'))

判斷條件你寫錯了

c語言求大神指教,C語言程式設計,求大神指教?

include define n 10 int check int a,int area,int t int plus num 0 int result 0 int i 0 for i 遞迴對t進行全排列尋找可行解,不知道對不對,我不是大神。include define max 10 int m,n...

c語言程式設計問題求指教,C語言程式設計問題,求指教

include stdio.h int main if a c if b c printf c c c n a,b,c return 0 如何學c語言啊,我一遇到程式設計題就不會了,怎麼辦,求指教 勤能補拙。真想學的話,把你不會寫的題目記下來,仔細看看別人怎麼寫的 爭取理解吃透,然後不看別人的自己寫...

求c語言大神解答這個問題,求C語言大神解答這個問題

這個和float表示的有效位有關係 float 是單精度 只能表示7個有效位,所以你111111.111相當於只能把111111.1賦值給x,y變是如此。如果你用double float x,y 就不會有這種情況了。因為雙精度double float 可以表示9個有效位。double float 的...