Простейшая программа для начинающих, ввод и вывод комплексных чисел, структуры - C (СИ)
Формулировка задачи:
Нужно ввести и вывести комплексные числа
С языком си только начинаю знакомиться
Где какие ошибки?
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- int main()
- {
- struct ComplexObj {
- int RealValue;
- int ImaginValue;
- };
- void PrintComplex(struct ComplexObj Zed){
- int pv;
- pv = Zed.RealValue;
- printf("%f",&pv,"%s+i*");
- pv = Zed.ImaginValue;
- printf("%f",&pv,"\n");
- };
- void ScanComplex(struct ComplexObj Zed){
- printf("z=");
- int rv;
- scanf("%f",&rv);
- Zed.RealValue = rv;
- printf("+i*");
- scanf("%f",&rv);
- Zed.ImaginValue=rv;
- printf("\n");
- };
- struct ComplexObj Z;
- ScanComplex(Z);
- PrintComplex(Z);
- return 0;
- }
Надо именно через структуру, без complex.h
только не %f, а %d
Решение задачи: «Простейшая программа для начинающих, ввод и вывод комплексных чисел, структуры»
textual
Листинг программы
- #define _CRT_SECURE_NO_WARNING
- #include <stdio.h>
- #include <stdlib.h>
- //#include <malloc.h>
- #include <string.h>
- struct ComplexObj {
- float RealValue;
- float ImaginValue;
- };
- void PrintComplex(struct ComplexObj *Zed){
- float pv;
- pv = Zed->RealValue;
- printf("%f",creal(pv));
- printf("+i*");
- pv = Zed->ImaginValue;
- printf("%f",creal(pv));
- };
- void ScanComplex(struct ComplexObj *Zed){
- printf("z=");
- float rv;
- scanf("%f", &rv);
- Zed->RealValue = rv;
- printf("+i*");
- scanf("%f", &rv);
- Zed->ImaginValue=rv;
- printf("\n");
- };
- int main()
- {
- struct ComplexObj Z;
- ScanComplex(&Z);
- PrintComplex(&Z);
- return 0;
- }
Объяснение кода листинга программы
- Объявлена структура
ComplexObj
с полямиRealValue
иImaginValue
типаfloat
. - Функция
PrintComplex
принимает указатель на объект типаComplexObj
и выводит его значение в формате комплексного числа. - Функция
ScanComplex
принимает указатель на объект типаComplexObj
и запрашивает у пользователя ввод значения комплексного числа. - В функции
main
создан объектZ
типаComplexObj
, затем вызваны функцииScanComplex
иPrintComplex
для ввода и вывода значения этого объекта. - Ввод значения комплексного числа осуществляется в два этапа: сначала вводится действительная часть, затем мнимая.
- Значения полей
RealValue
иImaginValue
объектаZ
инициализируются значениями, введенными пользователем. - Значение объекта
Z
выводится в формате комплексного числа. - Возвращаемое значение функции
main
- 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д