我遇到了一些我正在編寫的代碼的問題。 我經常使用這個網站,因爲我發現很多人已經問過我想知道的相同問題。有了這個,我想感謝這裏的社區瞭解以前對於我的編程難題的所有見解。 (在我們太過分了之前,這不是一個'學校項目'或'學校作業',我只是試圖解決'旅行推銷員問題'和更好的C技能。的代碼,我一直停留在:傳遞2d數組,然後沒有得到值
void printAndFlip(int arrayone[][20], int citytotal, int arrayCities[])
{
////Finds cost:
int x, y, z;
int totalCost
int singleTrip;
int cheepestTrip;
int nCity = citytotal + 1; //nCity is the number of Cities //Adding one to accomadate going back to the first city
int gCounter;
int gCounterTrue = 1;
int cheepestTrip[20];
int totalCost = 0;
int lCounter;
int i;
int n = citytotal;
////Sets up for a default case to set cheepestTrip:
for(gCounter = 1; gCounter <= nCity; gCounter++)
{
while(gCounterTrue == 1)
{
if(gCounter == arrayCities[gCounter])
{
gCounterTrue = 1;
}
else
{
gCounterTrue = 0;
gCounter = 50; //Stopping the larger for loop with 50 (the nCity can't be larger than 20) so that it will hopefully be faster
}
if(gCounter == nCity)
{
if(arrayCities[1] == arrayCities[nCity])
{
!!!!! cheepestTrip = totalCost;
}
}
}
}
for(x = 1; x < nCity; x++)
{
y = arrayCities[x];
z = arrayCities[x+1];
singleTrip = arrayone[y][z]; //finding individual cost of each trip...will be added to 'totalCost' below
totalCost = singleTrip + totalCost;
}
!!!!!!!! if(totalCost <= cheepestTrip)
{
for(lCounter = 1; lCounter <= nCity; lCounter++)
{
cheepestTrip[lCounter] = arrayCities[lCounter];
}
}
爲了更容易展現在我的編譯錯誤都在我把感嘆號上線 請告訴我,如果我錯了,但我傳遞一個數組。當我發送'arrayone'printOFFlip對嗎?我知道編譯錯誤與指針有關,但我只是不確定它們應該放在哪裏。 任何和所有的幫助將不勝感激。 許多感謝, 亞歷
我已經爲初學程序員提出了一個問答網站。應該以積極的態度來滿足簡單的問題,並鼓勵人們學習成爲更好的程序員。如果你喜歡這個主意,請按照提案http://area51.stackexchange.com/proposals/52242/beginner-programmers?referrer=YHFcRobXPDGfDpFmz1HCvA2 – AxelOmega 2013-03-07 19:45:56