猜猜看

原创 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;
			}

			
		}
	

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





蚂蚱猜猜看

  • 2006年03月16日 00:00
  • 1.4MB
  • 下载

C# 猜猜看游戏

  • 2015年07月06日 20:48
  • 9.21MB
  • 下载

《Java程序设计》第17周课程设计:《猜猜看》游戏 第四天

今天我为了实现按钮判断进行了少量的调整,利用输出的text进行判断是否其图片与标记的名字相对应; 可惜我还不能在上方对话框显示名字; 图片旁边的三个黑点其实获取的图片的名称,因为避免被看见我把他隐...

猜猜看应用

  • 2015年06月06日 09:51
  • 38.44MB
  • 下载

图形界面练习:数字猜猜看

项目要求:一共有十次机会猜猜随机生成的整形数值,并为程序设计一个图形界面 图形界面实现效果: /** * swing的练习使用 * * @author SUMMER * *...

猜猜看源代码

  • 2015年07月08日 10:09
  • 4.48MB
  • 下载

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

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

《猜猜看》游戏的开发总结

《猜猜看》游戏的开发总结 1.最终成果 1.1 课程设计的目的        把软件工程中规范的软件开发方法应用到本次教师认识学生软件“猜猜看”的开发过程中,以经济地开发出高质量的软件并有效的...
  • Ajixk
  • Ajixk
  • 2015年07月07日 12:26
  • 411

《JAVA程序设计》实训第一天——《猜猜看》游戏

课程实训是做一个猜猜看的小游戏。对于对代码不熟悉不了解的我来说的确挺难的。但是我还是会努力的。import java.awt.EventQueue; import javax.swing.JFrame...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:猜猜看
举报原因:
原因补充:

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