想测试的话,复制然后在main方法里调用一下就完事了
1.(for循环)计算1+2+3+…100的和
代码:
//1到100的累加
public static void q_1(){
int sum = 0;
for(int i=1;i<=100;i++){
sum+=i;
}
System.out.println("sum:"+sum);
}
2.(for循环)计算1+3+5+…+99的和
代码:
//100以内单数的累加
public static void q_2(){
int sum= 0;
for(int i=1;i<100;i=i+2){
sum+=i;
}
System.out.println("sum:"+sum);
}
3.(while/do while循环)把1、2两题用while、do while改写
代码1:
//用while计算
public static void q_3(){
int sum1 = 0;
int sum2 = 0;
int i = 1;
int j = 1;
while(i<=100){
sum1+=i;
i++;
}
System.out.println("sum1:"+sum1);
while(j<100){
sum2+=j;
j=j+2;
}
System.out.println("sum2:"+sum2);
}
代码2:
//用do-while计算,之所以加个参数是因为这个方法不知道起什么名字
//干脆就使用了方法的重载,这个参数并没有什么卵用,纯属区分上面的方法
public static void q_3(Scanner sca){
int sum1 = 0;
int sum2 = 0;
int i = 1;
int j = 1;
do{
sum1+=i;
i++;
}while(i<=100);
System.out.println("sum1:"+sum1);
do{
sum2+=j;
j=j+2;
}while(j<100);
System.out.println("sum2:"+sum2);
}
4.for(循环)读入一个小于10的整数n,输出它的阶乘m
代码:
//读入一个小于10的整数n,输出它的阶乘n
public static void q_4(Scanner sca) {
System.out.println("请输入一个小于10的整数");
int num = sca.nextInt();
//判断输入的数是否满足要求
if(0<num&&num<10) {
int mul = 1;
for(int i=1;i<=num;i++) {
mul=mul*i;
}
System.out.println(num+"的阶乘为"+mul);
}else {
//若不满足,则递归自己
System.out.println("输入错误,请重新输入");
q_4(sca);
}
}
5.(for循环)求100以内所用能被3整除但不能被5整除的数字的和
代码:
//求100以内所有能被3整除但不能被5整除的数字的和
public static void q_5() {
int sum = 0;
for(int i=1;i<=100;i++) {
if(i%3==0&&i%5!=0) {
sum+=i;
}
}
System.out.println(sum);
}
6.(for循环)"百钱买百鸡"是我国著名的数学题
题目描述:3文钱可以买一只公鸡,2文钱可以买一只母鸡,1文钱可以买3只小鸡,用100文钱买了100只鸡,那么各有公鸡,母鸡,小鸡多少只
代码:
//百钱买百鸡问题
public static void q_6() {
for(int i=0;i<100;i++) {
for(int j=0;j<100;j++) {
if(3*i+2*j+(100-i-j)/3==100&&(100-i-j)%3==0) {
System.out.print("公鸡有"+i+"只,");
System.out.print("母鸡有"+j+"只,");
System.out.println("小鸡有"+(100-i-j)+"只");
}
}
}
}
7.(for循环)搬砖问题,36块砖,36人搬,男搬4,女搬3,两个小孩抬一砖,要求一次搬完,问男,女,小孩各若干
代码:
//搬砖问题
public static void q_7() {
for(int i=0;i<36;i++) {
for(int j=0;j<36;j++) {
if(4*i+3*j+(36-i-j)/2==36&&(36-i-j)%2==0) {
System.out.print("男人有"+i+"人,");
System.out.print("女人有"+j+"人,");
System.out.println("小孩有"+(36-i-j)+"人");
}
}
}
}
8.(for循环)编程找出四位整数abcd中满足(ad+cd)(ab+cd)=abcd的数.
代码:
//计算(ad+cd)(ab+cd)=abcd
public static void q_8() {
int ab,cd;
for(int i=1000;i<10000;i++) {
ab=i/100;
cd=i%100;
if((ab+cd)*(ab+cd)==i) {
System.out.println(i);
}
}
}
9.(for循环)读入一个整数N,输出N行等腰三角形
代码:
//打印等腰三角形
public static void q_9(Scanner sca) {
System.out.print("请输入你想打印三角形的行数:");
int num = sca.nextInt();
for(int i=0;i<num;i++) {
for(int j=0;j<2*num;j++) {
if(j==num||(j<=num+i&&j>=num-i)) {
System.out.print("* ");
}else {
System.out.print(" ");
}
}
System.out.println();
}
}
10.输出九九乘法表
代码:
//打印99乘法表
public static void q_10() {
for(int i=1;i<10;i++) {
for(int j=1;j<=i;j++) {
System.out.print(j+"*"+i+"="+i*j+" ");
}
System.out.println();
}
}
11.求"水仙花数"
提示:所谓水仙花数,指一个三位数abc,如果满足a3+b3+c3=abc
代码:
//求水仙花数
public static void q_11() {
for(int i=100;i<1000;i++) {
int ge = i%10;
int shi = (i/10)%10;
int bai = i/100;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i) {
System.out.println(i);
}
}
}