//这是一小部分;//c.nextInt()与c.nextLine()连用时的情况与解决方法:
import java.util.Scanner;
class sy {
public static void main(String[] args) {
/*System.out.println("Hello World!");
Scanner c = new Scanner(System.in);
System.out.println("请输入一个数字");
int i = c.nextInt();
System.out.println("请输入第二个数字");
int ii = c.nextInt();
System.out.println("输入的数字为:" + i + " 和 " + ii);*/
/**Scanner cc = new Scanner(System.in);
System.out.println("请输入一串数字");
String s = cc.nextLine(); /*这种只能点击一次回车键的情况,可以在输完数字后加空格,然后 继续输入字符串在回车就能实现一次赋值两次了*/
System.out.println("请再输入一串数字");
String ss = cc.nextLine();
System.out.println("字符串为:" + s + " 和 " + ss);*/
/*Scanner c = new Scanner(System.in); //或者都采用字符串赋值,然后转型int即可;
System.out.println("请输入一个数字");
int a = c.nextInt();
System.out.println("请输入一串数字");
Scanner c2 = new Scanner(System.in);
String b = c2.nextLine();
System.out.println("输入的数字和字符串为:" + a + " 和 " + b + '好');*/
}
}
1.分析以下需求,并用代码实现:
(1)打印1到100之内的整数,但数字中包含9的要跳过
(2)每行输出5个满足条件的数,之间用空格分隔
(3)如:1 2 3 4 5
class Work1 {
//打印1-100的数,去除含9的数continue,控制输出for/for/if
public static void main(String[] args) {
int count = 0;
for(int i = 1;i <101;i++) {
int g = i % 10;
int s = i / 10 % 10;
if(g == 9 || s == 9)
continue;
System.out.print(i + " ");
count++;
if(count == 5) { //或用count%5==0
count = 0;
System.out.println();
}
}
}
}
4.分析以下需求,并用代码实现:
(1)珠穆朗玛峰高度为8848米,有一张足够大的纸,厚度为0.001米。
(2)请问,我折叠多少次,可以折成珠穆朗玛峰的高度。
class Work4 {
//每折叠一次厚度乘2或0.001 二进制左移一位,厚度与8848判断
public static void main(String[] args) {
int j = 1;
while(1 << j <= 8848000) {
j++;
}
System.out.println("我折叠了 " + j + " 次");
}
}
7.分析以下需求,并用代码实现:
(1)打印倒直角三角形
*****
****
***
**
*
class Work7 {
public static void main(String[] args) {
for(int i = 5; i > 0; i--) { //此for只是确定行数,i先赋值1还是5无关
for(int j = 1; j <= i; j++) { //输出若想大头小尾就将j先赋值大的数,个数可以用函数设置
System.out.print("*");
} //输出端可以加入控制条件,完成输出设置操作
System.out.println();
}
}
}
* //输出该图形,并采用手动输入形式:
* *
* * *
* * * *
class Wm {
public static void main(String[] args) {
int h = 0;
Scanner c = new Scanner(System.in);
int i = c.nextInt();
for (int l = i;l >= 0 ;l-- ) {
for (int j = 0;j < l ;j++ ) {
System.out.print(" ");
}
h++;
for (int k = h;k > 0 ;k-- ) {
System.out.print("* ");
}
System.out.println();
}
}
import java.util.Scanner;
class Stringbf { //使用StringBuffer 实现数组遍历,其比String 型节省内存
public static void main(String[] args) {
int[] arr = {2,3,4,5,6,7,3,6,76}; //设定数组
String s = array2String(arr);
System.out.println(s);
reverString();
}
public static String array2String(int[] arr) {
StringBuffer sb = new StringBuffer(); //创建StringBuffer对象
sb.append(" [");
for(int j = 0;j < arr.length ;j++ ) { //遍历数组
if(j != arr.length-1) {
sb.append(arr[j]).append(", "); //数组结尾处判断
}else {
sb.append(arr[j]).append(']');
}
}
return sb.toString();
}
public static void reverString() {
Scanner sc = new Scanner(System.in); //键盘录入
System.out.println("请输入一串字符串:");
String s = sc.nextLine();
StringBuffer sb = new StringBuffer(s); //创建StringBuffer对象
sb.reverse(); //实现字符串反转
System.out.println(sb.toString()); //转换成字符串,并输出
}
}
class PubbleSort { //其为冒泡排序法加数组排序法
public static void main(String[] args) {
int[] arr = {2,3,44,55,3,22,5,7,99,7,65};
pubbleSort(arr);
print(arr);
}
public static void pubbleSort(int[] arr) {
for(int i = 0 ;i < arr.length-1 ; i++ ) { //设置循环次数 i为有几个被排列出了
for(int j = 0; j < arr.length-1-i;j++) {
if(arr[j] > arr[j +1]) { //排序关键,决定升序还是降序,此为升序
int t = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = t;
}
}
}
}
public static void print(int[] arr) {
StringBuffer sb = new StringBuffer(" [");
for(int k = 0;k <arr.length ;k++ ) {
if(k != arr.length-1) {
sb.append(arr[k]).append(" ,");
}else {
sb.append(arr[k]).append("]\n\n");
}
}
System.out.print(sb.toString());
}
}
class Cc { //利用选择排序法排列数组,选择(数据)从左边,冒泡从右边
public static void main(String[] args) {
int[] arr = {3,4,5,6,7,8,33,775,4,3,22};
xuanZe(arr);
print(arr);
}
public static void xuanZe(int[] arr) {
for(int i = 0;i < arr.length-1 ;i++ ) {
for(int j = i + 1;j < arr.length ;j++ ) { //数据从左边开始放入
if(arr[i] > arr[j]) {
swap(arr,i,j);
}
}
}
}
public static void swap(int[] arr,int i,int j) { // 抽取的方法,便于多次调用
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
public static void print(int[] arr) {
System.out.print(" [ ");
for(int i = 0;i < arr.length ;i++ ) {
if(i != arr.length-1) {
System.out.print(arr[i] + " , ");
}else {
System.out.print(arr[i] + " ] ");
}
}
}
}
|
|