Простейшая программа для начинающих, ввод и вывод комплексных чисел, структуры - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Нужно ввести и вывести комплексные числа С языком си только начинаю знакомиться Где какие ошибки?
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5. struct ComplexObj {
  6. int RealValue;
  7. int ImaginValue;
  8. };
  9. void PrintComplex(struct ComplexObj Zed){
  10. int pv;
  11. pv = Zed.RealValue;
  12. printf("%f",&pv,"%s+i*");
  13. pv = Zed.ImaginValue;
  14. printf("%f",&pv,"\n");
  15. };
  16. void ScanComplex(struct ComplexObj Zed){
  17. printf("z=");
  18. int rv;
  19. scanf("%f",&rv);
  20. Zed.RealValue = rv;
  21. printf("+i*");
  22. scanf("%f",&rv);
  23. Zed.ImaginValue=rv;
  24. printf("\n");
  25. };
  26. struct ComplexObj Z;
  27. ScanComplex(Z);
  28. PrintComplex(Z);
  29. return 0;
  30. }
Надо именно через структуру, без complex.h
только не %f, а %d

Решение задачи: «Простейшая программа для начинающих, ввод и вывод комплексных чисел, структуры»

textual
Листинг программы
  1. #define _CRT_SECURE_NO_WARNING
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. //#include <malloc.h>
  5. #include <string.h>
  6.     struct ComplexObj {
  7.         float RealValue;
  8.         float ImaginValue;
  9.         };
  10.      void PrintComplex(struct ComplexObj *Zed){
  11.       float pv;
  12.       pv = Zed->RealValue;
  13.       printf("%f",creal(pv));
  14.       printf("+i*");
  15.       pv = Zed->ImaginValue;
  16.       printf("%f",creal(pv));
  17.     };
  18.     void ScanComplex(struct ComplexObj *Zed){
  19.         printf("z=");
  20.         float rv;
  21.         scanf("%f", &rv);
  22.         Zed->RealValue = rv;
  23.         printf("+i*");
  24.         scanf("%f", &rv);
  25.         Zed->ImaginValue=rv;
  26.         printf("\n");
  27.     };
  28. int main()
  29. {
  30.     struct ComplexObj Z;
  31.     ScanComplex(&Z);
  32.     PrintComplex(&Z);
  33. return 0;
  34. }

Объяснение кода листинга программы

  1. Объявлена структура ComplexObj с полями RealValue и ImaginValue типа float.
  2. Функция PrintComplex принимает указатель на объект типа ComplexObj и выводит его значение в формате комплексного числа.
  3. Функция ScanComplex принимает указатель на объект типа ComplexObj и запрашивает у пользователя ввод значения комплексного числа.
  4. В функции main создан объект Z типа ComplexObj, затем вызваны функции ScanComplex и PrintComplex для ввода и вывода значения этого объекта.
  5. Ввод значения комплексного числа осуществляется в два этапа: сначала вводится действительная часть, затем мнимая.
  6. Значения полей RealValue и ImaginValue объекта Z инициализируются значениями, введенными пользователем.
  7. Значение объекта Z выводится в формате комплексного числа.
  8. Возвращаемое значение функции main - 0, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы