猜猜看

原创 2015年07月07日 18:04:31

package com.example.caicaikan;
/**
 * 12345对应着abcde
 * 
 * 
 * */
public class Test {
	String[] message=new String[]{"a","b","c","d","e"};
	int[] number=new int[]{1,2,3,4,5};
	public void reset(){
		for(int i=0;i<3;i++){
			int temp = number[i];				//将数组元素i保存到临时变量中
			int index = (int) (Math.random()*5);		//生成一个随机数
			number[i] = number[index];			//将随机数指定的数组元素的内容赋值给数组元素i
			number[index] = temp;
		
		}
		System.out.print("   ssssssssssss   ");
		//int[] xx={1,2,3};
		int[] xx=new int[3];
		for(int i=0;i<3;i++){
			System.out.print(number[i]);
			System.out.print(message[number[i]-1]);
			 xx[i]=number[i];
			 
		}
		System.out.print("    ooooooooooooooooooo  ");
		int index = (int) (Math.random()*3);
		System.out.print("结果为:"+xx[index]);
		System.out.print("结果为:"+message[xx[index]-1]);
		}
	
	
	
	public static void main(String[] args) {
//		Test test=new Test();
//		test.reset();
//		
		
	        System.out.println("循环没有开始");

	        System.out.println("现在开始测试continue");
	        for (int i = 0; i < 3; i++) {
	            System.out.println("开始第" + i + "次for循环");
	            if (i == 1) {
	                continue;
	            }
	            System.out.println("看看continue后这里执行了吗?");
	        }
	        System.out.println("continue测试完毕\n***********************");

	        System.out.println("现在开始测试break");
	        for (int i = 0; i < 3; i++) {
	            System.out.println("开始第" + i + "次for循环");
	            if (i == 1){
	                break;
	            }

	            System.out.println("看看break后这里执行了吗?");
	        }
	        System.out.println("break测试完毕\n***********************");
	    }
		
	}


在这个程序,最难的应该是那个随机抽取一个数字,然后对于不同的图片进行点击,如果对的话,则显示正确的结果,否则则是错。上面那些代码是用来测试的,java语言。因为android测试的话,要不断地装程序进手机里面,所以比较麻烦,所以我就用了上面的代码进行测试。也就是核心代码了,下面的则是android代码。



package com.example.caicaikan;

import java.security.PublicKey;

import android.R.integer;
import android.support.v7.app.ActionBarActivity;
import android.text.StaticLayout;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends ActionBarActivity {
 private TextView tv1;
 private ImageView iv1;
 private ImageView iv2;
 private ImageView iv3;
 private Button bt;
 private int selectedNum;
 //int[] xx=new int[3];
 int[] num=new int[]{1,2,3,4,5};
 int[] number=new int[]{R.drawable.fangbingbing,R.drawable.huangshengyi,R.drawable.liuyifei,R.drawable.one,
			R.drawable.wuyifan};
String[] message=new String[]{"范冰冰是哪个","黄圣依是哪个","刘亦菲是哪个","美女是谁","吴亦凡是哪个"};
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		
		setContentView(R.layout.activity_main);
		tv1=(TextView) findViewById(R.id.tv1);
		bt=(Button) findViewById(R.id.bt);
		iv1=(ImageView) findViewById(R.id.iv1);
		iv2=(ImageView) findViewById(R.id.iv2);
		iv3=(ImageView) findViewById(R.id.iv3);
		reset();
		iv1.setImageDrawable(getResources().getDrawable(number[0]));
		iv2.setImageDrawable(getResources().getDrawable(number[1]));
		iv3.setImageDrawable(getResources().getDrawable(number[2]));
		
		
		//重玩一次
		bt.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				reset();
				iv1.setImageDrawable(getResources().getDrawable(number[0]));
				iv2.setImageDrawable(getResources().getDrawable(number[1]));
				iv3.setImageDrawable(getResources().getDrawable(number[2]));
				
			}
		});

	}
	
	public void reset(){
		for(int i=0;i<3;i++){
			int temp = number[i];				//将数组元素i保存到临时变量中
			int tem=num[i];
		int index = (int) (Math.random()*number.length);		//生成一个随机数
//		//不让前后两次重复
//		if(index==selectedNum){
//			if(index<4)
//				index++;
//			else {
//				index=0;
//			}
//		}				
			number[i] = number[index];			//将随机数指定的数组元素的内容赋值给数组元素i
			num[i]=num[index];
			number[index] = temp;				//将临时变量的值赋值给随机数组指定的那个数组元素
			num[index]=tem;
		}
	int[] xx=new int[3];
		for(int i=0;i<3;i++){
			xx[i]=num[i];
		}
		 int ind =(int) (Math.random()*3);
		 
		 String aa=null;
////			
////			//不让前后两次重复
//		 if (xx[ind]==selectedNum) {
//			if (ind<2) {
//			 aa=message[xx[ind+1]-1];
//			 tv1.setText(aa);
//			 selectedNum=xx[ind+1];
//			} else {
//				aa=message[xx[0]-1];
//				tv1.setText(aa);
//				selectedNum=xx[0];
//			}
			 
			 aa=message[xx[ind]-1];		
				tv1.setText(aa);
				selectedNum=xx[ind];
		
		
		//触碰事件
		//为图片1添加监听事件
				iv1.setOnClickListener(new OnClickListener() {			
					@Override
					public void onClick(View v) {
						isRight(v,0);				
					}
				});
				//为图片2添加监听事件
				iv2.setOnClickListener(new OnClickListener() {			
							@Override
					public void onClick(View v) {						
								isRight(v,1);	
							}
						});
				
				//为图片3添加监听事件
				iv3.setOnClickListener(new OnClickListener() {			
							@Override
					public void onClick(View v) {						
								isRight(v,2);	
							}
						});				
	}
	//判断结果
		protected void isRight(View v, int i) {
			iv1.setImageDrawable(getResources().getDrawable(number[0]));
			iv2.setImageDrawable(getResources().getDrawable(number[1]));
			iv3.setImageDrawable(getResources().getDrawable(number[2]));
			
			switch (i) {
			case 0:
				if (num[0]==selectedNum) {
					Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
				} else {
					Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
				}
				break;
				
			case 1:
				if (num[1]==selectedNum) {
					Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
				} else {
					Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
				}
				break;
			case 2:
				if (num[2]==selectedNum) {
					Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
				} else {
					Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
				}
				break;
			default:
				break;
			}

			
		}
	

这个程序,我很早就做好了雏形,但直到现在我都不想改,这个经历告诉我们,做事一定要做好,别留下收尾,否则就很难去进行。都说是雏形,当然,是比较简陋的。那些图片的大小我都没设置好,字体也没调整好。图片我还可以不断地加进去。算法,我就没有做,还没有涉及到。能力还不行。





《C#程序设计》猜猜看小游戏制作

由于对C#的应用不熟悉,我临时改用JSP制作本次课程设计。在JSP页面,随机显示一张英雄联盟的英雄图片,通过下拉复选框选择你心中的答案,点击提交后显示本次猜测结果,通过超链接又可以返回本页面继续游戏。...
  • py1994829
  • py1994829
  • 2015年07月07日 12:52
  • 692

《java课程设计》之猜猜看游戏(四)

import java.awt.EventQueue; import javax.imageio.ImageIO; import javax.swing.JFrame; imp...
  • u013899624
  • u013899624
  • 2015年07月05日 16:48
  • 249

成语你能知多少

一般而言,普通的大众化的程序和俗语对于绝大多数而言能够张口就来,然而文学功底较深厚的则能知道一些含义比较深刻的成语。那么,你能知道多少成语,或能使用多少含义深刻的成语呢?本文金额少一种手机应用程序,它...
  • chchzh
  • chchzh
  • 2011年08月27日 09:39
  • 1328

C#课程设计:《猜猜看》游戏开发总结

信管1121,201211671117,聂双燕 第一部分:开发要求(完整要求见课程考核说明编程组和游戏说明) 1. 随机显示 一个名字 与 3张相片,选择正确的相片; 2. 随机显示 一张相片 ...
  • sunshinegyan
  • sunshinegyan
  • 2015年07月04日 23:08
  • 1450

《C#程序设计》第六次作业:《猜猜看》游戏

本周作业布置地址:http://user.qzone.qq.com/303727350/blog/1433931626。
  • u011524722
  • u011524722
  • 2015年06月14日 23:49
  • 472

C#程序设计-猜猜看

程序介绍: 该程序设计实现了随机显示三张学生照片一个名字学号猜其中哪张照片与名字对应的功能,开发平台是用jetbrains公司旗下一款JavaScript 开发工具WebStrom,开发语言用html...
  • hehelinzhihao
  • hehelinzhihao
  • 2015年07月07日 20:19
  • 284

## 猜猜看 ##

猜猜看
  • u014026748
  • u014026748
  • 2015年06月30日 21:18
  • 320

猜猜看

import java.awt.EventQueue; import javax.imageio.ImageIO; import javax.swing.JFrame; import javax...
  • u013901687
  • u013901687
  • 2015年07月03日 08:53
  • 201

《JAVA课程设计》实训第四天——《猜猜看》游戏

第四天,本来想进一步去改进《猜猜看》游戏的,但是很多问题都不理解,也不熟悉怎么去弄到连接数据库,统计猜对次数,所以并没有进行再多的修改。 基本上就是这样的运行结果了 import java.awt...
  • u013921527
  • u013921527
  • 2015年07月03日 08:31
  • 781

猜猜看游戏框架

猜猜看游戏框架import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import java...
  • u013930005
  • u013930005
  • 2015年06月29日 11:53
  • 238
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:猜猜看
举报原因:
原因补充:

(最多只允许输入30个字)