日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第二章:09流程控制[3for]

發布時間:2023/12/13 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第二章:09流程控制[3for] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
①格式

for(初始化語句;判斷條件語句;控制條件語句) {

? ? 循環體語句;

}

②注意事項

A:判斷條件語句無論簡單還是復雜結果是boolean類型。

B:循環體語句如果是一條語句,大括號可以省略;如果是多條語句,大括號不能省略。建議永遠不要省略。

C:一般來說:有左大括號就沒有分號,有分號就沒有左大括號

③實例

/*

For循環結構的使用

一、循環結構的4個要素

① 初始化條件

② 循環條件 ?--->是boolean類型

③ 循環體

④ 迭代條件

二、for循環的結構

for(①;②;④){

? ?③

}

執行過程:① - ② - ③ - ④ - ② - ③ - ④ - ... - ②

*/

class ForTest {

? ?public static void main(String[] args) {

? ? ? ?/*

? ? ? ?System.out.println("Hello World!");

? ? ? ?System.out.println("Hello World!");

? ? ? ?System.out.println("Hello World!");

? ? ? ?System.out.println("Hello World!");

? ? ? ?System.out.println("Hello World!");

? ? ? ?*/

? ? ? ?for(int i = 1;i <= 5;i++){//i:1,2,3,4,5

? ? ? ? ? ?System.out.println("Hello World!");

? ? ? ?}

? ? ? ?//i:在for循環內有效。出了for循環就失效了。

? ? ? ?//System.out.println(i);

? ? ? ?

? ? ? ?//練習:

? ? ? ?int num = 1;

? ? ? ?for(System.out.print('a');num <= 3;System.out.print('c'),num++){

? ? ? ? ? ?System.out.print('b');

? ? ? ?}

? ? ? ?//輸出結果:abcbcbc

? ? ? ?System.out.println();

? ? ? ?//例題:遍歷100以內的偶數,輸出所有偶數的和,輸出偶數的個數

? ? ? ?int sum = 0;//記錄所有偶數的和

? ? ? ?int count = 0;//記錄偶數的個數

? ? ? ?for(int i = 1;i <= 100;i++){

? ? ? ? ? ?

? ? ? ? ? ?if(i % 2 == 0){

? ? ? ? ? ? ? ?System.out.println(i);

? ? ? ? ? ? ? ?sum += i;

? ? ? ? ? ? ? ?count++;

? ? ? ? ? ?}

? ? ? ? ? ?//System.out.println("總和為:" + sum);

? ? ? ?}

? ? ? ?System.out.println("總和為:" + sum);

? ? ? ?System.out.println("個數為:" + count);

? ?}

}

?

需求:求5的階乘。

什么是階乘呢?

? ? n! = n*(n-1)! 規則

? ? n! = n*(n-1)*(n-2)*...*3*2*1

? ? ? //定義最終結果變量

? ? ? int jc = 1;

? ? ? //這里的x其實可以直接從2開始

? ? ? for(int x=2; x<=5; x++) {

? ? ? ? ? jc *=x;

? ? ? }

? ? ? System.out.println("1-5的階乘是:"+jc);

需求:在控制臺輸出所有的”水仙花數” ?

分析:

? ? 所謂的水仙花數是指一個三位數,其各位數字的立方和等于該數本身。

? ? 舉例:153就是一個水仙花數。

? ? 153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153

? ? A:三位數其實是告訴了我們范圍。

? ? B:通過for循環我們就可以實現獲取每一個三位數

? ? ? 但是麻煩是如何獲取這個三位數的個,十,百位上的數據

? ? ? 我們如何獲取一個數據的個,十,百呢?

? ? ? ? 假設有個一個數據:153

? ? ? ? ge: ? ?153%10 = 3

? ? ? ? shi: 153/10%10 = 5

? ? ? ? bai:153/10/10%10 = 1

? ? ? ? qian:x/10/10/10%10

? ? ? ? wan: ?x/10/10/10/10%10

? ? ? ? ...

? ? C:讓ge*ge*ge+shi*shi*shi+bai*bai*bai和該數據比較

? ? ? 如果相同,就把該數據在控制臺輸出。

?

???????????? //三位數其實是告訴了我們范圍。

? ? for(int x=100; x<1000; x++) {

? ? ? ? int ge = x%10;

? ? ? ? int shi = x/10%10;

? ? ? ? int bai = x/10/10%10;

? ? ? ? //讓ge*ge*ge+shi*shi*shi+bai*bai*bai和該數據比較

? ? ? ? if(x == (ge*ge*ge+shi*shi*shi+bai*bai*bai)) {

? ? ? ? ? ? //如果相同,就把該數據在控制臺輸出。

? ? ? ? ? ? System.out.println(x);

? ? ? ? }

? ? }

練習:請在控制臺輸出滿足如下條件的五位數

? ? 個位等于萬位

? ? 十位等于千位

? ? 個位+十位+千位+萬位=百位

分析:

? ? A:五位數就告訴了我們范圍。

? ? B:分解每一個五位數的個,十,百,千,萬位上的數據

? ? C:按照要求進行判斷即可

? ? //五位數就告訴了我們范圍。

? ? for(int x=10000; x<100000; x++) {

? ? ? ? //分解每一個五位數的個,十,百,千,萬位上的數據

? ? ? ? int ge = x%10;

? ? ? ? int shi = x/10%10;

? ? ? ? int bai ?= x/10/10%10;

? ? ? ? int qian = x/10/10/10%10;

? ? ? ? int wan = x/10/10/10/10%10;

? ? ? ? //按照要求進行判斷即可

? ? ? ? if((ge==wan) && (shi==qian) && (ge+shi+qian+wan==bai)) {

? ? ? ? ? ? System.out.println(x);

? ? ? ? }

? ? }

?

/*

題目:輸入兩個正整數m和n,求其最大公約數和最小公倍數。

比如:12和20的最大公約數是4,最小公倍數是60。

說明:break關鍵字的使用:一旦在循環中執行到break,就跳出循環

*/

import java.util.Scanner;

class ForTest{

? ?public static void main(String[] args){

? ?

? ? ? ?Scanner scan = new Scanner(System.in);

? ? ? ?System.out.println("請輸入第一個正整數:");

? ? ? ?int m = scan.nextInt();

? ? ? ?

? ? ? ?System.out.println("請輸入第二個正整數:");

? ? ? ?int n = scan.nextInt();

? ? ? ?

? ? ? ?//獲取最大公約數

? ? ? ?//1.獲取兩個數中的較小值

? ? ? ?int min = (m <= n)? m : n;

? ? ? ?//2.遍歷

? ? ? ?for(int i = min;i >= 1 ;i--){

? ? ? ? ? ?if(m % i == 0 && n % i == 0){

? ? ? ? ? ? ? ?System.out.println("最大公約數為:" + i);

? ? ? ? ? ? ? ?break;//一旦在循環中執行到break,就跳出循環

? ? ? ? ? ?}

? ? ? ?}

? ? ? ?

? ? ? ?//獲取最小公倍數

? ? ? ?//1.獲取兩個數中的較大值

? ? ? ?int max = (m >= n)? m : n;

? ? ? ?//2.遍歷

? ? ? ?for(int i = max;i <= m * n;i++){

? ? ? ? ? ?if(i % m == 0 && i % n == 0){

? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ?System.out.println("最小公倍數:" + i);

? ? ? ? ? ? ? ?break;

? ? ? ? ? ?

? ? ? ? ? ?}

? ? ? ?}

? ? ? ?

? ?}

}

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

轉載于:https://www.cnblogs.com/Lucky-stars/p/11007680.html

總結

以上是生活随笔為你收集整理的第二章:09流程控制[3for]的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。