RockCarry 发表于 2008-5-15 09:56

个人认为操作系统的复杂程度没有编译器技术的复杂程度高,我接触过 ucos 等嵌入式操作系统,这些系统在任务调度、内存管理上的基本算法都是比较容易理解和实现的,关键是对硬件平台的理解,对系统架构的设计和代码的优化更加重要。而编译原理不同,其中的形式语言与自动机技术,是极其高深,抽象的理论知识,需要严格的演绎和推导,其理论的晦涩和技术的复杂程度,学过编译原理的人,都应该深有体会。而至于像飞燕这样的语法加亮程序,这样简单的应用,当然可以不借助任何分析工具来完成,这样也可以锻炼自己的编程能力。

VxWorks 发表于 2008-5-15 10:44

顶BockCarry
编译原理是我在大学学习计算机时感受的最牛的计算机科学理论。
若论使用算法的密集度,OS和compiler是不能比的。OS中使用的技术用的算法并不高深,构造一个kernel更像是一个工程,而构造一个compiler更像是一个艺术作品,程序设计的艺术。

楼主的程序只是做了简单的C词法分析,编译理论对词法分析进行了透彻的研究,从正则到DFA构造很简单,从DFA到词法分析程序的编写也没有什么技术含量可言。在这方面的算法研究使得写一个词法分析程序已经程式化了,这种枯燥无味的过程往往借助lex进行自动生成,就想现在的IDE可以自动生成SQL语句一样。

BockCarry能在本科时做一个完整的编译器我很佩服,做到中间代码生成我就没有耐心了,寄存器分配以及后面的生成可执行程序我觉得太枯燥已经做不下去了。

雨中飛燕 发表于 2008-5-15 11:57

[quote][bo]以下是引用 [un]RockCarry[/un] 在 2008-5-15 09:49 的发言:[/bo]
原来如此,加油吧,希望你能做得更好。不过程序好像无法运行,代码也打不开啊。如果是做编译器,我想借助 lex & yacc 是最好的办法,编译器构造技术的复杂程度你也许还没有认识到,一个人如果不借助工具,要想完成具有实用价值的编 ... [/quote]
偶换了一个编译模式,现在这个版本应该运行上没有问题了
顺便想了一个办法,把它做得更通用。
我很清楚地知道制作编译器有多么复杂,所以我目前也只做语法高亮

[img]http://blog.programfan.com/upfile/200804/20080430094836.gif[/img][color=white]

RockCarry 发表于 2008-5-15 12:27

[quote][bo]以下是引用 [un]VxWorks[/un] 在 2008-5-15 10:44 的发言:[/bo]

顶BockCarry
编译原理是我在大学学习计算机时感受的最牛的计算机科学理论。
若论使用算法的密集度,OS和compiler是不能比的。OS中使用的技术用的算法并不高深,构造一个kernel更像是一个工程,而构造一个compiler更像是一 ... [/quote]
过奖了,我的作品也不过是一个试验品,也并没有最终生成目标代码,生成的结果是四元式形式的中间代码,没有做代码优化,就直接写了一个虚拟机,使其可以直接运行编译生成的四元式。所以说来还是有点惭愧了,其实做的也不是很好,基本上没有什么实用价值。

StarWing83 发表于 2008-5-15 12:28

我以前做了一个解释运行的编译器,类似于JAVA,是半编译半解释的…………不过后来失败了的说,主要是LR文法的构造问题……………………
话说,半编译半解释的编译器还是很好做的,因为没有代码优化和寄存器分配………………

StarWing83 发表于 2008-5-15 12:29

回复 128# 的帖子

嘿嘿,我和你一样,只不过生成的是不等长的后缀表达式…………

雨中飛燕 发表于 2008-5-24 14:37

顶起

[img]http://blog.programfan.com/upfile/200804/20080430094836.gif[/img][color=white]

lingluoz 发表于 2008-5-24 15:50

不过还是觉得vc6的语法高亮看上去最爽。。。

雨中飛燕 发表于 2008-5-24 16:07

你是说字体还是什么??

[img]http://blog.programfan.com/upfile/200804/20080430094836.gif[/img][color=white]

kkqq 发表于 2008-5-24 18:59

[tk05] 这个不错`~本来我也想做一下~~一直没时间~~

kkqq 发表于 2008-5-24 19:09

[tk06] 飞燕姐~~那代码的解压密码是什么呀?~~
不知道如何解压~~

liujian885 发表于 2008-5-24 21:03

既然发了代码怎么又不发解压密码?

Hunt 发表于 2008-5-25 00:10

源代码需要密码才能解压

wzhings 发表于 2008-5-25 00:40

/*****************************************************************
** HighlightCodeV3.0 software by yzfy(雨中飞燕) [url]http://yzfy.org[/url] **
*****************************************************************/
#include <cstdio>
#include <vector>
#include <deque>
using namespace std;
//-----------------------------------------------
typedef struct road // list
{
    int v;
    road *next;
}road;
//-----------------------------------------------
vector<road> vec;
const int N = 10005;
int level[N];
//-----------------------------------------------
void Join( int v, int w ) // add edge
{
    road *p = new road;
    p->v = w;
    p->next = vec[v].next; vec[v].next = p;   
}
//-----------------------------------------------
void bfs( int s, int e ) //bfs
{
    deque<int> q;
    q.push_back(s);
    while( !q.empty() )
    {
        int t = q[0];
        road *p = vec[t].next;
        while( p != NULL )
        {
            if( level[p->v] || p->v == s ) { p = p->next; continue; }
            level[p->v] = level[t] + 1;
            if( p->v == e ) break;
            q.push_back( p->v ); p = p->next;   
        }   
        q.pop_front(); delete p;
    }
    q.clear();
}
//-----------------------------------------------
int main()
{
    int n, k, i;
    while( scanf( "%d%d", &n, &k ), n || k ) // input
    {
        for( i = 0; i <= n; i++ ) // init
        {
                road r;
            r.v = i; r.next = NULL;
            vec.push_back( r ); level[[i][/i]i] = 0;     
        }
        for( i = 0; i < k; i++ ) // input and add edge
        {
            int a, b;
            scanf( "%d%d", &a, &b );
            Join( a, b ); Join( b, a );
        }   
        int s, e;
        scanf( "%d%d", &s, &e );
        if( s == e ) { puts("0"); vec.clear(); continue; }
        bfs( s, e );
        if( level[e] == 0 ) puts( "No solution" ); // output
        else printf( "%d\n", level[e] - 1 );
        vec.clear();
    }
    return 0;
}

wzhings 发表于 2008-5-25 00:44

#include <cstdio>

const int MAX=30;
int a[MAX][MAX];

void s(int x, int y, int m) {
        int r=0, t=0, i;
        while(true) {
                for(i=r; i<=y; i++)
                        a[r][i]=++t;
                if(t==m)
                        break;
                r++;
                for(i=r; i<=x; i++)
                        a[i][y]=++t;
                if(t==m)
                        break;
                for(i=y-1; i>=r-1; i--)
                        a[x][i]=++t;
                if(t==m)
                        break;
                x--;
                for(i=x; i>=r; i--)
                        a[i][r-1]=++t;
                if(t==m)
                        break;
                y--;
        }
}

void n(int x, int y, int m) {
        int r=0, t=0, i;
        while(true) {
                for(i=r; i<=x; i++)
                        a[i][r]=++t;
                if(t==m)
                        break;
                r++;
                for(i=r; i<=y; i++)
                        a[x][i]=++t;
                if(t==m)
                        break;
                for(i=x-1; i>=r-1; i--)
                        a[i][y]=++t;
                if(t==m)
                        break;
                x--;
                for(i=y-1; i>=r; i--)
                        a[r-1][i]=++t;
                if(t==m)
                        break;
                y--;
        }
}

int main() {
        int x, y, t, m;
        
        while(scanf("%d%d%d",&x,&y,&t) != EOF) {
                m=x*y;
                if(t)
                        s(--y,--x,m);
                else
                        n(--y,--x,m);
               
                for(t=0; t<=y; t++) {
                        for(m=0; m<=x; m++)
                                printf("%4d", a[t][m]);
                        printf("\n");
                }
               
                printf("\n");
        }
        
        return 0;
}



#include "stdio.h"
int main()
{
    int i,j,t;
    while(scanf("%d%d%d",&i,&j,&t)!=EOF){
          int n=1,h=0,s=0, k[31][31]={{},{}};
          while(!t){
                   k[h][s]=n++;
                   if(h<=(i+1)/2 && s<j-1 && k[h][s+1]==0 && (h<1 ||k[h-1][s]!=0))s++;
                   else if((s>=(j/2)) && h<i-1 && k[h+1][s]==0)h++;
                   else if(s>0 && k[h][s-1]==0)s--;
                   else if(h>0 && k[h-1][s]==0)h--;
                   else break;
                   }
          while(t){
                   k[h][s]=n++;
                   if(s<=(j+1)/2 && h<i-1 && k[h+1][s]==0 && (s<1 || k[h][s-1]!=0))h++;
                   else if(h>=(i/2)&& s<j-1 && k[h][s+1]==0)s++;
                   else if(h>0 && k[h-1][s]==0)h--;
                   else if(s>0 && k[h][s-1]==0)s--;
                   else break;
                   }
          for(s=0;s<j;s++){
            for(h=0;h<i;h++){
               printf("%4d",k[h][s]);
               }
            printf("\n");
            }
          printf("\n");
          }
    return 0;
}

#include "stdio.h"
int main()
{
    int i,j,t;
    while(scanf("%d%d%d",&j,&i,&t)!=EOF){
          int n=1,h=0,s=0, k[31][31]={{},{}};
          i--;j--;
          while(t){
                   k[s][h]=n++;
                   if((h>=s || k[s-1][h]!=0) && h<j && k[s][h+1]==0 )h++;
                   else if( s<i && k[s+1][h]==0)s++;
                   else if( h>0 && k[s][h-1]==0)h--;
                   else if( s>0 && k[s-1][h]==0)s--;
                   else break;
                   }
          while(!t){
                    k[s][h]=n++;
                   if((s>=h || k[s][h-1]!=0) && s<i && k[s+1][h]==0 )s++;
                   else if( h<j && k[s][h+1]==0)h++;
                   else if( s>0 && k[s-1][h]==0)s--;
                   else if( h>0 && k[s][h-1]==0)h--;
                   else break;
                   }
          for(s=0;s<=i;s++){
            for(h=0;h<=j;h++){
               printf("%4d",k[s][h]);
               }
            printf("\n");
            }
          printf("\n");
          }
    return 0;
}

wzhings 发表于 2008-5-25 00:49

[quote][font=新宋体][size=2][color=#008000]/*****************************************************************
** HighlightCodeV3.0 software by yzfy(雨中飞燕) [url]http://yzfy.org[/url] **
*****************************************************************/
[/color][color=#FF0000]#include <stdio.h>
[/color][color=#FF0000]#include <conio.h>
[/color][color=#0000FF]int [/color][color=#FF0000]main[/color]()
[color=#800000]{
[/color][color=#FF0000]printf[/color]([color=#FF00FF]"Computer Science"[/color]);
[color=#008080]getch[/color]();
[color=#0000FF]return [/color][color=#800080]0[/color];
[color=#800000]}
[/color][/size][/font][/quote]

[tk44] [tk44]
原来真的是要除了代码,还得加点儿东西才能"不小于3个字符"!!!!!!!!
[[it] 本帖最后由 wzhings 于 2008-5-25 01:02 编辑 [/it]]

[[it] 本帖最后由 wzhings 于 2008-5-25 01:03 编辑 [/it]]

wzhings 发表于 2008-5-25 01:05

[quote][font=新宋体][size=2][color=#008000]/*****************************************************************
** HighlightCodeV3.0 software by yzfy(雨中飞燕) [url]http://yzfy.org[/url] **
*****************************************************************/
[/color][color=#FF0000]#include <cstdio>

[/color][color=#0000FF]const int [/color][color=#800080]MAX[/color]=[color=#800080]30[/color];
[color=#0000FF]int [/color]a[color=#800000][[/color][color=#800080]MAX[/color][color=#800000]][[/color][color=#800080]MAX[/color][color=#800000]][/color];

[color=#0000FF]void [/color][color=#008080]s[/color]([color=#0000FF]int [/color]x, [color=#0000FF]int [/color]y, [color=#0000FF]int [/color]m) [color=#800000]{
        [/color][color=#0000FF]int [/color]r=[color=#800080]0[/color], t=[color=#800080]0[/color], i;
        [color=#0000FF]while[/color](true) [color=#800000]{
                [/color][color=#0000FF]for[/color](i=r; i<=y; i++)
                        a[color=#800000][[/color]r[color=#800000]][[/color]i[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                r++;
                [color=#0000FF]for[/color](i=r; i<=x; i++)
                        a[color=#800000][[/color]i[color=#800000]][[/color]y[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                [color=#0000FF]for[/color](i=y-[color=#800080]1[/color]; i>=r-[color=#800080]1[/color]; i--)
                        a[color=#800000][[/color]x[color=#800000]][[/color]i[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                x--;
                [color=#0000FF]for[/color](i=x; i>=r; i--)
                        a[color=#800000][[/color]i[color=#800000]][[/color]r-[color=#800080]1[/color][color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                y--;
        [color=#800000]}
}

[/color][color=#0000FF]void [/color][color=#008080]n[/color]([color=#0000FF]int [/color]x, [color=#0000FF]int [/color]y, [color=#0000FF]int [/color]m) [color=#800000]{
        [/color][color=#0000FF]int [/color]r=[color=#800080]0[/color], t=[color=#800080]0[/color], i;
        [color=#0000FF]while[/color](true) [color=#800000]{
                [/color][color=#0000FF]for[/color](i=r; i<=x; i++)
                        a[color=#800000][[/color]i[color=#800000]][[/color]r[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                r++;
                [color=#0000FF]for[/color](i=r; i<=y; i++)
                        a[color=#800000][[/color]x[color=#800000]][[/color]i[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                [color=#0000FF]for[/color](i=x-[color=#800080]1[/color]; i>=r-[color=#800080]1[/color]; i--)
                        a[color=#800000][[/color]i[color=#800000]][[/color]y[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                x--;
                [color=#0000FF]for[/color](i=y-[color=#800080]1[/color]; i>=r; i--)
                        a[color=#800000][[/color]r-[color=#800080]1[/color][color=#800000]][[/color]i[color=#800000]][/color]=++t;
                [color=#0000FF]if[/color](t==m)
                        [color=#0000FF]break[/color];
                y--;
        [color=#800000]}
}

[/color][color=#0000FF]int [/color][color=#FF0000]main[/color]() [color=#800000]{
        [/color][color=#0000FF]int [/color]x, y, t, m;
        
        [color=#0000FF]while[/color]([color=#FF0000]scanf[/color]([color=#FF00FF]"%d%d%d"[/color],&x,&y,&t) != [color=#800080]EOF[/color]) [color=#800000]{
                [/color]m=x*y;
                [color=#0000FF]if[/color](t)
                        [color=#008080]s[/color](--y,--x,m);
                [color=#0000FF]else
                        [/color][color=#008080]n[/color](--y,--x,m);
               
                [color=#0000FF]for[/color](t=[color=#800080]0[/color]; t<=y; t++) [color=#800000]{
                        [/color][color=#0000FF]for[/color](m=[color=#800080]0[/color]; m<=x; m++)
                                [color=#FF0000]printf[/color]([color=#FF00FF]"%4d"[/color], a[color=#800000][[/color]t[color=#800000]][[/color]m[color=#800000]][/color]);
                        [color=#FF0000]printf[/color]([color=#FF00FF]"\n"[/color]);
                [color=#800000]}
               
                [/color][color=#FF0000]printf[/color]([color=#FF00FF]"\n"[/color]);
        [color=#800000]}
        
        [/color][color=#0000FF]return [/color][color=#800080]0[/color];
[color=#800000]}



[/color][color=#FF0000]#include [/color][color=#FF00FF]"stdio.h"
[/color][color=#0000FF]int [/color][color=#FF0000]main[/color]()
[color=#800000]{
    [/color][color=#0000FF]int [/color]i,j,t;
    [color=#0000FF]while[/color]([color=#FF0000]scanf[/color]([color=#FF00FF]"%d%d%d"[/color],&i,&j,&t)!=[color=#800080]EOF[/color])[color=#800000]{
            [/color][color=#0000FF]int [/color]n=[color=#800080]1[/color],h=[color=#800080]0[/color],s=[color=#800080]0[/color], k[color=#800000][[/color][color=#800080]31[/color][color=#800000]][[/color][color=#800080]31[/color][color=#800000]][/color]=[color=#800000]{{}[/color],[color=#800000]{}}[/color];
            [color=#0000FF]while[/color](!t)[color=#800000]{
                    [/color]k[color=#800000][[/color]h[color=#800000]][[/color]s[color=#800000]][/color]=n++;
                    [color=#0000FF]if[/color](h<=(i+[color=#800080]1[/color])/[color=#800080]2 [/color]&& s<j-[color=#800080]1 [/color]&& k[color=#800000][[/color]h[color=#800000]][[/color]s+[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0 [/color]&& (h<[color=#800080]1 [/color]||k[color=#800000][[/color]h-[color=#800080]1[/color][color=#800000]][[/color]s[color=#800000]][/color]!=[color=#800080]0[/color]))s++;
                    [color=#0000FF]else if[/color]((s>=(j/[color=#800080]2[/color])) && h<i-[color=#800080]1 [/color]&& k[color=#800000][[/color]h+[color=#800080]1[/color][color=#800000]][[/color]s[color=#800000]][/color]==[color=#800080]0[/color])h++;
                    [color=#0000FF]else if[/color](s>[color=#800080]0 [/color]&& k[color=#800000][[/color]h[color=#800000]][[/color]s-[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0[/color])s--;
                    [color=#0000FF]else if[/color](h>[color=#800080]0 [/color]&& k[color=#800000][[/color]h-[color=#800080]1[/color][color=#800000]][[/color]s[color=#800000]][/color]==[color=#800080]0[/color])h--;
                    [color=#0000FF]else break[/color];
                    [color=#800000]}
            [/color][color=#0000FF]while[/color](t)[color=#800000]{
                    [/color]k[color=#800000][[/color]h[color=#800000]][[/color]s[color=#800000]][/color]=n++;
                    [color=#0000FF]if[/color](s<=(j+[color=#800080]1[/color])/[color=#800080]2 [/color]&& h<i-[color=#800080]1 [/color]&& k[color=#800000][[/color]h+[color=#800080]1[/color][color=#800000]][[/color]s[color=#800000]][/color]==[color=#800080]0 [/color]&& (s<[color=#800080]1 [/color]|| k[color=#800000][[/color]h[color=#800000]][[/color]s-[color=#800080]1[/color][color=#800000]][/color]!=[color=#800080]0[/color]))h++;
                    [color=#0000FF]else if[/color](h>=(i/[color=#800080]2[/color])&& s<j-[color=#800080]1 [/color]&& k[color=#800000][[/color]h[color=#800000]][[/color]s+[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0[/color])s++;
                    [color=#0000FF]else if[/color](h>[color=#800080]0 [/color]&& k[color=#800000][[/color]h-[color=#800080]1[/color][color=#800000]][[/color]s[color=#800000]][/color]==[color=#800080]0[/color])h--;
                    [color=#0000FF]else if[/color](s>[color=#800080]0 [/color]&& k[color=#800000][[/color]h[color=#800000]][[/color]s-[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0[/color])s--;
                    [color=#0000FF]else break[/color];
                    [color=#800000]}
            [/color][color=#0000FF]for[/color](s=[color=#800080]0[/color];s<j;s++)[color=#800000]{
            [/color][color=#0000FF]for[/color](h=[color=#800080]0[/color];h<i;h++)[color=#800000]{
                [/color][color=#FF0000]printf[/color]([color=#FF00FF]"%4d"[/color],k[color=#800000][[/color]h[color=#800000]][[/color]s[color=#800000]][/color]);
                [color=#800000]}
            [/color][color=#FF0000]printf[/color]([color=#FF00FF]"\n"[/color]);
            [color=#800000]}
            [/color][color=#FF0000]printf[/color]([color=#FF00FF]"\n"[/color]);
            [color=#800000]}
    [/color][color=#0000FF]return [/color][color=#800080]0[/color];
[color=#800000]}

[/color][color=#FF0000]#include [/color][color=#FF00FF]"stdio.h"
[/color][color=#0000FF]int [/color][color=#FF0000]main[/color]()
[color=#800000]{
    [/color][color=#0000FF]int [/color]i,j,t;
    [color=#0000FF]while[/color]([color=#FF0000]scanf[/color]([color=#FF00FF]"%d%d%d"[/color],&j,&i,&t)!=[color=#800080]EOF[/color])[color=#800000]{
            [/color][color=#0000FF]int [/color]n=[color=#800080]1[/color],h=[color=#800080]0[/color],s=[color=#800080]0[/color], k[color=#800000][[/color][color=#800080]31[/color][color=#800000]][[/color][color=#800080]31[/color][color=#800000]][/color]=[color=#800000]{{}[/color],[color=#800000]{}}[/color];
            i--;j--;
            [color=#0000FF]while[/color](t)[color=#800000]{
                    [/color]k[color=#800000][[/color]s[color=#800000]][[/color]h[color=#800000]][/color]=n++;
                    [color=#0000FF]if[/color]((h>=s || k[color=#800000][[/color]s-[color=#800080]1[/color][color=#800000]][[/color]h[color=#800000]][/color]!=[color=#800080]0[/color]) && h<j && k[color=#800000][[/color]s[color=#800000]][[/color]h+[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0 [/color])h++;
                    [color=#0000FF]else if[/color]( s<i && k[color=#800000][[/color]s+[color=#800080]1[/color][color=#800000]][[/color]h[color=#800000]][/color]==[color=#800080]0[/color])s++;
                    [color=#0000FF]else if[/color]( h>[color=#800080]0 [/color]&& k[color=#800000][[/color]s[color=#800000]][[/color]h-[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0[/color])h--;
                    [color=#0000FF]else if[/color]( s>[color=#800080]0 [/color]&& k[color=#800000][[/color]s-[color=#800080]1[/color][color=#800000]][[/color]h[color=#800000]][/color]==[color=#800080]0[/color])s--;
                    [color=#0000FF]else break[/color];
                    [color=#800000]}
            [/color][color=#0000FF]while[/color](!t)[color=#800000]{
                    [/color]k[color=#800000][[/color]s[color=#800000]][[/color]h[color=#800000]][/color]=n++;
                    [color=#0000FF]if[/color]((s>=h || k[color=#800000][[/color]s[color=#800000]][[/color]h-[color=#800080]1[/color][color=#800000]][/color]!=[color=#800080]0[/color]) && s<i && k[color=#800000][[/color]s+[color=#800080]1[/color][color=#800000]][[/color]h[color=#800000]][/color]==[color=#800080]0 [/color])s++;
                    [color=#0000FF]else if[/color]( h<j && k[color=#800000][[/color]s[color=#800000]][[/color]h+[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0[/color])h++;
                    [color=#0000FF]else if[/color]( s>[color=#800080]0 [/color]&& k[color=#800000][[/color]s-[color=#800080]1[/color][color=#800000]][[/color]h[color=#800000]][/color]==[color=#800080]0[/color])s--;
                    [color=#0000FF]else if[/color]( h>[color=#800080]0 [/color]&& k[color=#800000][[/color]s[color=#800000]][[/color]h-[color=#800080]1[/color][color=#800000]][/color]==[color=#800080]0[/color])h--;
                    [color=#0000FF]else break[/color];
                    [color=#800000]}
            [/color][color=#0000FF]for[/color](s=[color=#800080]0[/color];s<=i;s++)[color=#800000]{
            [/color][color=#0000FF]for[/color](h=[color=#800080]0[/color];h<=j;h++)[color=#800000]{
                [/color][color=#FF0000]printf[/color]([color=#FF00FF]"%4d"[/color],k[color=#800000][[/color]s[color=#800000]][[/color]h[color=#800000]][/color]);
                [color=#800000]}
            [/color][color=#FF0000]printf[/color]([color=#FF00FF]"\n"[/color]);
            [color=#800000]}
            [/color][color=#FF0000]printf[/color]([color=#FF00FF]"\n"[/color]);
            [color=#800000]}
    [/color][color=#0000FF]return [/color][color=#800080]0[/color];
[color=#800000]}[/color][/size][/font][/quote]

[tk43] [tk43]

njinji007 发表于 2008-5-25 01:42

谢谢楼主.

StarWing83 发表于 2008-5-29 15:12

顶一个~~~~
发现还是新版本的好啊……

思考ING 发表于 2008-5-29 18:52

解压密码~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

页: 1 2 3 4 5 6 [7] 8 9 10

编程论坛