QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 14027|回复: 3
打印 上一主题 下一主题

[其他资源] matlab生成exe文件(总结)

[复制链接]
字体大小: 正常 放大
我能 实名认证    中国数模人才认证   

24

主题

8

听众

2289

积分

升级  9.63%

  • TA的每日心情
    慵懒
    2023-4-27 19:48
  • 签到天数: 321 天

    [LV.8]以坛为家I

    社区QQ达人

    群组中国矿业大学数模培训

    群组数学建模培训课堂2

    群组2011年第一期数学建模

    群组学术交流B

    跳转到指定楼层
    1#
    发表于 2012-11-2 13:08 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    matlab功能相当的强大,写好了m文件但是其他很多电脑没有安装matalb,不能运行,所以我们想找到生成exe的可执行文件,我么就想到了和c语言c++进行混合编程,在windows下生成exe文件,matlab和vs等的文章很少大都是那几个 ,我自己在网上找了些东西总结了下:0 J$ x6 f$ R6 Z

    % m' Q9 Q! v/ v3 E% B, `% j6 V
    1.Matlab环境设置
    要建立独立运行的C应用程序,系统中需要安装MatlabMatlab编译器、C/C++编译器以及Matlab C/C++数学库函数和图形库函数。8 i, i& E2 B8 r; w, y% f
    Matlab编译器使用mbuild命令可以直接将C/C++源代码编译为独立运行程序,在这些源代码中可以使用Matlab提供的接口来调用Matlab数学库函数。
    + b. w' ~, t+ Z3 P# i! S% h: c
    虽然生成的可执行程序可以脱离Matlab环境运行,但是它需要Matlab C/C++数学库文件或者图形库文件的支持才能运行。但如果C/C++源代码完全是按传统C/C++源代码语法规则编写,没有包含Matlab数学库和图形库的调用,则不仅可以独立与Matlab环境,也不需要那两个库函数的支持。
    Matlab Command Window 下输入命令
    mbuild – setup
    操作过程如下图:
                                  
    然后输入命令
    mex – setup
    以类似的方法配置编译器。Matlab 的配置完成。
    2.VS环境设置
    1)设置Include Library 目录
    项目右键->属性->VC++目录->包含目录:添加
    <MATLAB>\R2010b\extern\include\win64
    <MATLAB>\R2010b\extern\include\
    项目右键->属性->VC++目录->库目录:添加
    <MATLAB>\R2010b\extern\lib\win32\microsoft
    <MATLAB>\R2010b\extern\lib\win64\microsoft
    截图(部分):
    2)设置工程目录
    项目右键->属性->C/C++->常规->附件包含目录:添加
    <MATLAB>\R2010b\extern\include\win64
    <MATLAB>\R2010b\extern\include\
    项目右键->属性->链接器->常规:添加
    <MATLAB>\R2010b\extern\lib\win32\microsoft
    <MATLAB>\R2010b\extern\lib\win64\microsoft
    项目右键->属性->链接器->输入->附件依赖性:添加
    libeng.lib
    ( }' v) Z" U: R) J/ D# r( {libmat.lib1 i$ @5 j+ }% D! {4 H$ q" c
    libmex.lib- ~7 u7 \% _+ j3 [& X8 @
    libmx.lib
      
    注:1.lib文件包含在<MATLAB>\R2010b\extern\lib\win64\microsoft,可根据需要增减
    2.附件依赖性在VS2010前以空格隔开,在VS2010后使用;隔开。
    截图:
    项目右键->属性->链接器->高级->目标计算机:更改(只针对64WINDOWS
    MachineX86 -> MachineX64
    注:分析原因为MATLAB根据计算机平台选择了X64编译环境,如此处不修改会出现 错误3
    3)配置管理器设置(只针对64WINDOWS
    生成->配置管理器->平台:更改
    Win32->X64
    注:分析原因为配合链接器中目标计算机的修改,如此处不修改会出现 错误4
    截图:
    3.系统(Windows)环境设置
    我的电脑->属性->高级系统设置->高级->环境变量->Path,添加:
    <MATLAB>\R2010b\bin;<MATLAB>\R2010b\extern\lib\win64\microsoft;<MATLAB>\bin\win64
    注:1.Windows7的情况下,用户变量系统
    变量都需 添加,如不添加,运行时会出现 错误5
    2.哈哈,别忘记重启哈,重启后生效
    OK!配置就此结束,现在就开始engOpen吧!!对了,别忘记添加#include "engine.h"

    7 h2 L: ?! w9 B1 }. Q  y/ u  ; U0 ^/ I6 H3 I" ?0 h) O3 R5 T
    1.设置编译器:
    , S+ T/ h% {2 `2 @. K# @8 w0 q在确定安装好Matlab Compiler后,还需要对Compiler进行适当的配置,方法是在Matlab命令窗口输入:5 Y% J3 F5 C& k# y' @, Y7 W  t0 n
    Mbuild –setup, 按提示选择matlab自带编译器LCC。
    4 m! S8 F, h: l5 _2 ]4 o
    ' {# [* ?1 w( w9 J/ m; v8 J2.将脚本编译为可执行文件:
    * [; m& q' |9 e+ h/ J3 d8 B如项目文件包含:gui.m, gui.gif, fun1.m。6 T" \* T0 p) H& K, W$ A3 U7 p6 q
    7 L' \9 `  `& l4 A' N
    在此路径下命令行输入:mcc –m gui.m,生 成:mccExcludedFiles.log,ReadMe.txt,gui.ctf,gui.prj,gui_main.c,gui_mcc_component_data.c,gui.exe。其中:gui.ctf,gui.exe为脱离matlab环境运行必需的文件。
    2 E. z! L8 F6 e
    ) u( I/ E  F$ F& Z& q3.在未安装matlab的机器上运行可执行程序。
    9 \" u  _+ i- Y7 _将R22007b\toolbox\compiler\deploy\win32中的MCRinstaller.exe安装到该计算机上,将生成可执行程序脱离matlab运行所需的函数库。3 ?- ^; Y" m& e% U& H4 E
    将2中生成的gui.ctf,gui.exe拷贝到该计算机同一路径。运行gui.exe将生成gui_mcr文件夹,包含程序运行所需的库。至此完成。
    5 d" b( S* F# M/ L$ s! P8 n
    5 ?/ W# M# w0 S+ {5 \4.去除独立可执行程序运行时的“DOS黑窗口”。
      ~$ S4 \  F% F( t以上生成的exe程序运行时首先弹出一个DOS界面窗口,如果不需要其输出数据和错误信息,可将其去除。
    8 f, g2 o9 E; u4 [  q
    & X0 B# v4 m- Y; l  Y2 }0 [0 Qmatlba命令行输入:
    . Z% ]& f1 l' _& ^, P1 n, s/ `, [% }- i  @4 `
    cd(prefdir)
    " o0 a% m6 C3 xedit compopts.bat
    # \8 _$ F3 z, N, u
    0 X" d' g" i" U5 b/ K此时compopts.bat打开,在文件最后添加:5 ?) t9 m- b! h# M# F

    9 ~  x6 z2 h; N+ A7 m. Aset LINKFLAGS=%LINKFLAGS% -subsystem windows
    1 ]* y0 q$ q6 Y! E- M9 {: b
    5 U8 d* M* }8 g6 J, {+ m7 |如果程序比较复杂,易出现异常,则不建议去除这个dos窗口以便调试。
    - K2 O7 E' J8 @: G/ K9 P8 A
    2 }3 ^+ m/ h! U- o4 a$ A- p另外,这个办法是适用于你用的编译器为LCC,如果是其他的,那么所加语句有所不同
    - P" \5 f4 q; f  a+ k5 ~
    # b6 P# L8 H% FMicrosoft Visual C/C++:/ h$ o" z6 C1 n2 D/ [9 P- V0 ?8 O

    ' p' f( r! P. i' d3 I1 K2 f  h: R% ^set LINKFLAGS=%LINKFLAGS% /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup! M% |: A$ i5 L

    * _8 d; I& U$ f; @6 x7 F4 F; @) ]Borland:
    9 Y+ q4 A4 H4 H5 X4 y! U: }3 D3 g& l) ~6 W$ @" |+ r
    set LINKFLAGS=%LINKFLAGS% -aa
    9 L; M% W1 d# W———————————————————————————————————————–; r; c" t; n! m: ?
    " @$ S; ~4 D9 v
    方法一:
    ( V. X( H% @8 a5 x- _已有gui.m文件和gui.fig文件+ _- x% b$ A2 [: g
    1 在matlab的command窗口中输入# F! ^  Q2 i, z
    mcc -B sgl GUI.m
    3 V, O* d5 S# Z7 S& ]" _% Y2 _8 j2.将上步生成的文件包括*m 文件和*.fig文件一起考到待运行的机器- i* E; C# x; P: ^
    2 Q! |+ F% Y% X5 s6 J+ m+ B
    此时仍需matlab所必需的动态连接库。% u9 R; `6 U) r# z6 b% Z
    3. 将 /extern/lib/win32/mglinstallar.exel拷贝到到待运行机器上- P, e. S& L* ^
    4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在将在指定目录下解压缩出bin和toolbox两个子目录,7 M1 F9 W2 ~! [
    其中在bin\win32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共4 i9 h3 s9 P, ]- G" k
    有37个。可以将这些.dll考入system32, 也可以直接放在应用程序目录下。
    & C9 b# h) P8 L, \而toolbox目录则必须与应用程序同一目录。  d3 [3 y3 Z# O1 M7 }7 ]8 W

    0 \5 _. C# _: R! R2 k方法二:; x0 y9 }+ |  n
    ; C: v5 {. i1 p9 v. W
    matlab编程很方便,强大的矩阵运算功能,很多好用的工具箱,但是一般程序都要在matlab环境中运行,能否脱离这个环境打包发布呢,matlab 也提供了这样的工具。
    ' Z# x( p7 ^: K4 Z
    , M: y, K! P0 D/ j; \. i1. 转化为c/c++程序并编译为.exe
    # |9 d$ [7 z- {8 O* |5 R先验证mcc是否可用,用matlab中的example验证即可
    / c6 ~3 ~; _% J, x, C建议不用matlab默认的lcc 编译器(可能有问题),可使用VC6编译器(按默认路径安装)
    - r$ e3 m7 l% _4 Z由于带有界面,需要图像库支持,编译时应使用命令: mcc -B sglcpp pressure! W5 ^: z8 S2 h- U
    编译生成若干c/c++源码,以及.exe文件、bin目录中figure菜单条/工具条文件(.fig)等
    3 c5 ~! _' @- Q" d* N! l程序发布需要.exe、bin\、.fig( C$ H8 E* I3 o1 ]6 s

    6 ^- U0 Q6 u, ?1 [" o2. 在未装matlab的电脑上运行程序需要数学运行时库、图像运行时库以及用到的工具箱mex文件
    " n2 O" N! Z& V" A2 ]/ G4 X0 ?前两者已经在\matlab\extern\lib\win32mglinstaller.exe压缩包中,将其解压,并在环境变量path中添加解压到的路径
    & ^9 H% ?3 R& Z! ]另外若程序中还用到其他工具箱的东西,那么需要将此工具箱中需要的mex文件也一并放在解压到的路径,子文件夹位置与matlab中的位置相同; y) B% Y% `) g+ L1 |4 [

    + m3 |) t6 f: i  O- [3. 在确保.exe程序可以运行的情况下 可以用setup factory打包发布6 a+ ^5 ?# x  Q' Z$ c% B/ l8 u
    以下通过注册表自动添加path路径
    ( y" Y: |1 h. }; |. M+ s5 k%————————————————————————————–- h$ t7 j/ L0 W% w2 N/ `
    Screen.Next(); — 进入下一个屏幕* @7 }2 k% N3 ?' R
    resultDialog = Dialog.Message(“注意”, “向环境变量中加入matlab数学库及图象库的安装路径?”, MB_YESNO, MB_ICONINFORMATION, MB_DEFBUTTON1);; ~9 ?$ C' B2 T5 c2 W) Z3 ]9 Z
    if (resultDialog == IDYES) then –加入安装路径
    8 y. }- p) A6 wstrPath = Registry.GetValue(HKEY_CURRENT_USER, “Environment”, “path”, true);; Q$ _) H/ W% ^" i
    if strPath ~= “” then+ T! t3 k, O! i' H
    strPath = String.Concat(strPath, “;”);. S) U2 e3 M- v
    end
    ) ?' x/ j; m% I! r5 I- N strPathToAdd = SessionVar.Expand(“%AppFolder%”);
    5 v7 }/ q, S# ~4 X$ K4 KstrPathToAdd = String.Concat(strPathToAdd,”file://MATLAB6p5//bin//win32″);
    ) X8 o( b4 x* g8 a6 F! A3 h— 如果路径中无该位置,则加入
    " l9 ?, N+ b& z% Gif String.Find(strPath,strPathToAdd) == -1 then/ d* [+ h. B. C0 v& z  X6 x; m
    strPath = String.Concat(strPath, strPathToAdd);# F. k; d" m6 A% g9 u5 k* V& E2 ]
    Registry.SetValue(HKEY_CURRENT_USER, “Environment”, “path”, strPath, REG_SZ);
    4 s( W/ S/ I8 N7 K end" P, o9 U4 q2 x2 T& b1 G$ C# H
    end
      |* n0 @% Y$ }1 y) ?7 x%————————————————————————————–
    ; \! q' U, C; Y5 t方法三:" A& |1 G( s7 v- E. @4 `1 S, M& N
    在网上搜了一个方法,还没有用过, 贴在这里仅供参考:: I% Q! n4 ^2 D9 P
    一、 完全可以,而且生成的.exe文件可以在没有安装matlab的机器上使用,方法吗---) q# Y/ o. `" ?% k: a
    首先,使用mcc编译得到.exe文件,具体参数见帮助文件;
    $ j* u# A1 O- E其次,将.exe文件及相关资源文件以及一个称为mglinstaller.exe的软件包一起拷到别的机器上,运行mglinstaller.exe,并添加环境变量path,即可执行.exe文件
    & {$ e1 _' N( F. {2 d; l# t第三,在MATLAB环境,执行命令
    4 m8 W1 ~+ ^0 M3 I# bmcc -m -B sgl file.m7 s. l2 S$ F1 o9 F0 D
    或者 mcc -p -B sglcpp file.m, H- G, p3 @& m4 w" j1 M+ h( A+ T
    请键入help mcc看帮助。4 B6 _  [0 k1 a/ l  @
    mcc是在“command windows” 用的吗?
    : ^6 X2 \  h/ }; ]; h只要“mglinstaller.exe”,与.exe文件及相关资源文件就可以了吗./ w" [! \# k0 E, B* @0 D
    还有“添加环境变量path”是path到.exe文件的环境中是吧?
    6 j4 r2 u9 o" x+ e: H9 i+ P/ l) p5 n
    二、 在matlab下的workspace里打comtool,点file-open project将我们先前建好的 comtest.cbl工程文件打开,再点component–package component就实现了打包,此时到 comtest\distrib文件夹里看,生成的comtest.exe就是打包后的解压程序,双击它会解压出一些文件,再点击解压出来的 _install.bat就可以实现安装
    & y9 k6 |3 I, C, W" G! _三、 如何将gui生成exe ?- {: }0 h/ c1 l* X) I/ n4 ]
    已有gui.m文件和gui.fig文件' P7 v' {& U5 k' D8 @: _
    1 在matlab的command窗口中输入6 e0 @& @( P* Q* S* f" @
    mcc -B sgl GUI.m
    ! D' r7 r- D3 m2 |7 Z9 B2.将上步生成的文件包括*m 文件和*.fig文件一起考到待运行的机器9 T# N5 D' y+ j6 I$ X( L/ k5 f' R
    此时仍需matlab所必需的动态连接库。* H* H6 m4 l; G3 i. \' p3 y
    3. 将 /extern/lib/win32 /mglinstallar.exel拷贝到到待运行机器上
    . {$ }# M" F. J+ Z4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在指定目录下解压缩出bin和toolbox两子目录,其中在 bin\win32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共有37个。可以将这些.dll考入system32, 也可以直接放在应用程序目录下。而toolbox目录则必须与应用程序同一目录。2 S$ J4 U& c, f: O  ^' ~
    5.大功告成。 1 O, ^: m: R, H. z9 z
    6 j1 m! K7 C! [
    外一篇:MATLAB M文件变exe文件& B; f6 o1 H, Q' M/ ?
    我也是最近才搞定的这个问题,按下述步骤进行,就没有问题,我已经运行成功,但是遇到你程序的bug的话,便会出现错误,关闭整个程序
    8 x' m3 p+ M) [/ H+ z8 ~1 w" ]4 h9 g希望这些对你有用
    6 y6 M4 @3 t  R/ U9 C2 y
    / A+ L; S5 ]4 ^' r如何将MATLAB程序编译成独立可执行的程序?如何将编译好的独立可执行程序发布在没有安装MATLAB的电脑上?下面将一步步实现:
    + @1 M; h4 N/ z: |
    . ^8 U: E5 _9 X+ N3 E: E  S1 q8 Y一、生成独立可执行的程序(exe文件)步骤) q2 u7 j1 S$ M' y# L$ W$ O. J

    - c7 Y/ {+ S: L1、安装编译器。可有多种选择,matlab自带了一个LCC,推荐使用VC++6.0,我基于VS 2003实现。
    ' {" G# z, Z2 y" }6 \) b2、设置编译器。在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。
    " F8 I( p$ S$ n7 @, k3、调用编译器。此处使用MATLAB下的一个GUI平台deploytool下完全实现。在命令窗口输入deploytool即可看到。具体使用方法请Help。/ Q) f( z, o4 L  W' h" Q
    当然,也可以输入mcc -m filaname, filaname为要转成exe的m文件;
    : }' Q, V6 X6 u8 L3 H) A/ A注:在以前的版本中,用编译命令mcc -B sglcpp filaname;自2006的版本后,替换为mcc -mfilaname;
    6 Z1 H; r/ b2 w+ T( \4、安装\toolbox\compiler\deploy\win32目录下的MCRInstaller。" U7 |4 i4 h3 a

    ' ^8 @7 T  Y2 i2 ]% ]二、脱离matlab运行可执行程序$ d7 p" u* j+ k9 \$ E3 ~+ ~0 O
    MCR是由matlab的运行环境,占用不到300M的对于用不同matlab版本生成的exe文件,MCR版本也会有不同,因此,在程序打包时,最好将相应版本的MCR一起打包。MCR环境的设置文件存放目录如下:
    ) Z+ s) }: d4 S( z! ~ \toolbox\compiler\deploy\win325 v3 M" u. P$ Z! d: a
    文件名为MCRInstaller.exe。可将其拷贝到自己的文件夹中,(7.0以前的版本是mglinstaller.exe)。0 s2 Q& j$ d$ b- R( e6 A: Y& Z3 H4 D
    在MATLAB里运行可执行程序的办法是在前面加一个!,比如:!picshow,后缀名可有可无。
    2 A# c& W( x( S0 ?: C$ O. y在其它没有安装matlab的机器上运行exe文件前:
    0 U3 u3 E, L, W首先安装matlab的运行环境。在同一机器上可以并存不同版本的matlab环境(换句话说不同版本不兼容)。
    " ^! {' ?6 N- U, T其次是要将“MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,通常是自动加载。7 s9 u9 L2 e* b& c/ ?: j/ O7 A
    如果没有,也可手动安装,添加的方法是:
    # Y- n" X  k3 i右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。
    ' u, g$ S! W5 b0 U: Q注:在安装过程中会弹出让安装Microsoft.NETFramework可以不用安装。' E. F; \' i4 Q0 [) [- W
    最后就是将编译生成的相相关文件拷贝到同一目录下,双击即可运行。$ f% b! O- y5 X
    问题:目前此方法可完全运行在没有安装MATLAB以及C/C++的电脑上,但是如果是在AMD的CPU可以运行,但是不会出现任何MATLAB编译的界面。* b, {, [4 E; j# J7 W7 O4 G5 G
    美中不足就是,运行的时候dos的那个黑色地窗口一直存在。下面将实现去除黑屏的办法:6 O  ]! i* H! }& _

    % C1 [5 F: A+ I. V( ]消除运行MATLAB生成的exe程序的dos黑屏的办法* {9 X6 n8 g1 V& k. ^% R* g( U
    基于MATLAB生成exe文件后,每次运行都存在dos黑屏的问题,现在可以通过以下方法解决:
    % W0 q3 X0 h" K( q8 B. `4 W方法一: 在命令窗口输入:% p3 \! r5 O$ S( _6 N  `
    cd(prefdir)% m# Y* X( Y: n9 R( p& V7 b2 I4 k
    edit compopts.bat
    + A% I$ R, [% [: p  i! H4 A& m. r3 N在打开的文件最后添加以下语句:
    - i! @9 n) D. s& S: k* T8 |' ?$ g) S$ K6 S. b* a0 R  _
    A.VC环境下:
    1 x2 U0 x/ F' o5 G1 n1 W4 M5 |+ C1 `# j& o. u
    set LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup
    ; e) O6 S  z% ]' N: ?* G; h" o( R& y
    B.LCC环境下:
      }5 c& G% d" `' ^; T& @( X" B% Gset LINKFLAGS=%LINKFLAGS% -subsystemwindows 6 q, v0 G) k# y# w+ @
    . p& ?: B0 H$ A
    C. Borland:1 R3 W3 P2 U/ [- v7 H5 U' g+ ^
    set LINKFLAGS=%LINKFLAGS% -aa) q1 J6 b! y& F  @2 D- H7 N2 z4 y# m. y

    ' s4 [& v* `) P. j8 V8 U& I7 a" g保存以后,再重新编译m文件,生成的exe文件运行起来就没有dos窗口了* q4 t3 U( ~, e8 v4 L/ ~
    5 ?2 U& H, p1 X
    方法二:使用suppress工具:
    3 Z3 s. f) \* {6 I下载附件中的suppress压缩包后解压,(当然您可以自己去Google然后再下载)会看到一个suppress.ini文件,用记事本打开,然后将 其中“Name=test.exe”中text.exe的改为你生成的exe文件名。将suppress.exe(有个关盘和显示器的图标),改后的 suppress.ini放到你生成的exe的同目录下。执行suppress.exe或者您自己生成的exe可以了。当然您可以自己修改 suppress.exe的名字,改为您自己想要的名字。; b% q/ S! _: X1 s% L+ N
    - A' d7 F* a# v# Y& p* f
    其中的方法一在使用后生成的exe再到没有任何安装MATLAB的机子上运行也不会有黑屏了。
    ; i- F1 Y6 e( N方法二的缺点就是要同时存在您生成的exe以及supress.exe,必须在同一目录下。
    & i& Y+ m3 i* k- O$ `! H1 e
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    2

    主题

    6

    听众

    117

    积分

    升级  8.5%

  • TA的每日心情
    开心
    2013-9-18 23:25
  • 签到天数: 53 天

    [LV.5]常住居民I

    群组Matlab讨论组

    群组2013认证赛A题讨论群组

    群组数学建模

    回复

    使用道具 举报

    15

    主题

    10

    听众

    799

    积分

    升级  49.75%

  • TA的每日心情
    开心
    2015-7-17 20:50
  • 签到天数: 68 天

    [LV.6]常住居民II

    自我介绍
    我是一名大二学生。

    群组2013年国赛赛前培训

    回复

    使用道具 举报

    eagle1208 实名认证       

    1

    主题

    4

    听众

    25

    积分

    升级  21.05%

  • TA的每日心情
    开心
    2014-1-10 19:20
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-24 07:05 , Processed in 0.469506 second(s), 70 queries .

    回顶部