第一行輸入包含一個整數。每個輸入之後是包含兩個整數的行,每個整數不大於1 000 000.第一個整數n是向量的大小,第二個整數m是寄存器信息的行數。以下每行都包含兩個表示這個的整數x和y。一行中的任何兩個整數由一個空格分隔。這些行不包含其他字符,除了已完成的新行從標準輸入讀取整數並保存它們 - C
所以我選擇x作爲向量中的位置。 x被存儲在num1
在my_struct
結構和y存儲在num2
typedef struct my_struct{
int num1;
int num2;
bool my_bool;
} my_struct;
int main(){
int testCase, sizeVector, numLines, num1_in, num2_in, linesScanned = 0;
scanf("%d\n %d %d", &testCase, &sizeVector, &numLines);
my_struct my_vector[sizeVector+1];
my_vector[0].num1 = testCase;
my_vector[0].num2 = 0;
my_vector[0].my_bool = false;
while (linesScanned < numLines) {
scanf("%d %d\n ", &num1_in, &num2_in);
my_vector[num1].num1 = num1_in;
my_vector[num1].num2 = num2_in;
my_vector[num1].my_bool = false;
linesScanned++;
}}
輸入例如:
1
3 2
1 2
2 3
我的問題是,第一scanf
效果很好,但對循環沒有按」噸。它沒有保存價值,因爲它應該
是什麼'num1'(你使用作爲'my_vector'的指數之一)? – varnie 2013-03-12 16:47:33
是的,這就是我使用它的原因。 – FriedRike 2013-03-12 16:58:25
我的意思是,你不增加它,是嗎?在您顯示的代碼中,不清楚它是否在每次迭代中更新。所以,看起來你在每次迭代時都會覆蓋'my_vector'的特定項目。 – varnie 2013-03-12 17:00:18