Я пытался написать некоторый код, который запрашивает у пользователя несколько дебетовых записей для бухгалтерской программы.Если пользователь дает 5 в качестве ответа, программа должна спросить его имя дебетной записи и сумму 5 раз, прежде чем перейти к следующей строке кода.Итак, я использовал циклы для решения этой проблемы, и кажется, что-то странное происходит.
Это формат, в котором код должен запускаться при компиляции и выполнении:
Сколько дебетовых записей вы хотите сделать ?: 2
1Имя дебетовой записи: пример1
1. Сумма дебетования: 123
2. Название дебетовой записи: пример2
2. Сумма дебетования: 456
перейти к следующей строке кода
Вот код, написанный на C ++ для этой части бухгалтерской программы:
#include <iostream>
#include <string>
using namespace std;
int main()
{
cout << "How many debit entries do you wish to make?: ";
int entries;
cin >> entries;
string debitNames[50];
float debitAmounts[50];
int offset = 0;
int number = 1;
for (offset = 0; offset < entries; offset++)
{
cout << number << ". Debit Entry Name: ";
cin >> debitNames[offset];
cout << number << ". Debit Amount: ";
cin >> debitAmounts[offset];
for (number = 1; number <= entries; number++)
{
}
}
char response;
cin >> response;
return 0;
}
Результат очень странный, вот что происходит, когда я компилирую и запускаю его:
Сколько дебетовых записей вы хотите сделать ?: 5
1. Имя дебетовой записи: пример1
1. Сумма дебетования: 123
6. Название дебетовой записи: пример2
6. Сумма дебетования: 123
6. Имя записи дебетования: пример3
6. Дебетовая сумма: 123
6. Имя дебетовой записи: example4
6. Дебетовая сумма: 123
6. Дебетовая запись: example5
6. Дебетовая сумма: 123
перейти к следующей строке кода
Программа, после перечисления числа в 1, внезапно перепрыгивает на 6 и остается там, пока все 5 наборов вопросов не будут иметьспросили.Как вы уже знаете, я использую переменную 'number', чтобы просто сообщить пользователю, что были запрошены записи 'number', как указано самим пользователем.Попробуйте запустить этот код в вашем компиляторе и посмотрите, появится ли тот же результат.Кстати, я использую Visual C ++ 20120 Express Edition. Может ли это быть как-то связано с проблемой?
Большое спасибо.