首页

> 期刊论文知识库

首页 期刊论文知识库 问题

论文答辩看不看源代码

发布时间:

论文答辩看不看源代码

一般要求完整的源代码哦,论文里面只需要部分的模块代码就行了演示程序会在答辩时候做建议你参考下键盘论文网,他们很多计算机毕业论文方面的东西,有很多程序和代码其实都是改改就行了,呵呵

答辩过程中,原稿是要交给答辩组的老师的。所以的话你并不能看着原稿答辩,需要你自己做ppt演示,如果需要,你可以把原稿的资料浓缩到ppt也是一样的效果的。看着原稿答辩,会给答辩组你对论文并不熟悉的印象,影响对你的评价。

可以看,不过会给答辩老师一个你不熟悉自己的论文的印象,所以最好不要看,事先熟悉好论文。

我来给你说说吧,源代码是必须要的,但是没人会把你的源代码从头到位检查一遍,更不会有人把你的源代码拿来编译,源代码必须要写入软盘然后和论文,翻译啊等东西一起交给导师。至于能不能过,要看你和导师的关系了,象我答辩的时候,我的毕业论文都没有完成,随便敷衍了一下,哦对了,不要认为我这么说就认为我们学校是二流的,我们学校全国排名前10,我高考的时候高出重点线70分,其实毕业论文就是走个形式,你能把握好就行,这个时候都毕业了,不会有人来为难你,当然如果你自己分寸没把握好,老师看不爽你,或者本身这个老师很严格很严格,那就不排除你挂的可能了,另外就是答辩的时候要是被所谓的专家组抽到了,那就比较危险了,要好好准备。源代码可以COPY,但是事先要和你的导师说清楚情况商量一下,而且这个COPY要COPY得恰当,恰到好处,我毕业的时候写的ndfs驱动,好像是叫这个,源代码都是COPY下来的,我都没编译过,甚至没看过,但是导师大致看了下,觉得可以就行了,另外你和导师商量的时候语言要有技巧,不要随便就自己弄了,导师会不舒服的,你要知道你的导师是十分希望你能完成毕业设计和论文的,要不然他怎么办?你是他负责的也,还有,只要你做到位了,学校不会太为难你的,毕竟你毕业不了,直接减少了学校的毕业率了,最后祝你好运了。

毕业论文看不看源代码

会看!千万不要把你的导师当成什么都不懂的小白,他可能不会去运行代码,但作为一名专家,他肯定可以看出你代码的质量,如果你只是在网上随便复制一段代码,肯定一眼就能看出来,所以千万不要做这种事情。总之毕业论文的文字和代码他都会看的。

需要。论文源代码是压缩文件,把我们的论文压缩成rar的形式就行了是压缩文件,把我们的论文压缩成rar的形式就行了。

论文答辩时会看代码吗

会。本科数学毕业答辩会问详细代码,不管遇到什么样的老师,详细代码是个必答题,都需要回答。

不需要。切记不要一句代码一句代码的去看,这样是没有用的,答辩老师也不会这样去问,直接明确到功能方法这一级就可以,但是对于每一个具体功能的页面跳转也是要非常明确的。

怎么查看毕业论文源代码

找到作者的个人主页,里面很大可能性有...

不可以没有源代码。毕业论文的源代码是必须要的,但是没人会把你的源代码从头到位检查一遍,更不会有人把你的源代码拿来编译,源代码必须要写入软盘然后和论文,翻译啊等东西一起交给导师。没有源代码,论文就过不了。如果是次一点的本科,加上你跟导师有关系,那可能导师会给你过。

代码可以选择在附录中展示一部分,也可以不在论文中展示代码

先使用文本介绍程序实现的思路,然后将代码帖到论文中。如果代码太长,那么无疑是不适合直接复制粘贴的,你可以选择使用伪码来描述一下你程序的实现过程,中间不重要的代码可以使用省略号略去,只写关键逻辑的处理即可。贴代码图片是不可取的,因为图片可能会存在缩放问题,导致字体模糊不清。同时,排版、字体格式,都有可能会收到影响。不知道你的导师和审稿人会怎么看,但是我的论文是因为几个字母格式不对都被打回来改。而且一般不建议贴源代码,源代码一般需要关联的信息太多,篇幅大,直接贴说不明白。如果有贴代码的必要,可以写伪代码,抽象点。

毕业论文格式包括:

题目,摘要,关键词,目录,正文,致谢,参考文献,注释,附录

软件相关专业根据其专业的特殊性,与一般论文有所不同

连连看游戏设计毕业论文源代码

连连看java源代码 import .*; import .*; import .*; public class lianliankan implements ActionListener { JFrame mainFrame; //主面板 Container thisContainer; JPanel centerPanel,southPanel,northPanel; //子面板 JButton diamondsButton[][] = new JButton[6][5];//游戏按钮数组 JButton exitButton,resetButton,newlyButton; //退出,重列,重新开始按钮 JLabel fractionLable=new JLabel("0"); //分数标签 JButton firstButton,secondButton; //分别记录两次被选中的按钮 int grid[][] = new int[8][7];//储存游戏按钮位置 static boolean pressInformation=false; //判断是否有按钮被选中 int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戏按钮的位置坐标 int i,j,k,n;//消除方法控制 public void init(){ mainFrame=new JFrame("JKJ连连看"); thisContainer = (); (new BorderLayout()); centerPanel=new JPanel(); southPanel=new JPanel(); northPanel=new JPanel(); (centerPanel,"Center"); (southPanel,"South"); (northPanel,"North"); (new GridLayout(6,5)); for(int cols = 0;cols < 6;cols++){ for(int rows = 0;rows < 5;rows++ ){ diamondsButton[cols][rows]=new JButton((grid[cols+1][rows+1])); diamondsButton[cols][rows].addActionListener(this); (diamondsButton[cols][rows]); } } exitButton=new JButton("退出"); (this); resetButton=new JButton("重列"); (this); newlyButton=new JButton("再来一局"); (this); (exitButton); (resetButton); (newlyButton); (((()))); (fractionLable); (280,100,500,450); (true); } public void randomBuild() { int randoms,cols,rows; for(int twins=1;twins<=15;twins++) { randoms=(int)(()*25+1); for(int alike=1;alike<=2;alike++) { cols=(int)(()*6+1); rows=(int)(()*5+1); while(grid[cols][rows]!=0) { cols=(int)(()*6+1); rows=(int)(()*5+1); } [cols][rows]=randoms; } } } public void fraction(){ (((())+100)); } public void reload() { int save[] = new int[30]; int n=0,cols,rows; int grid[][]= new int[8][7]; for(int i=0;i<=6;i++) { for(int j=0;j<=5;j++) { if([i][j]!=0) { save[n]=[i][j]; n++; } } } n=n-1; ; while(n>=0) { cols=(int)(()*6+1); rows=(int)(()*5+1); while(grid[cols][rows]!=0) { cols=(int)(()*6+1); rows=(int)(()*5+1); } [cols][rows]=save[n]; n--; } (false); pressInformation=false; //这里一定要将按钮点击信息归为初始 init(); for(int i = 0;i < 6;i++){ for(int j = 0;j < 5;j++ ){ if(grid[i+1][j+1]==0) diamondsButton[i][j].setVisible(false); } } } public void estimateEven(int placeX,int placeY,JButton bz) { if(pressInformation==false) { x=placeX; y=placeY; secondMsg=grid[x][y]; secondButton=bz; pressInformation=true; } else { x0=x; y0=y; fristMsg=secondMsg; firstButton=secondButton; x=placeX; y=placeY; secondMsg=grid[x][y]; secondButton=bz; if(fristMsg==secondMsg && secondButton!=firstButton){ xiao(); } } } public void xiao() { //相同的情况下能不能消去。仔细分析,不一条条注释 if((x0==x &&(y0==y+1||y0==y-1)) || ((x0==x+1||x0==x-1)&&(y0==y))){ //判断是否相邻 remove(); } else{ for (j=0;j<7;j++ ) { if (grid[x0][j]==0){ //判断第一个按钮同行哪个按钮为空 if (y>j) { //如果第二个按钮的Y坐标大于空按钮的Y坐标说明第一按钮在第二按钮左边 for (i=y-1;i>=j;i-- ){ //判断第二按钮左侧直到第一按钮中间有没有按钮 if (grid[x][i]!=0) { k=0; break; } else{ k=1; } //K=1说明通过了第一次验证 } if (k==1) { linePassOne(); } } if (yx) { for (n=x0;n>=x+1 ;n-- ) { if (grid[n][j]!=0) { k=0; break; } if(grid[n][j]==0 && n==x+1) { remove(); } } } } } for (i=0;i<8;i++ ) { //列 if (grid[i][y0]==0) { if (x>i) { for (j=x-1;j>=i ;j-- ) { if (grid[j][y]!=0) { k=0; break; } else { k=1; } } if (k==1) { rowPassOne(); } } if (xy) { for (n=y0;n>=y+1 ;n--) { if (grid[i][n]!=0) { k=0; break; } if(grid[i][n]==0 && n==y+1) { remove(); } } } } } } } public void linePassOne(){ if (y0>j){ //第一按钮同行空按钮在左边 for (i=y0-1;i>=j ;i-- ){ //判断第一按钮同左侧空按钮之间有没按钮 if (grid[x0][i]!=0) { k=0; break; } else { k=2; } //K=2说明通过了第二次验证 } } if (y0i) { for (j=x0-1;j>=i ;j-- ) { if (grid[j][y0]!=0) { k=0; break; } else { k=2; } } } if (x0

给你个 网站里面有很多

表1. // .*;import .*;public class CheckerDrag extends { // Dimension of checkerboard square. // 棋盘上每个小方格的尺寸 final static int SQUAREDIM = 40; // Dimension of checkerboard -- includes black outline. // 棋盘的尺寸 – 包括黑色的轮廓线 final static int BOARDDIM = 8 * SQUAREDIM + 2; // Dimension of checker -- 3/4 the dimension of a square. // 棋子的尺寸 – 方格尺寸的3/4 final static int CHECKERDIM = 3 * SQUAREDIM / 4; // Square colors are dark green or white. // 方格的颜色为深绿色或者白色 final static Color darkGreen = new Color (0, 128, 0); // Dragging flag -- set to true when user presses mouse button over checker // and cleared to false when user releases mouse button. // 拖动标记 --当用户在棋子上按下鼠标按键时设为true, // 释放鼠标按键时设为false boolean inDrag = false; // Left coordinate of checkerboard's upper-left corner. // 棋盘左上角的左方向坐标 int boardx; // Top coordinate of checkerboard's upper-left corner. //棋盘左上角的上方向坐标 int boardy; // Left coordinate of checker rectangle origin (upper-left corner). // 棋子矩形原点(左上角)的左方向坐标 int ox; // Top coordinate of checker rectangle origin (upper-left corner). // 棋子矩形原点(左上角)的上方向坐标 int oy; // Left displacement between mouse coordinates at time of press and checker // rectangle origin. // 在按键时的鼠标坐标与棋子矩形原点之间的左方向位移 int relx; // Top displacement between mouse coordinates at time of press and checker // rectangle origin. // 在按键时的鼠标坐标与棋子矩形原点之间的上方向位移 int rely; // Width of applet drawing area. // applet绘图区域的宽度 int width; // Height of applet drawing area. // applet绘图区域的高度 int height; // Image buffer. // 图像缓冲 Image imBuffer; // Graphics context associated with image buffer. // 图像缓冲相关联的图形背景 Graphics imG; public void init () { // Obtain the size of the applet's drawing area. // 获取applet绘图区域的尺寸 width = getSize ().width; height = getSize ().height; // Create image buffer. // 创建图像缓冲 imBuffer = createImage (width, height); // Retrieve graphics context associated with image buffer. // 取出图像缓冲相关联的图形背景 imG = (); // Initialize checkerboard's origin, so that board is centered. // 初始化棋盘的原点,使棋盘在屏幕上居中 boardx = (width - BOARDDIM) / 2 + 1; boardy = (height - BOARDDIM) / 2 + 1; // Initialize checker's rectangle's starting origin so that checker is // centered in the square located in the top row and second column from // the left. // 初始化棋子矩形的起始原点,使得棋子在第一行左数第二列的方格里居中 ox = boardx + SQUAREDIM + (SQUAREDIM - CHECKERDIM) / 2 + 1; oy = boardy + (SQUAREDIM - CHECKERDIM) / 2 + 1; // Attach a mouse listener to the applet. That listener listens for // mouse-button press and mouse-button release events. // 向applet添加一个用来监听鼠标按键的按下和释放事件的鼠标监听器 addMouseListener (new MouseAdapter () { public void mousePressed (MouseEvent e) { // Obtain mouse coordinates at time of press. // 获取按键时的鼠标坐标 int x = (); int y = (); // If mouse is over draggable checker at time // of press (., contains (x, y) returns // true), save distance between current mouse // coordinates and draggable checker origin // (which will always be positive) and set drag // flag to true (to indicate drag in progress). // 在按键时如果鼠标位于可拖动的棋子上方 // (也就是contains (x, y)返回true),则保存当前 // 鼠标坐标与棋子的原点之间的距离(始终为正值)并且 // 将拖动标志设为true(用来表明正处在拖动过程中) if (contains (x, y)) { relx = x - ox; rely = y - oy; inDrag = true; } } boolean contains (int x, int y) { // Calculate center of draggable checker. // 计算棋子的中心位置 int cox = ox + CHECKERDIM / 2; int coy = oy + CHECKERDIM / 2; // Return true if (x, y) locates with bounds // of draggable checker. CHECKERDIM / 2 is the // radius. // 如果(x, y)仍处于棋子范围内则返回true // CHECKERDIM / 2为半径 return (cox - x) * (cox - x) + (coy - y) * (coy - y) < CHECKERDIM / 2 * CHECKERDIM / 2; } public void mouseReleased (MouseEvent e) { // When mouse is released, clear inDrag (to // indicate no drag in progress) if inDrag is // already set. // 当鼠标按键被释放时,如果inDrag已经为true, // 则将其置为false(用来表明不在拖动过程中) if (inDrag) inDrag = false; } }); // Attach a mouse motion listener to the applet. That listener listens // for mouse drag events. //向applet添加一个用来监听鼠标拖动事件的鼠标运动监听器 addMouseMotionListener (new MouseMotionAdapter () { public void mouseDragged (MouseEvent e) { if (inDrag) { // Calculate draggable checker's new // origin (the upper-left corner of // the checker rectangle). // 计算棋子新的原点(棋子矩形的左上角) int tmpox = () - relx; int tmpoy = () - rely; // If the checker is not being moved // (at least partly) off board, // assign the previously calculated // origin (tmpox, tmpoy) as the // permanent origin (ox, oy), and // redraw the display area (with the // draggable checker at the new // coordinates). // 如果棋子(至少是棋子的一部分)没有被 // 移出棋盘,则将之前计算的原点 // (tmpox, tmpoy)赋值给永久性的原点(ox, oy), // 并且刷新显示区域(此时的棋子已经位于新坐标上) if (tmpox > boardx && tmpoy > boardy && tmpox + CHECKERDIM < boardx + BOARDDIM && tmpoy + CHECKERDIM < boardy + BOARDDIM) { ox = tmpox; oy = tmpoy; repaint (); } } } }); } public void paint (Graphics g) { // Paint the checkerboard over which the checker will be dragged. // 在棋子将要被拖动的位置上绘制棋盘 paintCheckerBoard (imG, boardx, boardy); // Paint the checker that will be dragged. // 绘制即将被拖动的棋子 paintChecker (imG, ox, oy); // Draw contents of image buffer. // 绘制图像缓冲的内容 (imBuffer, 0, 0, this); } void paintChecker (Graphics g, int x, int y) { // Set checker shadow color. // 设置棋子阴影的颜色 (); // Paint checker shadow. // 绘制棋子的阴影 (x, y, CHECKERDIM, CHECKERDIM); // Set checker color. // 设置棋子颜色 (); // Paint checker. // 绘制棋子 (x, y, CHECKERDIM - CHECKERDIM / 13, CHECKERDIM - CHECKERDIM / 13); } void paintCheckerBoard (Graphics g, int x, int y) { // Paint checkerboard outline. // 绘制棋盘轮廓线 (); (x, y, 8 * SQUAREDIM + 1, 8 * SQUAREDIM + 1); // Paint checkerboard. // 绘制棋盘 for (int row = 0; row < 8; row++) { (((row & 1) != 0) ? darkGreen : ); for (int col = 0; col < 8; col++) { (x + 1 + col * SQUAREDIM, y + 1 + row * SQUAREDIM, SQUAREDIM, SQUAREDIM); (( () == darkGreen) ? : darkGreen); } } } // The AWT invokes the update() method in response to the repaint() method // calls that are made as a checker is dragged. The default implementation // of this method, which is inherited from the Container class, clears the // applet's drawing area to the background color prior to calling paint(). // This clearing followed by drawing causes flicker. CheckerDrag overrides // update() to prevent the background from being cleared, which eliminates // the flicker. // AWT调用了update()方法来响应拖动棋子时所调用的repaint()方法。该方法从 // Container类继承的默认实现会在调用paint()之前,将applet的绘图区域清除 // 为背景色,这种绘制之后的清除就导致了闪烁。CheckerDrag重写了update()来 // 防止背景被清除,从而消除了闪烁。 public void update (Graphics g) { paint (g); }}

一下是我的思路 我也是菜鸟 愿交流1.用一个线程来专门负责刷帧 (就是定时重绘界面)2.用一个数组来存储游戏的数据 3.从数组来绘制画面4.从用户输入 改变 数组类的话应该有GameView ---用于负责怎个游戏的绘制 里面新建线程刷帧GameData ---用于存储游戏数据 和 改变数据GameContrl ---由于接受用户输入 Game ---控制怎个游戏

相关百科

热门百科

首页
发表服务