安卓开发贪吃蛇游戏求解 5C

新人一枚!在eclipse中代码是统一放在src文件夹下面还是要分开放?关于安卓,老师就上了一节课,完全不懂怎么打代码,怎么运行?求大神们告知!

3个回答

SDK里面就有贪吃蛇的源码啊,自己翻出来看看
找不到的话直接百度源码然后导进eclipse里面看

src是代码存放目录,我们在项目中会创建很多包来存放类。
http://jingyan.baidu.com/article/17bd8e52150df985ab2bb808.html

图片说明

如图所示 src下面再建个文件夹 里面放上你写的 .java代码就行了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
跪求安卓贪吃蛇视频教程
从来没学过安卓开发 急用一个安卓贪吃蛇视频教程,那位大神能不吝发给我 谢了
java贪吃蛇移动问题求解
当前只用到了3个类: 代表蛇:Snake.java 代表地图:Garden.java 代表方向的枚举类:Dir.java 遇到的问题:我是采取在蛇头前添加一节,然后去掉尾巴上最后一节,再重画的方式 来让蛇移动,但是去蛇尾的方法好像没起作用,问题不知道出在哪了,有大神来看看么? 想要达到的效果:只有一个格子在移动,而不是这样每动一次,原来的还在。 Snake.java------------------------------------------------------------ ```import java.awt.Color; import java.awt.Graphics; import java.awt.event.KeyEvent; public class Snake { private Node head = null; private Node tail = null; private int size; Node n = new Node(15, 10, Dir.L); private Garden gd; public Snake(Garden gd) { head = n; tail = n; size = 1; this.gd = gd; } // 添尾 public void addToTail() { Node node = null; switch (tail.dir) { case L: node = new Node(tail.x + 1, tail.y, Dir.L); break; case R: node = new Node(tail.x - 1, tail.y, Dir.R); break; case U: node = new Node(tail.x, tail.y + 1, Dir.U); break; case D: node = new Node(tail.x, tail.y - 1, Dir.L); break; } node.prev = tail; tail.next = node; tail = node; size++; } // 去尾 public void deleteTail() { if (size == 0) return; tail = tail.prev; tail.next = null; } // 添头 public void addToHead() { Node node = null; switch (head.dir) { case L: node = new Node(head.x - 1, head.y, head.dir); break; case R: node = new Node(head.x + 1, head.y, head.dir); break; case U: node = new Node(head.x, head.y - 1, head.dir); break; case D: node = new Node(head.x, head.y + 1, head.dir); break; } node.next = head; head.prev = node; head = node; size++; } public void move() { if (size == 0) return; addToHead(); deleteTail(); } Node n1 = new Node(n.x-5, n.y, n.dir); Node n2 = new Node(n.x-10, n.y, n.dir); public void draw(Graphics g) { if (size <= 0) return; move(); for (Node theNode = head; theNode != null; theNode = theNode.next) { theNode.draw(g); } } private class Node { private int x, y; Dir dir = null; private int w = Garden.wide; Node next = null; Node prev = null; public Node(int x, int y, Dir dir) { this.x = x; this.y = y; this.dir = dir; } public void draw(Graphics g) { Color c = g.getColor(); g.setColor(Color.RED); g.fillRect(x * w, y * w, w, w); g.setColor(c); } } public void KeyPressed(KeyEvent e) { int key = e.getKeyCode(); switch (key) { case KeyEvent.VK_W: head.dir = Dir.U; break; case KeyEvent.VK_S: head.dir = Dir.D; break; case KeyEvent.VK_A: head.dir = Dir.L; break; case KeyEvent.VK_D: head.dir = Dir.R; break; } } } ``` Garden.java----------------------------------------------------------------------- import java.awt.*; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import javax.swing.JFrame; import javax.swing.JPanel; public class Garden extends JPanel { private JFrame jf = null; // 格子大小 public static int wide = 20; // 窗口大小 private int gWidth = 500; private int gHeigth = 500; Snake s = new Snake(this); Egg e = new Egg(); public static void main(String[] args) { new Garden().init(); } // 初始化窗口 private void init() { jf = new JFrame(); jf.add(this); jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE); jf.setLocation(20, 20); jf.setSize(gWidth + 7, gHeigth + 30); jf.setResizable(false); jf.setVisible(true); jf.addKeyListener(new KeyMonitor()); new Thread(new PaintThread()).start(); } public void paint(Graphics g) { Color c = g.getColor(); g.setColor(Color.GREEN); // 画格子 for (int i = 0; i < gHeigth; i += wide) { for (int j = 0; j < gWidth; j += wide) { g.drawRect(i, j, wide, wide); } } g.setColor(c); s.draw(g); e.drawEgg(g); } private class PaintThread implements Runnable { @Override public void run() { while(true) { repaint(); try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } } } } public class KeyMonitor extends KeyAdapter { @Override public void keyPressed(KeyEvent e) { s.KeyPressed(e); } } } Dir.java--------------------------------------------------------------------------- public enum Dir { L,R,U,D; }
android对话框问题,求解
做贪吃蛇,蛇碰墙死后,出现对话框,点击重新开始游戏,游戏的确重新开始了,但是对话框不消失,ps:游戏重新开始是用广播写的。
Android问题 贪吃蛇程序报错
![图片说明](https://img-ask.csdn.net/upload/201605/29/1464510848_54035.png) 这里调用就报错: if ((p[0] >= activity.x1 - 80) && (p[0] <= activity.x1 + 80) && (p[1] >= activity.y1 - 16) && (p[1] <=activity.y1 + 16)) { activity.onStop(); return; } // 撞墙 if ((p[0] < 16) || (p[1] < 16) || (p[0] > activity.screenW - 16) || (p[1] > activity.screenH - 16)) { activity.onStop(); // activity.onResume(); return; } 下面是代码: public class GameThread extends Thread { private GameView view; private SurfaceHolder holder; public boolean pauseFlag = false;// 是否暂停 public GameThread(GameView view) { this.view = view; holder = view.getHolder(); } @Override public void run() { Canvas canvas; while (true) { canvas = null; if (!pauseFlag) { try { canvas = holder.lockCanvas(); synchronized (holder) { view.drawGame(canvas); } } finally { if (canvas != null) { holder.unlockCanvasAndPost(canvas); } } } try { Thread.sleep(200); } catch (Exception e) { e.printStackTrace(); } } } } public class MainActivity extends Activity { private GameView gameView; private GestureDetector gestureDetector;// 处理手势 public int fx = 0; // 食物的X坐标 public int fy = 0;// 食物的Y坐标 public int size = 16; // 蛇身的大小 public int changdu = 2;// 蛇身长度 public int direction = 3;// 蛇的移动方向,分别使用 0上,1下,2左,3右 public int x = 16; // 移动的X坐标 public int y = 16; // 移动的Y坐标 public int x1 = 0; // 障碍物X坐标 public int y1 = 0; // Y坐标 public ArrayList<int[]> path = new ArrayList<int[]>();// 记录运行的路径 public HashMap<Integer, Integer> roadBlock = new HashMap<Integer, Integer>();// 障碍物 public int screenW; // 屏幕的宽度 public int screenH; // 屏幕的高度 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 初始化视图 initView(); // 初始化地图 initMap(); // 初始化游戏(手势) initGame(); } private void initGame() { gestureDetector = new BuileGesture(this, new BuileGesture.OnGestureResult() { @Override public void onGestureResult(int direction) { // 获取从手势处理类得到的手势方向 MainActivity.this.direction = direction; Toast.makeText(MainActivity.this, "方向:" + direction, Toast.LENGTH_SHORT).show(); } }).Builde(); } private void initMap() { DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); screenW = metrics.widthPixels; screenH = metrics.heightPixels; // 初始化食物 Random rd = new Random(System.currentTimeMillis()); int tempX = rd.nextInt(screenW / 16); int tempY = rd.nextInt(screenH / 16); // ... fx = tempX * 16; fy = tempY * 16; // 初始化障碍物 x1=screenW/2; y1=screenH/2; } private void initView() { // 去标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); // 设置全屏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); // 绑定视图 gameView = new GameView(MainActivity.this); setContentView(gameView); } @Override public boolean onTouchEvent(MotionEvent event) { // 将触摸事件和手势处理类绑定到一起 return gestureDetector.onTouchEvent(event); } @Override public void onResume() { super.onResume(); // 游戏继续或重新开始 // ... ... Toast.makeText(MainActivity.this, "游戏开始", Toast.LENGTH_SHORT).show(); gameView.gameThread.pauseFlag = false; } @Override protected void onPause() { super.onPause(); // 游戏暂停 // ... ... gameView.gameThread.pauseFlag = true; } @Override public void onStop() { super.onStop(); // 游戏结束 // ... ... Toast.makeText(MainActivity.this, "游戏结束", Toast.LENGTH_SHORT).show(); gameView.gameThread.pauseFlag = true; return ; } }
C语言贪吃蛇小游戏的一些问题
做个贪吃蛇游戏,想实现这样的功能:假如在10秒内玩家没能操控蛇吃到食物,那么食物就会刷新,重新出现在另一个坐标。不知道如何实现这样的功能。用Sleep()延迟函数可以吗
java怎么设计http接口供安卓游戏客户端调用,请求和响应都是json格式?
要开发五个接口供安卓贪吃蛇游戏上传和获取玩家排行榜数据,求大神指导。之前没有写过接口。
贪吃蛇游戏:为什么我按住方向键不放时,我的贪吃蛇像卡的一样
``` package game; import java.awt.Button; import java.awt.Color; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.JFrame; public class Window extends JFrame implements Runnable { static int x1 = 500;// 蛇头横坐标 static int y1 = 400;// 蛇头纵坐标 Button b[] = new Button[50];// 蛇数组 Button fruit = new Button();// 水果 boolean flag = true;// 判断是否吃到果实 int x, y;// 水果坐标 Thread t; int reverse;// 方向 boolean reve = true;// 方向标志 public Window() { t = new Thread(this); b[0] = new Button();// 蛇头 b[0].setBounds(x1, y1, 20, 20); b[0].setBackground(Color.blue); add(b[0]); for (int i = 1; i < 50; i++) { b[i] = new Button();// 蛇长度 } if (flag) {// 水果的随机位置 while (flag) { x = (int) (25 + Math.random() * 1175); y = (int) (1 + Math.random() * 800); System.out.println("x-->" + x); System.out.println("y-->" + y); fruit.setBounds(x, y, 20, 20); fruit.setBackground(Color.yellow); add(fruit); flag = false; } } setLayout(null); setTitle("Retro Snaker"); setSize(1200, 800); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public void run() { while (true) { try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } switch (reverse) { case 0:// 上 { y1 -= 20; b[0].setBounds(x1, y1, 20, 20); break; } case 1:// 下 { y1 += 20; b[0].setBounds(x1, y1, 20, 20); break; } case 2:// 左 { x1 -= 20; b[0].setBounds(x1, y1, 20, 20); break; } case 3:// 右 { x1 += 20; b[0].setBounds(x1, y1, 20, 20); break; } default: break; } } } } class Move extends Window implements ActionListener, KeyListener { Window w; Button go;// 开始按键 public Move() { go = new Button("开始"); go.setBounds(25, 0, 50, 25); go.addActionListener(this); add(go); } public void keyTyped(KeyEvent e) { } public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_UP) {// 上 y1 -= 20; reverse = 0; System.out.println("上"); } if (e.getKeyCode() == KeyEvent.VK_DOWN) {// 下 y1 += 20; reverse = 1; System.out.println("下"); } if (e.getKeyCode() == KeyEvent.VK_LEFT) {// 左 x1 -= 20; reverse = 2; System.out.println("左"); } if (e.getKeyCode() == KeyEvent.VK_RIGHT) {// 右 x1 += 20; reverse = 3; System.out.println("右"); } this.repaint(); } public void keyReleased(KeyEvent e) { } public void actionPerformed(ActionEvent e) { if (e.getSource() == go) { t.start(); go.addKeyListener(this); } } } ```
新手用qt做一个贪吃蛇游戏,setupUi问题
全部编辑完后显示底层接收到操作系统的信号而停止,上网查了一下,觉得是没有初始化ui的问题,然而写了这样的函数,编译器报错“no matching function”。 ![图片说明](https://img-ask.csdn.net/upload/201705/29/1496044959_422238.png) ![图片说明](https://img-ask.csdn.net/upload/201705/29/1496044978_452275.png) ![图片说明](https://img-ask.csdn.net/upload/201705/29/1496044991_773506.png) 第一次用qt,有大神指出错误感激不尽。
贪吃蛇游戏源程序有了,不知如何封装?求大神解答
/*------------------------------ 贪吃蛇 *------------------------------*/ #include <cstdlib> #include <iostream> #include <windows.h> #include <conio.h> #include <time.h> #define uint unsigned int #define _X 10 #define _Y 5 #define WIDTH 60 #define HEIGHT 16 #define U 0 #define R 1 #define D 2 #define L 3 #define SUC 0 #define EAT 1 #define BUMP 2 using namespace std; /*--------------点的结构体 ----------------*/ struct PT { int x; int y; }; /*--------------结点的结构体 ----------------*/ struct Body { PT now; Body *last; Body *next; }; /*--------------蛇的结构体 ----------------*/ struct Snake { int dir; Body *head; Body *tail; uint bodylong; }snake; /*--------------全局变量 ----------------*/ HANDLE hStdout=GetStdHandle(STD_OUTPUT_HANDLE); char obj='H',snk='O',food=1; PT foodpt; uint n,score,level=150; unsigned char key; char *msg; char l; /*--------------长延时----------------*/ void delay(uint time) { for(int k=0;k<time/10;k++) { Sleep(10); if(kbhit()) key=getch(); } } /*--------------获取随机点坐标----------------*/ PT randpt() { PT pt; pt.x=rand()%(WIDTH-1)+1+_X; pt.y=rand()%(HEIGHT-1)+1+_Y; return pt; } /*--------------隐藏光标----------------*/ void hidecursor() { CONSOLE_CURSOR_INFO cursor_info; cursor_info.bVisible=false; cursor_info.dwSize=20; SetConsoleCursorInfo(hStdout,&cursor_info); } /*--------------开始gotoxy一系列的函数定义----------------*/ void gotoxy(int x,int y,char ch) { COORD c; c.X = x - 1; c.Y = y - 1; SetConsoleCursorPosition (hStdout,c); putchar(ch); } void gotoxy(int x,int y,char* ch) { COORD c; c.X = x - 1; c.Y = y - 1; SetConsoleCursorPosition (hStdout,c); puts(ch); } void gotoxy(PT pt,char ch) { COORD c; c.X = pt.x - 1; c.Y = pt.y - 1; SetConsoleCursorPosition (hStdout,c); putchar(ch); } void gotoxy(PT pt,char* ch) { COORD c; c.X = pt.x - 1; c.Y = pt.y - 1; SetConsoleCursorPosition (hStdout,c); puts(ch); } void gotoxy(PT pt) { COORD c; c.X = pt.x - 1; c.Y = pt.y - 1; SetConsoleCursorPosition (hStdout,c); } void gotoxy(int x,int y) { COORD c; c.X = x - 1; c.Y = y - 1; SetConsoleCursorPosition (hStdout,c); } /*--------------结束----------------*/ /*--------------清除一行的内容----------------*/ void clraline(int y) { gotoxy(1,y); for(int k=0;k<70;k++) { putchar(' '); } } /*--------------获取按键值给key 并返回键值----------------*/ char getkey() { key=getch(); return key; } /*--------------等待按键弹起----------------*/ void waitforkeyup() { while(kbhit()) Sleep(20); } /*--------------判断点是否在蛇身上----------------*/ bool isinsnk(PT pt) { Body *temp; temp=snake.head; while(temp!=NULL) { if(temp->now.x==pt.x&&temp->now.y==pt.y) return true; temp=temp->next; } return false; } /*--------------初始化函数---------------*/ void init() { Body *temp,*temp2; hidecursor(); system("cls"); gotoxy(_X+24,1,"By PL23K"); temp=snake.tail; while(temp!=NULL) { temp2=temp; temp=temp->last; delete temp2; } srand((int)time(0)); score=0; for(n=0;n<=WIDTH;n++) { gotoxy(_X+n,_Y,obj); gotoxy(_X+n,_Y+HEIGHT,obj); } for(n=0;n<=HEIGHT;n++) { gotoxy(_X,_Y+n,obj); gotoxy(_X+WIDTH,_Y+n,obj); } snake.dir=R; temp=new Body; snake.head=temp; snake.head->now.x=WIDTH/2+_X; snake.head->now.y=HEIGHT/2+_Y; snake.head->last=NULL; temp=NULL; temp=new Body; snake.head->next=temp; snake.head->next->now.x=snake.head->now.x-1; snake.head->next->now.y=snake.head->now.y; snake.head->next->last=snake.head; temp=NULL; temp=new Body; snake.head->next->next=temp; snake.tail=snake.head->next->next; snake.tail->last=snake.head->next; snake.tail->next=NULL; snake.tail->now.x=snake.tail->last->now.x-1; snake.tail->now.y=snake.tail->last->now.y; snake.bodylong=3; temp=snake.head; while(temp!=NULL) { gotoxy(temp->now.x,temp->now.y,snk); temp=temp->next; } gotoxy(_X+13,_Y-2,"Please chooce level : 1 2 3 "); l=getch(); while(l!='1'&&l!='2'&&l!='3') { Sleep(20); l=getch(); } switch(l) { case 1 : level=350; case 2 : level=250; case 3 : level=150; } waitforkeyup(); clraline(_Y-2); gotoxy(_X+10,_Y+HEIGHT+1,"Press \'F\' to start----Press \'Q\' to quit"); foodpt=randpt(); while(isinsnk(foodpt)) {foodpt=randpt();} gotoxy(foodpt,food); } /*--------------画个蛇的启动画面----------------*/ void drawsnk() { char c[10]=" "; gotoxy(1,1); cout<<c<<"\n"; cout<<c<<" /^\\/\^\\"<<endl; cout<<c<<" _|__| O|"<<endl; cout<<c<<" \\/ /~ \\_/ \\"<<endl; cout<<c<<" \\____|__________/ \\"<<endl; cout<<c<<" \\_______ \\"<<endl; cout<<c<<" `\\ \\ \\"<<endl; cout<<c<<" | | \\"<<endl; cout<<c<<" / / \\"<<endl; cout<<c<<" / / \\\\"<<endl; cout<<c<<" / / \\ \\"<<endl; cout<<c<<" / / \\ \\"<<endl; cout<<c<<" / / _----_ \\ \\"<<endl; cout<<c<<" / / _-~ ~-_ | |"<<endl; cout<<c<<" \( ( _-~ _--_ ~-_ _/ |"<<endl; cout<<c<<" \\ ~-____-~ _-~ ~-_ ~-_-~ /"<<endl; cout<<c<<" ~-_ _-~ ~-_ _-~ "<<endl; cout<<c<<" ~--______-~ ~-___-~"<<endl; gotoxy(27,22,"上: W 下:S 左:A 右:D"); while(!kbhit()) { gotoxy(1,20); cout<<c<<c<<c<<" Press any key to enter"; Sleep(200); gotoxy(1,20); cout<<c<<c<<c<<c<<c<<c<<c<<c; Sleep(200); } } /*--------------移动蛇----------------*/ int move() { PT next; int statu; Body *temp; switch(snake.dir) { case U : next.x=snake.head->now.x; next.y=snake.head->now.y-1; break; case R : next.x=snake.head->now.x+1; next.y=snake.head->now.y; break; case L : next.x=snake.head->now.x-1; next.y=snake.head->now.y; break; case D : next.x=snake.head->now.x; next.y=snake.head->now.y+1; break; } if(next.x==foodpt.x&&next.y==foodpt.y) { score+=10; snake.bodylong++; temp=new Body; temp->last=NULL; temp->next=snake.head; snake.head->last=temp; temp->now=next; snake.head=temp; gotoxy(next,snk); statu=EAT; } else if(next.x>=WIDTH+_X||next.x<=_X||next.y>=HEIGHT+_Y||next.y<=_Y||isinsnk(next)) { statu=BUMP; } else { snake.bodylong++; temp=new Body; temp->last=NULL; temp->next=snake.head; snake.head->last=temp; temp->now=next; snake.head=temp; temp=snake.tail; snake.tail=snake.tail->last; snake.tail->next=NULL; gotoxy(next,snk); gotoxy(temp->now,' '); delete temp; statu=SUC; } return statu; } /*--------------主函数----------------*/ int main(int argc, char *argv[]) { int statu; snake.head=NULL; snake.tail=NULL; drawsnk(); while(1) { init(); statu=SUC; getkey(); while(key!='f'&&key!='q') { Sleep(20); getkey(); } if(key=='f') { clraline(_Y+HEIGHT+1); gotoxy(_X+10,_Y+HEIGHT+1,"Start! Press \'Q\' to quit,\'R\' to restart"); waitforkeyup(); while(key!='r'&&key!='q'&&statu!=BUMP) { waitforkeyup(); switch(key) { case 'w' : if(snake.dir!=D) snake.dir=U;break; case 's' : if(snake.dir!=U) snake.dir=D;break; case 'd' : if(snake.dir!=L) snake.dir=R;break; case 'a' : if(snake.dir!=R) snake.dir=L;break; } gotoxy(_X+11,_Y-2); cout<<"Your score is: "<<score<<" You are choose level"<<l; statu=move(); if(statu==EAT) { foodpt=randpt(); while(isinsnk(foodpt)) {foodpt=randpt();} gotoxy(foodpt,food); } delay(level); } } else { break; } } clraline(_Y-1); gotoxy(_X+26,_Y-1,"GAME OVER"); waitforkeyup(); getch(); return EXIT_SUCCESS; } /*--------------OVER----------------*/
关于c语言的贪吃蛇游戏问题,为什么最后编译出错?
/* c语言之贪吃蛇 */ #include <stdio.h> #include <stdlib.h> #include <windows.h> #include <string.h> #include <conio.h> #include <time.h> #define N 24 int apple[3]; //食物 char score[3]; //分数 char tail [3];//蛇尾前面一节 //输出坐标 void gotoxy(int x,int y) { COORD pos; pos.X=x; pos.Y=y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos); //定义一个结构体pos,x,y就是构成的成员 } // 判断出界 int Block(char head[2]) { if((head[0]<1)||(head[0]>N)||(head[1]<1)||(head[1]>N)) return 1; return 0; } //颜色函数 void color(int b) { HANDLE hConsole =GetStdHandle((STD_OUTPUT_HANDLE)); SetConsoleTextAttribute(hConsole,b);//调用API设置字体和背景的颜色函数 } //界面初始化 void init(char plate[N+2][N+2],char ***snake_x,int *len) { int i,j; char **snake=NULL; *len=3; score[0]=score[3]=3; snake =(char **)realloc(snake,sizeof(char *)*(*len)); for(i=0;i<*len;i++) snake[i]=(char *)malloc(sizeof(char)*2); for(i=0;i<3;++i) { snake[i][0]=N/2+1; snake[i][1]=N/2+1+i; } for(i=1;i<=N;++i) for(j=1;j<=N;++j) plate[i][j]=1; apple[0]=read()%N+1; apple[1]=read()%N+1; apple[2]= 1; for(i=0;i<N+2;++i) { gotoxy(0,i); for(j=0;j<N+2;++j) { switch(plate[i][j]) { case 0: color(12); printf("□"); continue; case 1: color(11); printf("■"); continue; default:; } } printf("\n"); } for(i=0;i<(*len);++i) { gotoxy(snake[i][1]*2,snake[i][0]); printf("★"); } printf("\n"); *snake_x=snake; } void Manual() { gotoxy(N+30,1); color(11); printf("按W,D,S,A移动方向"); gotoxy(N+30,9); printf("按SPACE暂停"); gotoxy(N+30,17); color(12); printf("历史最高分为:"); gotoxy(N+30,25); printf("你当前的得分为:"); } //键盘控制 char **Move(char **snake,char dirx,int *len) { int i,full=Eat(snake[0]); memcpy(tail,snake[(*len)-1],2); for(i=(*len)-1;i>0;--i ) memcpy(snake[i],snake[i-1],2); switch(dirx) { case'w': case'W': --snake[0][0]; break; case'a': case'A': --snake[0][1]; break; case's': case'S': ++snake[0][0]; break; case'd': case'D': ++snake[0][1]; break; default:; } if(full) { snake=(char **)realloc(snake,sizeof(char*)*(*len)+1); snake[(*len)]=(char*)malloc(sizeof(char)*2); memcpy(snake[(*len)],tail,2); ++(*len); ++score[0]; if(score[3]<16) ++score[3]; tail[2]=1; } else tail[2]=0; return snake; } //取记录积分 int File_in() { FILE *fp; if((fp=fopen("C:\\tcs.txt","a+"))==NULL) { gotoxy(N+18,N+2); printf("文件不能打开\n"); exit(0); } if((score[1]=fgetc(fp))!=EOF) score[1]=1; else score[1]=0; return 0; } //存数据 int Fie_out() { FILE *fp; if(score[1]>score[0]) { gotoxy(10,10); color(12); puts("闯关失败 加油吧 骚年"); gotoxy(0,N+2); return 0; } if((fp=fopen("C:\\tcs.txt","w+"))==NULL) { printf("文件不能打开\n"); exit(0); } if(fputc(--score[0],fp)==EOF) printf("输出失败\n"); gotoxy(10,10); color(12); puts("骚年不错哟"); gotoxy(0,N+2); return 0; } //释放空间 void Free(char**snake,int len) { int i; for(i=0;i<len;i++) free(snake[i]); free(snake); } //吃食物 int Eat(char snake[2]) { if(snake[0]==apple[0]&&snake[1]==apple[1]) { apple[0]=apple[1]=apple[2]=0; gotoxy(N+44,10); printf("%d",score[0]*10); return 1; } return 0; } //蛇移动 void Draw(char **snake,int len) { if(apple[2]) { gotoxy(apple[1*2],apple[0]); printf("●"); } if(tail[2]) { printf("★"); } else printf("■"); gotoxy(snake[0][1]*2,snake[0][0]); printf("★"); printf("/n"); } int main(int argc, char *argv[]) { int len; char ch='g'; char a[N+2][N+2]={{0}}; char **snake; srand((unsigned)time(NULL)); color(11); File_in(); init(a, &snake, &len); Manual(); while(ch!=0X1B) //按esc键结束 { Draw(snake,len); if(!apple[2]) { apple[0]=read()%N+1; apple[1]=read()%N+1; apple[2]=1; } Sleep(200-score[3]*10); setbuf(stdin,NULL); if(kbhit()) { gotoxy(0,N+2); ch=getche(); } snake=Move(snake,ch,&len); if(Block(snake[0])==1) { gotoxy(N+2,N+2); printf("你输了"); File_out(); Free(snake,len); getche(); return 1; } } Free(snake,len); exit(0); return 0; }
急求一个Java小程序,可用eclipse以及JDK运行,比如贪吃蛇啥啥小游戏都行,很着急!
急求一个Java小程序,可用eclipse以及JDK运行,比如贪吃蛇啥啥小游戏都行,很着急!
c语言之贪吃蛇游戏,为什么最后运行时没有苹果出现?求助大神!!!
/* c语言之贪吃蛇 */ #include <stdio.h> #include <stdlib.h> #include <windows.h> #include <string.h> #include <conio.h> #include <time.h> #define N 21 int apple[3]; //食物 char score[3]; //分数 char tail [3];//蛇尾前面一节 //输出坐标 void gotoxy(int x,int y) { COORD pos; pos.X=x; pos.Y=y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos); //定义一个结构体pos,x,y就是构成的成员 } // 判断出界 int Block(char head[2]) { if((head[0]<1)||(head[0]>N)||(head[1]<1)||(head[1]>N)) return 1; return 0; } //颜色函数 void color(int b) { HANDLE hConsole =GetStdHandle((STD_OUTPUT_HANDLE)); SetConsoleTextAttribute(hConsole,b);//调用API设置字体和背景的颜色函数 } //界面初始化 void init(char plate[N+2][N+2],char ***snake_x,int *len) { int i,j; char **snake=NULL; *len=3; score[0]=score[3]=3; snake =(char **)realloc(snake,sizeof(char *)*(*len)); for(i=0;i<*len;i++) snake[i]=(char *)malloc(sizeof(char)*2); for(i=0;i<3;++i) { snake[i][0]=N/2+1; snake[i][1]=N/2+1+i; } for(i=1;i<=N;++i) for(j=1;j<=N;++j) plate[i][j]=1; apple[0]=read()%N+1; apple[1]=read()%N+1; apple[2]= 1; for(i=0;i<N+2;++i) { gotoxy(0,i); for(j=0;j<N+2;++j) { switch(plate[i][j]) { case 0: color(12); printf("□"); color (11); continue; case 1: color(11); printf("■"); continue; default:; } } printf("\n"); } for(i=0;i<(*len);++i) { gotoxy(snake[i][1]*2,snake[i][0]); printf("★"); } printf("\n"); *snake_x=snake; } void Manual() { gotoxy(N+30,2); color(10); printf("按W,D,S,A移动方向"); gotoxy(N+30,4); printf("按SPACE暂停"); gotoxy(N+30,8); color(11); printf("历史最高分为:"); color(12); gotoxy(N+44,8); printf("%d",score[1]*10); color(11); gotoxy(N+30,12); printf("你当前的得分为:0"); } //键盘控制 char **Move(char **snake,char dirx,int *len) { int i,full=Eat(snake[0]); memcpy(tail,snake[(*len)-1],2); for(i=(*len)-1;i>0;--i ) memcpy(snake[i],snake[i-1],2); switch(dirx) { case'w': case'W': --snake[0][0]; break; case'a': case'A': --snake[0][1]; break; case's': case'S': ++snake[0][0]; break; case'd': case'D': ++snake[0][1]; break; default:; } if(full) { snake=(char **)realloc(snake,sizeof(char*)*((*len)+1)); snake[(*len)]=(char*)malloc(sizeof(char)*2); memcpy(snake[(*len)],tail,2); ++(*len); ++score[0]; if(score[3]<16) ++score[3]; tail[2]=1; } else tail[2]=0; return snake; } //取记录积分 int File_in() { FILE *fp; if((fp=fopen("C:\\tcs.txt","a+"))!=NULL) { gotoxy(N+18,N+2); printf("文件不能打开\n"); exit(0); } if((score[1]=fgetc(fp))!=EOF) ; else score[1]=0; return 0; } //存数据 int File_out() { FILE *fp; if(score[1]>score[0]) { gotoxy(10,10); color(12); printf("闯关失败 加油吧 骚年"); gotoxy(0,N+2); return 0; } if((fp=fopen("C:\\tcs.txt","w+"))==NULL) { printf("文件不能打开\n"); exit(0); } if(fputc(--score[0],fp)==EOF) printf("输出失败\n"); gotoxy(10,10); color(12); puts("骚年不错哟"); gotoxy(0,N+2); return 0; } //释放空间 void Free(char**snake,int len) { int i; for(i=0;i<len;i++) free(snake[i]); free(snake); } //吃食物 int Eat(char snake[2]) { if((snake[0]==apple[0])&&(snake[1]==apple[1])) { apple[0]=apple[1]=apple[2]=0; gotoxy(N+44,10); color(13); printf("%d",score[0]*10); color(11); return 1; } return 0; } //蛇移动 void Draw(char **snake,int len) { if(apple[2]) { gotoxy(apple[1]*2,apple[0]); color(12); printf("●"); color(11); } gotoxy(tail[1]*2,tail[0]); if(tail[2]) { color(14); printf("★"); color(11); } else printf("■"); gotoxy(snake[0][1]*2,snake[0][0]); color(14); printf("★"); color(11); printf("\n"); } int main(int argc, char *argv[]) { int len; char ch='g'; char a[N+2][N+2]={{0}}; char **snake; srand((unsigned)time(NULL)); color(11); File_in(); init(a, &snake, &len); Manual(); while(ch!=0X1B) //按esc键结束 { Draw(snake,len); if(!apple[2]) { apple[0]=read()%N+1; apple[1]=read()%N+1; apple[2]=1; } Sleep(200-score[3]*10); setbuf(stdin,NULL); if(kbhit()) { gotoxy(0,N+2); ch=getche(); } snake=Move(snake,ch,&len); if(Block(snake[0])==1) { gotoxy(N+2,N+2); printf("你输了"); File_out(); Free(snake,len); getche(); return 1; } } Free(snake,len); return 0; }
程序媛小白求助:C#贪吃蛇精灵游戏
我编了一个贪吃蛇的游戏,代码如下。编译无错误,但运行后蛇不会动啊~我真的真的不知道问题出在哪儿。多谢各位大神指教~ using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Timers; namespace GreedySnake3 { public partial class Form2 : Form { Snake snack1 = new Snake(4); private System.Drawing.Color foodColor = System.Drawing.Color.Red; Bean food = new Bean(); bool play = false; bool foodDraw = false; private void Form2_Load(object sender, EventArgs e) { pictureBox1.Paint += pictureBox1_Paint; timer1.Tick+=timer1_Tick; } public Form2() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { play = true; this.timer1.Enabled = true; this.timer1.Interval = 500; } private void pictureBox1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; DrawGameFrame(e.Graphics); snack1.DrawSnack(e.Graphics); if (foodDraw == false) { food.GetFoodPoint(); foodDraw = true; } food.DrawFood(e.Graphics); if (play) { snack1.SnackMoce(e.Graphics); } if (this.timer1.Enabled == true) { this.button1.Focus(); } } private void timer1_Tick(object sender, EventArgs e) { if (play) { snack1.Addsnack(); } if (snack1.HeadPoint == food.Origin) { foodDraw = false; snack1.Addsnack(); } if (snack1.Diedif()) { timer1.Enabled = false; play = false; MessageBox.Show("Game Over!"); } } public void DrawGameFrame(Graphics g) { for (int i = 0; i < this.pictureBox1.Width; i += 10) for (int j = 0; j < this.pictureBox1.Height; j += 10) { g.FillEllipse(Brushes.LightGreen, i, j, 10, 10); } } private void button1_KeyUp(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.A && snack1.Direction != 1) snack1.Direction = 2; else if (e.KeyCode == Keys.D && snack1.Direction != 2) snack1.Direction = 1; else if (e.KeyCode == Keys.W && snack1.Direction != 4) snack1.Direction = 3; else if (e.KeyCode == Keys.S && snack1.Direction != 3) snack1.Direction = 4; } private void button2_Click(object sender, EventArgs e) { this.Close(); } } public class Bean { Point origin=new Point(100,100); public Point Origin { get { return origin; } set { origin = value; } } public void GetFoodPoint() { Random random = new Random(); int x = random.Next(1, 40)*10; int y = random.Next(1, 30)*10; origin = new Point(x, y); } public void DrawFood(Graphics g) { g.FillEllipse(Brushes.Red, origin.X, origin.Y, 10, 10); } } public class Snake { public Point startPoint = new Point(0, 0); Point addPoint; public ArrayList snackPoint = new ArrayList(); Point headPoint; public Point HeadPoint { get { return headPoint; } set { headPoint = value; } } int direction = 1; public int Direction { get { return direction; } set { direction = value; } } public Snake(int lenth) { for (int i = 0; i < lenth; i++) { snackPoint.Add(startPoint); if (i == lenth - 1) { HeadPoint = startPoint; return; } startPoint = new Point(startPoint.X + 10, startPoint.Y); } } public void DrawSnack(Graphics g) { for (int i = 0; i < snackPoint.Count; i++) { g.FillEllipse(Brushes.Blue, ((Point)snackPoint[i]).X, ((Point)snackPoint[i]).Y, 10, 10); } } public void Addsnack() { if (direction == 1) addPoint = new Point(headPoint.X + 10, headPoint.Y); else if (direction == 2) addPoint = new Point(headPoint.X - 10, headPoint.Y); else if (direction == 3) addPoint = new Point(headPoint.X, headPoint.Y - 10); else if (direction == 4) addPoint = new Point(headPoint.X, headPoint.Y + 10); snackPoint.Add(addPoint); headPoint = addPoint; } public void RemoveSnackNode() { snackPoint.RemoveAt(0); } public void SnackMoce(Graphics g) { DrawSnack(g); RemoveSnackNode(); } public bool Diedif() { for (int i = 0; i < snackPoint.Count - 1; i++) { if ((Point)snackPoint[i] == headPoint) return true; } if (headPoint.X < 0 || headPoint.X > 400 || headPoint.Y < 0 || headPoint.Y > 300) return true; return false; } } }
以MFC编程框架为基础,实现贪吃蛇功能
如题,需要贪吃蛇游戏源代码(介绍一些代码的作用,本人小白,作业要求,希望详细一点),要求。程序简介,功能模块划分。程序概要设计(概要设计列出新增的类,新增的数据变量,新增的函数申明,主要代码等,并介绍其含义)
c++语言贪吃蛇游戏结束后想要继续,而不是直接退出的代码是怎么写的啊!大佬们帮个忙,急!!!
void Die()//游戏结束 { system("cls"); Set_location(30, 12); if (end_condition == 1)//不同情况会导致游戏结束时现实的文字不同 { Yellow_color(); cout << "撞墙而死!!!!!"; } else if (end_condition == 2) { Yellow_color(); cout << "竟然咬到自己!!!!"; } else if (end_condition == 3) { Yellow_color(); cout << "你自己结束了游戏。。。"; } else if (end_condition == 4) { Yellow_color(); cout << "你撞倒了障碍物!!!!"; } Set_location(30, 13); Yellow_color(); cout << "得分:" << score << endl; system("pause"); exit(0); }
qt做的贪吃蛇小游戏,构建的时候有问题,运行不了
包含界面文件源文件头文件,可是在运行的时候构建不成功,说只完成了2之中的1个步骤。 15:02:08: 为项目scoff_snake执行步骤 ... 15:02:08: 正在启动 "D:\qt\4.8.4\bin\qmake.exe" D:\qt\pujing\新建文件夹\scoff_snake.pro -r -spec win32-g++ Cannot find file: d:\qt\pujing\新建文件夹\scoff_snake.pro. 15:02:08: 进程"D:\qt\4.8.4\bin\qmake.exe"退出,退出代码 2 。 Error while building/deploying project scoff_snake (kit: 桌面) 当执行步骤 'qmake'时
如何做贪吃蛇的教程思想
各位大佬好,小弟最近要做一个c#贪吃蛇,使用winform窗体应用程序,要有登录窗体,连接SqlServer数据库等等, 啊,这是第一次做游戏程序,头脑有点混乱,不知该如何下手,例如摄蛇么移动,吃食物,分数的实时统计,信息录入数据库等等,望各位大佬提供一些思想,不胜感激!
pygame 贪吃蛇遇到的问题
做了两个黑洞,进入一个黑洞会传送到另一个黑洞,但是timer.tick(30)帧太快导致无法从传送,改成timer.tick(2)就可以,这是为什么,应该怎么做?主程序代码如下: ``` 主程序开始 pygame.init() img_size =40 img_group = list() screen_size = 0 #pygame.FULLSCREEN screen = pygame.display.set_mode((24*img_size,18*img_size),screen_size) pygame.display.set_caption("嗷大喵贪吃蛇") face = pygame.image.load("face.png") load_pic() game_init() game_over = False last_time = 0 bgm = None auto_play = False step_time = 400 waiting =True audio_init() rePlay = True play_sound(bgm) while True: timer.tick(2) ticks = pygame.time.get_ticks() current_time = time.clock() for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit() elif event.type == MOUSEBUTTONUP: if waiting == True: waiting = False game_over = False last_time = 0 auto_play = False step_time = 400 game_init() keys = pygame.key.get_pressed() if keys[K_ESCAPE]: pygame.quit() sys.exit() elif keys[K_UP] or keys[K_w]: snake.velocity = Point(0,-1) elif keys[K_DOWN] or keys[K_s]: snake.velocity = Point(0,1) elif keys[K_LEFT] or keys[K_a]: snake.velocity = Point(-1,0) elif keys[K_RIGHT] or keys[K_d]: snake.velocity = Point(1,0) elif keys[K_f]: if screen_size == pygame.FULLSCREEN: screen_size =0 else: screen_size =pygame.FULLSCREEN screen = pygame.display.set_mode((24*img_size,18*img_size),screen_size) pygame.display.set_caption("嗷大喵贪吃蛇") elif keys[K_PLUS] or keys[K_KP_PLUS]: step_time -= 10 if step_time <50: step_time=50 elif keys[K_MINUS] or keys[K_KP_MINUS]: step_time += 10 if step_time >400: step_time = 400 elif keys[K_SPACE]: if auto_play: auto_play = False step_time = 400 else: auto_play = True step_time = 100 if waiting: screen.blit(face,(0,0)) else: if not game_over: hole_group.update(ticks) snake.update(ticks) food_group.update(ticks) #检测是否捡起食物,并增加身体长度 hit_list = pygame.sprite.groupcollide(snake.segments, \ food_group, False, True) if len(hit_list) > 0: food_group.add(Food()) snake.add_segment() #检测是否碰到了自己的身体 for n in range(1, len(snake.segments)): if pygame.sprite.collide_rect(snake.segments[0], snake.segments[n]): game_over = True #检查屏幕边界 head_x = snake.segments[0].X//img_size head_y = snake.segments[0].Y//img_size if head_x < 0: snake.segments[0].X = 23 * img_size elif head_x > 24: snake.segments[0].X = 0 * img_size if head_y < 0: snake.segments[0].Y = 17 * img_size elif head_y > 18: snake.segments[0].Y = 0 * img_size #检测是否进入黑洞,并从另一个黑洞出来 holex = snake.segments[0].X holey = snake.segments[0].Y if holex == hole1.X and holey == hole1.Y: snake.segments[0].X = hole2.X snake.segments[0].Y = hole2.Y elif holex == hole2.X and holey == hole2.Y: snake.segments[0].X = hole1.X snake.segments[0].Y = hole1.Y #执行自动寻路代码 if auto_play: auto_move() backbuffer.fill((20,50,20)) snake.draw(backbuffer) food_group.draw(backbuffer) hole_group.draw(backbuffer) screen.blit(backbuffer, (0,0)) if not game_over: print_text(font, 0, 0, "Length " + str(len(snake.segments))) print_text(font, 0, 20, "Position " + str(snake.segments[0].X//img_size) + \ "," + str(snake.segments[0].Y//img_size)) else: print_text(font, 0, 0, "GAME OVER") waiting = True game_over = False #显示自动字样 if auto_play: print_text(font, 600, 0, "AUTO") #循环播放背景音乐 if int(current_time)%200 ==0 and rePlay: play_sound(bgm) rePlay = False if int(current_time)%200 == 1: rePlay = True pygame.display.update() ```
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Linux(服务器编程):15---两种高效的事件处理模式(reactor模式、proactor模式)
前言 同步I/O模型通常用于实现Reactor模式 异步I/O模型则用于实现Proactor模式 最后我们会使用同步I/O方式模拟出Proactor模式 一、Reactor模式 Reactor模式特点 它要求主线程(I/O处理单元)只负责监听文件描述符上是否有事件发生,有的话就立即将时间通知工作线程(逻辑单元)。除此之外,主线程不做任何其他实质性的工作 读写数据,接受新的连接,以及处...
阿里面试官问我:如何设计秒杀系统?我的回答让他比起大拇指
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图和个人联系方式,欢迎Star和指教 前言 Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了...
五年程序员记流水账式的自白。
不知觉已中码龄已突破五年,一路走来从起初铁憨憨到现在的十九线程序员,一路成长,虽然不能成为高工,但是也能挡下一面,从15年很火的android开始入坑,走过java、.Net、QT,目前仍处于android和.net交替开发中。 毕业到现在一共就职过两家公司,目前是第二家,公司算是半个创业公司,所以基本上都会身兼多职。比如不光要写代码,还要写软著、软著评测、线上线下客户对接需求收集...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
一文详尽系列之模型评估指标
点击上方“Datawhale”,选择“星标”公众号第一时间获取价值内容在机器学习领域通常会根据实际的业务场景拟定相应的不同的业务指标,针对不同机器学习问题如回归、分类、排...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外...
压测学习总结(1)——高并发性能指标:QPS、TPS、RT、吞吐量详解
一、QPS,每秒查询 QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。互联网中,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。 二、TPS,每秒事务 TPS:是TransactionsPerSecond的缩写,也就是事务数/秒。它是软件测试结果的测量单位。一个事务是指一...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
还记得那个提速8倍的IDEA插件吗?VS Code版本也发布啦!!
去年,阿里云发布了本地 IDE 插件 Cloud Toolkit,仅 IntelliJ IDEA 一个平台,就有 15 万以上的开发者进行了下载,体验了一键部署带来的开发便利。时隔一年的今天,阿里云正式发布了 Visual Studio Code 版本,全面覆盖前端开发者,帮助前端实现一键打包部署,让开发提速 8 倍。 VSCode 版本的插件,目前能做到什么? 安装插件之后,开发者可以立即体验...
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
2019年除夕夜的有感而发
天气:小雨(加小雪) 温度:3摄氏度 空气:严重污染(399) 风向:北风 风力:微风 现在是除夕夜晚上十点钟,再有两个小时就要新的一年了; 首先要说的是我没患病,至少现在是没有患病;但是心情确像患了病一样沉重; 现在这个时刻应该大部分家庭都在看春晚吧,或许一家人团团圆圆的坐在一起,或许因为某些特殊原因而不能团圆;但不管是身在何处,身处什么境地,我都想对每一个人说一句:新年快乐! 不知道csdn这...
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o...
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
节后首个工作日,企业们集体开晨会让钉钉挂了
By 超神经场景描述:昨天 2 月 3 日,是大部分城市号召远程工作的第一天,全国有接近 2 亿人在家开始远程办公,钉钉上也有超过 1000 万家企业活跃起来。关键词:十一出行 人脸...
Java基础知识点梳理
Java基础知识点梳理 摘要: 虽然已经在实际工作中经常与java打交道,但是一直没系统地对java这门语言进行梳理和总结,掌握的知识也比较零散。恰好利用这段时间重新认识下java,并对一些常见的语法和知识点做个总结与回顾,一方面为了加深印象,方便后面查阅,一方面为了学好java打下基础。 Java简介 java语言于1995年正式推出,最开始被命名为Oak语言,由James Gosling(詹姆
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
相关热词 c# 数组类型 泛型约束 c#的赛狗日程序 c# 传递数组 可变参数 c# 生成存储过程 c# list 补集 c#获得所有窗体 c# 当前秒数转成年月日 c#中的枚举 c# 计算校验和 连续随机数不重复c#
立即提问