谁能帮我把下面的PASCAL翻译成C语言?

来源:百度知道 编辑:UC知道 时间:2024/06/13 22:39:53
http://user.qzone.qq.com/229662649/blog/1222957121

分不是问题,还可以再给
我要完全改的,而且能算出结果

不好翻呢,C语言没有int64, 理论上可以用 long long int, 实际上 只有32位。C语言 数组下标从0起,不能直翻。PASCAL单个char 要翻成 C 的unsigned char, 因为普通的 char 要带 字符结束符,最少两个单元。

给你一一对应,翻前部:
#include <stdio.h>
#define MaxN 255
// Const MaxN = 255;
unsigned char P[7][7] = {
(‘>’,’>’,’<’,’<’,’<’,’>’,’>’),
(‘>’,’>’,’<’,’<’,’<’,’>’,’>’),
(‘>’,’>’,’>’,’<’,’<’,’>’,’>’),
(‘>’,’>’,’>’,’>’,’<’,’>’,’>’),
(‘<’,’<’,’<’,’<’,’<’,’=’,’>’),
(‘>’,’>’,’>’,’>’,’=’,’>’,’>’),
(‘<’,’<’,’<’,’<’,’<’,’<’,’<’)
}; // + - * ^ ( ) #

char inf[]="equal.in";
char Outf[] = "equal.out";
long int Num[MaxN];
char op[MaxN];
long int Tn,Top;
long int N,i,j;
char S[31];
long long int Value[27][11]; // 0to26,-5to+5
int T[26]; // T:Array [1..26] of boolean;
int