小编Kar*_*111的帖子

C中的有理数

这是tanennmbaum 的书中数据结构中的一个程序,我认为代码是错误的outrat->numerator/=a;,因为它不是一个有效的命令,因为它没有分配给它的值,如果我错了,请纠正我。请更正代码。

#include <iostream.h>
#include <conio.h>
#include <stdio.h>

struct rational
{
  int numerator;
  int denominator;
};

void reduce(struct rational *inrat, struct rational *outrat)
{
  int a, b, rem;

  if (inrat->numerator > inrat->denominator)
  {
    a = inrat->numerator;
    b = inrat->denominator;
  }
  else
  {
    a = inrat->denominator;
    b = inrat->numerator;
  }

  while (b != 0)
  {
    rem = a % b;
    a = b;
    b = rem;
  }

  outrat->numerator /= a;
  outrat->denominator /= a;
}

int equal(struct rational *rat1, struct …
Run Code Online (Sandbox Code Playgroud)

c data-structures

5
推荐指数
1
解决办法
3493
查看次数

如果语句后跟循环

if语句有一定的条件然后我在if语句中使用while循环和另一个条件,if语句中的条件是否会在每次迭代中被测试?

LIST-SEARCH'(L,k)
x=L.nil.next
if x!=L.nil
   while x.key!=k
         x=x.next
return x
Run Code Online (Sandbox Code Playgroud)

syntax scope pseudocode

-3
推荐指数
1
解决办法
111
查看次数

标签 统计

c ×1

data-structures ×1

pseudocode ×1

scope ×1

syntax ×1