Java面试题:1-100之间的数,被放在数组a[99]中,有一个数没有包含在其中,用java代码找出这个数
- import java.util.Random;
- /**
- * 查找缺失的一个数字
- * @author 老紫竹 java2000.net
- *
- */
- public class Test {
- public static void main(String args[]) {
- int total = 0;
- int[] a = new int[100];
- // 生成一个缺失的数组
- Random r = new Random();
- int lost = r.nextInt(99) + 1;
- for (int i = 1; i < lost; i++) {
- a[i - 1] = i;
- }
- for (int i = lost; i <= 99; i++) {
- a[i - 1] = i + 1;
- }
- for (int i = 0; i < 99; i++) {
- total += a[i];
- }
- System.out.println("不包含的那个数是" + (5050 - total) + "/" + lost);
- }
- }
这个题网上很多地方可以找到答案,这里写的是一个片段,就是把这99个数加起来,因为1到100的和是5050,所以用5050减99个数的和就是不包含的数字。