C домашнее задание, пока проигнорируйте (я думаю, что я собираюсь сделать репост позже с некоторым кодом) - PullRequest
0 голосов
/ 23 сентября 2010

Я собираюсь сделать программу, которая читает в строке и получает до 6 чисел. Программа в конечном итоге решит квадратную матрицу между 2x2 и 6x6. У меня вопрос, какие ошибки мне нужно искать в функции get_numb ()?

Я думаю, что функция должна будет проверять символ за символом, чтобы убедиться, что отдельные символы являются действительными числами, а не EOF или \ n. Я также должен проверить, что в строке не более 6 номеров. Я занимаюсь программированием около недели, так что мне нужно что-то знать, чтобы заняться этим?

Ответы [ 3 ]

1 голос
/ 23 сентября 2010

Возможные ошибки, которые вы описали, являются приемлемыми для проверки.

Я рекомендую вам дать ему шанс. Если их недостаточно, и вы застряли, опубликуйте свой код и объясните, что вы видите.

1 голос
/ 23 сентября 2010

Я настоятельно рекомендую начать с использования хорошей среды модульного тестирования и писать модульные тесты по мере необходимости. Таким образом, вы сможете охватить все вышеупомянутые случаи и убедиться, что ваша программа действительно работает так, как вы думаете, она должна работать.

На SO есть множество вопросов о фреймворках модульного тестирования на C ; выберите свою любимую.

Помимо упомянутых вами случаев, я могу подумать о следующем:

  • менее 6 цифр в строке
  • пустая строка
  • (если числа с плавающей запятой, различные числовые форматы)

Если ваш учитель дал вам образец ввода / вывода, вы, конечно, можете включить его и в свои модульные тесты.

0 голосов
/ 23 сентября 2010

Большинство преобразователей ascii в integer помогут вам с проверкой ошибок. Мы надеемся, что ваш учитель дал вам пример кода ввода и, возможно, в зависимости от методов ввода, пример кода преобразования. Поскольку это домашнее задание, я не хочу быть слишком конкретным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...