1樓:匿名使用者
point vertex[m];這樣寫不對,如果非要用陣列,只能 #define m 200,定義成一個固定的。其實可以使用 point * pvertex =(point *) malloc(m * sizeof(point)); 通過 ++pvertex迴圈遍歷
2樓:匿名使用者
不確定大小的陣列你可以使用vector,簡單。動手能力強一點,自己實現一個,反正本質就是:空間不夠了,重新申請一個更大的空間,複製以前的資料到新空間,釋放以前的空間。
int cap = 3;
t *data = (t *)malloc(sizeof(t)*cap);
if (*n == cap)
當然根據實際情況,可以考慮一些更簡單或者更復雜的方法。
大致看了你的**,只需要將
point vertex[m];
改為point *vertex = new point[m];
就可以了,最後別忘了deletevertex。
3樓:
既然是c++裡遇到這個問題,強烈建議樓主用stl裡的vector , stl是c++的標準模板庫,有絕對的通用性和健壯性,不怕**不相容,vector很好地處理了變長陣列的問題,比很多人手寫的都要高效,時間複雜度上是最優的策略(線性的)。
vector很好用,例如:
#include
struct point ;
int main() ) ;
return 0 ;
} //以下是主要程式,麻煩幫改一下。
#include
#include
using namespace std ;
struct point;
double polygonarea(point pvertex,int m)
int main()
else
lastx=vertex[i].x; //輸入的最後一個頂點
lasty=vertex[i].y;
}dist=distance(beginx,lastx,beginy,lasty); //最後一條邊長
sum+=dist;
cout<<"多邊形的周長為:"< cout<<"多邊形的面積為:"< return 0 ;} 4樓:匿名使用者 c和c++裡面分堆和棧, 棧的大小必須是事先指定的, 比如 point vertex[m]; m的大小事先不知道,所以指定不了大小。 出非你事先定義了m的大小 比如#define m 100 或const int m = 100; 所以要在堆上分配空間。 用malloc函式, 或new操作符 point *vertex = (point *)malloc(sizeof(point) * m); 或point *vertex = new point[m]; 在堆上分配了資源,在程式退出時, 或程式中不在用到時,一定要記得**。 free(vertex); 或delete vertex; 不然,就回有記憶體洩漏。 5樓:匿名使用者 c++可以用new運算子,c語言裡要用malloc或者calloc函式 int*p=new int[100]; c語言中如何定義大小不確定由執行時確定大小的陣列? 6樓:手機使用者 #include #include // malloc, freeint main() free( p ); // 用完記得釋放 return 0;} c++題目:設計一個函式,當已知三角形的三個頂點座標時,求三角形面積 7樓: #include #include using namespace std; int main(){ double a[2],b[2],c[2]; cin>>a[0]>>a[1]; cin>>b[0]>>b[1]; cin>>c[0]>>c[1]; double a,b,c,s,s; a=sqrt( (b[0]-a[0])*(b[0]-a[0])+(b[1]-a[1])*(b[1]-a[1]) ); b=sqrt( (c[0]-b[0])*(c[0]-b[0])+(c[1]-b[1])*(c[1]-b[1]) ); c=sqrt( (c[0]-a[0])*(c[0]-a[0])+(c[1]-a[1])*(c[1]-a[1]) ); s=(a+b+c)/2.0; s=sqrt(s*(s-a)*(s-b)*(s-c)); cout< include define int max 1000 define maxverticesnum 10int visited maxverticesnum typedef char vertextype typedef int edgetype typedef struct mgraph 建立圖 ... 咖啡巷 你的派值是double型的,而s值是float型的,這樣會使值失去一定的精度,還有main函式需要返回值的,可以寫return 0 你這個怎麼看都是錯的 第一,主函式是這樣定義的嗎 第二,這裡乘法運算需要把float型轉化為double型最後,沒有返還函式,了return 0 改正如下 in... 炎個夏 這實際上就是 等額本息法 的公式,如下 月還款額 本金 月利率 1 月利率 n 1 月利率 n 1 式中 月利率 年利率 12,n表示貸款月數,n表示n次方,如 180,表示180次方 貸款15年,180個月 注意 計算 1 月利率 n 1時,要先將小括號內的算出來,乘方後再減1。現假設貸款...給出無向圖的鄰接矩陣,輸出各個頂點的度,要程式
c語言程式設計問題題目計算圓的面積,C語言程式設計問題 題目計算圓的面積。
誰能給出PMT還貸函式的具體計算公式,我想手工計算。謝謝了!要具體數學計算公式