-
沒問題,沒問題
我確定沒有問題
由我在這裡編譯
順便問一下,你在輸入名字時有沒有在中間加乙個空格?
您的所有輸入都使用 scanf 輸入,如果您新增空格,您也將在最後輸入 scanf。
最好使用 gets 輸入字串。
不過這裡已經整理好了,輸入一下沒問題,輸入名稱、數字、分數,最後顯示平均分和總分。
-
輸入引數名稱前面必須有乙個 asteste,例如:
stu[i].number
-
顯然不是。 你問錯地方了。 這是c,你問,c。
-
#include
#include
using namespace std;
struct person
struct book
int main()
使用者輸入資訊。
char name[20];
cin>>name;
int k;
i 表示輸入的書籍數量,然後查詢。
for(k = 0;k!=i;k++)
return 0;
我沒有執行它,我不知道它是否可以編譯,這就是想法。
-
因為 p1->name 已降級為指標,而不是字串。
所以你必須先製作自己的內容,然後再列印。
-
這裡有乙個精度問題,雙精度型別在計算機中是通過科學記數法、四捨五入近似的。
因此,如果您鍵入 -1,那麼計算機中可能是這種情況,然後您輸入 -1 並且程式不會彈出。
解決辦法:將 double 替換為 int。
或者,標記是否中斷其他資料
-
輸入應該沒有問題,最好不要用toupiao[i],只用乙個toupiao作為變數。
-
需要先製作指標陣列。
修改後的 toupiao[i]=(char*)malloc(sizeof(char)*10);
cin >>toupiao[i];
-
我沒有看到任何錯誤,但您不需要驗證輸入嗎?
-
需要 malloc 函式來動態分配空間。
示例:動態分配大小為 n 的變數陣列。
int *s = (int*)malloc(n);
至於輸入數字,它存放在陣列中。
int a, i=0;
while(1)
這是乙個無休止的迴圈,你必須新增自己的內容,這樣他才能結束它,不要複製它。
-
必須在定義中明確為陣列指定要分配的記憶體量。
一旦分配,記憶體就會被修復。
所以你無法達到你所說的空間大小可以動態增加的效果,而C++提供了乙個型別模板向量,可以幫助你實現你想要的,見下面的解釋。
原因:因為你沒有在結構的末尾新增; ,那麼說明你的結構定義還沒有結束,那麼下面的主要功能就是你的結構了,所以會上報"定義中的型別過多"錯。 >>>More
這是個好問題!
為什麼對齊有問題? 簡單來說,就是提高存取記憶體的效率,這與CPU的內部機制有關,想要深入了解,就需要閱讀Intel開發者手冊。 對齊採用的總體原則如下: >>>More