1.在屏幕上输出10行内容,每行的内容都是“*****”。
public static void main(String[] args){
for(int i=0;i<10;i++){
System.out.println("*****");
}
}
2.在屏幕上输出10行内容,每行的内容都不一样,第1行一个星号,第2行2个星号,依此类推第10行10个星号。
public static void main(String[] args){
for(int i=0;i<10;i++){
for (int j=0;j<i+1;j++){
System.out.print("*");
}
System.out.println();
}
}
3.在屏幕上输出以下内容:
12345
1234
123
12
1
public static void main(String[] args){
for(int i=5;i>=1;i--){ //控制有几行
for (int j=1;j<=i;j++){//控制每行输出个数
System.out.print(j);
}
System.out.println();
}
}
写双重循环时,考虑 i 与 j 的联系。
4.计算10个99相加后的值并输出。
int sum = 0;
for (int i = 0; i <10 ; i++) {
sum+=99;
}
System.out.print(sum);
5.计算1到100以内能被7或者3整除但不能同时被这两者整除的数的个数
int n = 0;
for (int i = 0;i<100;i++) {
if ((i%7 == 0 || i%3 == 0) && !(i%7==0 && i%3==0)) {
n+=1;
}
}
6.计算从1到100之间临近两个整数的和并依次输出。比如第一次输出3(1+2),第二次输出5(2+3),最后依次输出199(100+99)
for (int i = 0;i<100;i++){
System.out.println((i+1+i)+"("+i+"+"+(i+1)+")");
}
7.判断n是不是一个质数(质数是只能被1和它自身整除的数)。
int n = 36;
int index = 0;
for(int i = 2; i<=n;i++){
if (n % i == 0){//有一个数能被n整除
index = i;
break;//i<n
}
}
if (index == n) {//是素数
System.out.println("Yes");
} else {//不是素数
System.out.println("No")
}
8.将某个8位的整数所有位的数值加在一起并输出。
int sum = 0;
int n = 12345678;
while (n != 0) {
sum = sum + n%10; //取出的位数
n = n/10; //存放没取出的位数,即剩下的作为下一轮的被除数。
}
System.out.println(sum);
外层循环控制行数,内层循环控制列数。
9..一个5位数,判断它是不是回文数,例如12321是回文数
public static void main(String[] args) {
int n = 12321;
int[] arr = new int[5];
int len = arr.length - 1;
for (int i = 0; i < 5; i++) {
if (n != 0) {
arr[i] = n % 10;
n = n / 10;
}
}
// boolean flag = false;
int count= 0;
for (int i = 0; i < arr.length / 2; i++) {
if (arr[i] != arr[len - i]) {
System.out.println("不是回数");
}else {
count++;
}
}
if(count>=2){
System.out.println("是回数");
}
}
我感觉这样写是很有缺陷,用当前所学的内容(循环语句,判断语句),只能写成这样了。大神给点其他简便的方法可以么。
10.将一个整数数位翻转
如: 整数 56123
返回结果为整数: 32165
public static void main(String[] args) {
int n = 123456;
int m = 0;
while (n!=0){
m = n%10;
n = n/10;
System.out.print(m);
}
}