华为2012校园招聘机试java题 华为校园招聘
1、将大写字母转换成其对应小写字母后的第五个字母,大于z的从头开始数。 public class Test1 {
} public static void main(String[] args) { } Test1 test1 = new Test1(); System.out.println(test1.upperToLower("A")); System.out.println(
2、将一个十进制数(byte类型)转化二进制数,将二进制数前后颠倒,再算出颠倒后其对应的十进制数。
public class Test2 {
public byte change(byte b) { int[] input = new int[8]; int k = 0; while (b / 2 != 0) { } input[k] = b % 2; for (int i = 0; i
} } } } sum += mid; // System.out.println(sum); return (byte) sum; public static void main(String[] args) { } Test4 test4 = new Test4(); System.out.println(test4.change((byte) 5));
3、大数相乘
public class Test3 {
// 将数字放到整数数组,逆序,字符串尾部对齐 int[] arrStr1 = new int[str1.length() - flagStr1]; for (int i = 0; i
*********************************************************************
// 运算开始,arrStr2的每位去乘arrStr1的每位 StringBuffer subResult = new StringBuffer();// 中间结果 for (int i = 0; i 0) { midResult.append(subJinWei);// 如果最前面位相乘有进位,结果添加进位数字
}
} if (0 == i) { subResult = midResult;// 第一位,子结果存放第一位结果 } else { // 各位对齐,确保中间结果和每位结果位数相同,便于相加运算 if (midResult.length() > subResult.length()) { } // // 相加运算,结果放到subResult中 int benWei = 0; int jinWei = 0; for (int j = 0; j 0) { } int diff = subResult.length() - midResult.length(); while (diff > 0) { } midResult.append(0); diff--; subResult.append(0); diff--; } else { *********************************************************
} } } + (midResult.charAt(j) - "0") + jinWei) % 10; + (midResult.charAt(j) - "0") + jinWei) / 10; jinWei = ((subResult.charAt(j) - "0") subResult.setCharAt(j, (char) (benWei + "0")); // 如果最后相加任有进位,结果中添加进位 if (jinWei > 0) { } // subResult.append(jinWei); ***********************************************************
“-”
} // 判断“-”的个数,没有或有两个则为结果为正,不考虑,如只有一个则结果要添加if (1 == (flagStr1 + flagStr2)) { } result = subResult.reverse().toString();// 最终子结果逆序,即为结果 return result; subResult.append("-"); public static void main(String[] args) { // TODO Auto-generated method stub StringBuffer sb = new StringBuffer();
String str1 =
String str2 =
for (int i = 0; i
sb.append(9);
}
String str1 = sb.toString();
String str2 = str1;
Test3 test = new Test3();
String result = test.mutiStr(str1, str2); System.out.println(result); // //
} }
