c - 结构功能

标签 c

我需要编写一个函数来读取用户的输入并将其存储到结构中。在c.

typedef struct {
   float real, imag;
} complex_t;


complex_t read_complex(void)
{

}

我应该如何扫描输入?

最佳答案

#include < stdio.h >

typedef struct
{
  int re;// real part  
  int im;//imaginary part
} complex;

void add(complex a, complex b, complex * c)
{
  c->re = a.re + b.re;
  c->im = a.im + b.im;
}

void multiply(complex a, complex b, complex * c)
{
  c->re = a.re * b.re - a.im * b.im;
  c->im = a.re * b.im + a.im * b.re;
}

main()
{
  complex x, y, z;
  char Opr[2];

  printf("  Input first operand. \n");
  scanf("%d %d", &x.re, &x.im);
  printf("  Input second operand. \n");
  scanf("%d %d", &y.re, &y.im);
  printf("  Select operator.(+/x) \n");
  scanf("%1s", Opr);

  switch(Opr[0]){
    case '+':
          add(x, y, &z); 
          break;
    case 'x':
          multiply(x, y, &z);
          break;
    default:
      printf("Bad operator selection.\n");
      break;
  }
  printf("[%d + (%d)i]", x.re,x.im);
  printf(" %s ", Opr);
  printf("[%d + (%d)i] = ", y.re, y.im);
  printf("%d +(%d)i\n", z.re, z.im);
}

关于c - 结构功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13459932/

相关文章:

c - 为数组赋值时发生段错误

c - 不使用 qsort 对 2x3 矩阵进行排序

c - 在 C 中,如何打印出存储在特定内存地址的内容?

c - 使用 MMAP 将输出打印到文件

c - 如何确定嵌入式系统 C 上正在使用的内存?

c - "Mixed declaration and code"警告,是否值得解决?

python - 我可以将串行对象转换为文件描述符并将其传递给 C 程序吗?

c - 无法在没有 $DISPLAY for X11 的情况下自动启动 dbus-daemon。网 bean 。 Pi 作为远程主机

c - 反转一个短语并用 c 写得很奇怪

c++ - 如何使用 WinPcap 发送/注入(inject)数据包