2016-11-08 6 views
-5

Я учусь C#, и я пришел к этому «для» функции и что-то действительно беспокоит меня об этом:обучение C#, нужно помочь понять этот код

int[] arrayNumbers = new int[numberAmmount]; 
// take "numberAmmount" as 5 so numberAmmount = 5; 
     for (int i = 0; i < numberAmmount; i++) 
      { 
      Console.Write("{0} Number: ", i + 1); 
      numberAmmount[i] = int.Parse(Console.ReadLine()); 
      } 

Не «я ++» в для функции то же самое i, как в Console.Write «i + 1»

Не должен ли я после первого цикла быть 2? , а после второго цикла - 4 из-за i + 1 в console.write ???

В основном я пытаюсь получить число от пользователя, которое будет количеством numberAmmount, и этим для функции я даю каждому numberAmmount [x] значение, а затем моя программа решит самое высокое и самое низкое число, но Я не понимаю, почему я + 1 не добавляет дополнительный 1

редактировать: получил его благодаря

+1

нет, 'i ++' означает 'i + = 1', или' i = i + 1' –

+1

i ++ изменяет значение i. i + 1 - нет. – granadaCoder

+0

Когда вы делаете 'i + 1', вы не назначаете новое значение' i'. Однако, когда вы выполняете 'i ++', это удобная стенограмма для 'i = i + 1'. –

ответ

1

синтаксис i + 1 не имеет оператор присваивания. Этот код печатает значение i плюс константу. Поэтому, когда ваш цикл зацикливается от 0 ... n Console.write печатает значение подсчета для каждого цикла 1 ... n + 1.

+0

Спасибо за ваш ответ! Я получил его сейчас – Aveik

+0

@MarcoMagdolen marc ответ как правильный – mybirthname

Смежные вопросы