将伪代码转换为C
问题描述:
我该如何将其重写为C?将伪代码转换为C
for i = 1; i <= N && !quit; i++
{
for j = 1; i <= N && !quit; j++
{
quit = x(i,j) equals y(i,j)
}
}
我已经试过这样的事情
for (i = 1; i >= 1; i++)
{
for j = 1; j >= 1; j++)
{
if (x==y)
printf("Good");
else
continue;
}
}
但我认为这是总的无义,我只是不能找出正确的解决方案。该程序应计算两个方程x=a+u*i
; y=b+v*j
,其中我知道a, b, u, v
,我需要(x=y)
,否则重复,直到x=y
。如果不能相等,那就是printf("Wrong")
。
答
试试这个:
for (i=1; i <= N && !quit; i++)
{
for (j=1; j <= N && !quit; j++)
{
if (x==y){
printf("Good");
break;
}
if(j==N && i==N && x!=y){
printf("Wrong");
}
}
}
答
看看下面的代码:
unsigned i;
unsigned j;
bool quit = false;
for (i = 1; i <= N && !quit; i++)
{
for (j = 1; j <= N && !quit; j++)
{
if (x[i][j] == y[i][j])
{
quit = true;
}
}
}
我假设x和y是全局数组像以下:
int x[N+1][N+1] = { 0 };
int y[N+1][N+1] = { 0 };
Rearange您代码为您的需求。
检查赋值运算符和相等运算符之间的区别 – snr
您的C代码应该看起来更像伪代码。它看起来像'x'和'y'应该是函数或数组,取决于伪代码的“语法”。另外,如果'x'和'y'是数组,你可能需要调整一些东西,因为C具有基于0的数组,而许多伪代码描述假设基于1的数组。 –