penginginten
级别: 工控侠客
精华主题: 0
发帖数量: 178 个
工控威望: 3237 点
下载积分: 954 分
在线时间: 164(小时)
注册时间: 2019-04-08
最后登录: 2024-04-29
查看penginginten的 主题 / 回贴
楼主  发表于: 2022-08-28 11:02
//定义变量
VAR
    nStart                :ARRAY[1..100]OF BOOL;
    nWord                :ARRAY[1..200]OF INT;
    nWord1                :ARRAY[1..100]OF INT;
    i                    :INT;
    l                    :INT;
    q                    :INT;
END_VAR

//程序

//赋值
IF nStart[1] THEN
    FOR i:=1 TO UINT_TO_INT(SIZEOF(nWord)/2) DO
        nWord:=1000-i;
    END_FOR
    nStart[1]:=FALSE;
END_IF

//冒泡排序
IF nStart[2] THEN
    FOR i:=1 TO UINT_TO_INT(SIZEOF(nWord)/2) DO
        FOR l:=1 TO UINT_TO_INT(SIZEOF(nWord)/2)-i DO
            IF nWord[l+1]<nWord[l] THEN
                q:=nWord[l+1];
                nWord[l+1]:=nWord[l];
                nWord[l]:=q;
            END_IF
        END_FOR
    END_FOR
    nStart[2]:=FALSE;
END_IF