iT邦幫忙

2022 iThome 鐵人賽

DAY 10
0
自我挑戰組

C語言與C++語言自學系列 第 10

C語言與C++語言自學第十天

  • 分享至 

  • xImage
  •  

C語言while述句

while(表示式){程式片段},當表示式成立時,就執行程式片段

#include <stdio.h>
int main(){
    int answer=4;
    int guess;
    while(guess!=answer){
        printf("Please enter your guess: ");
        scanf("%d", &guess);
        if(guess>answer){
            printf("Too large!\n");
        }else if(guess<answer){
            printf("Too small!\n");
        }else{
            printf("Correct!\n");
        }
    }
    return 0;
}

上面的程式碼中我們要猜數字,我們先假設我們的答案是4,雖然我們可以用if和if...else來寫,但我們這次用while來寫,我們用while先假設guess跟我們的answer是不一樣的,如果guess大於answer我們就會顯示Too large太大了,guess小於answer我們就會顯示Too small太小了,其他的就一定是對的輸出Correct正確

#include <stdio.h>
int main(){
    int answer=4;
    int guess;
     printf("Please enter your guess: ");
     scanf("%d", &guess);
     while(guess!=answer){
        if(guess>answer){
            printf("Too large!\n");
        }else{
            printf("Too small!\n");
        }
        printf("Please enter your guess: ");
        scanf("%d", &guess);
    }
    printf("Correct!\n");
    return 0;
}

但我們也可能第一次guess就是4,那我們while就不會執行了所以我們直接輸出Correct,其他的像上面一樣,太大的Too large,太小的Too small

C++語言判斷質數

找出所有因數的同時,一邊紀錄因數的個數,如果因數個數恰好是2個,則n為質數

#include<iostream>
using namespace std;

int main()
{
    int n;
    int i;
    int counter;

    while( cin >> n )
    {
        counter = 0;

        i = 1;
        while( i <= n )
        {
            if( n%i == 0 )
            {
                counter = counter+1;
            }
            i = i+1;
        }

        if( counter == 2 )
        {
            cout << "Yes" << endl;
        }
        else
        {
            cout << "No" << endl;
        }
    }
    return 0;
}

上面的程式碼中我們就先假設n被測得數字和他的因數i以及紀錄因數的個數counter,如果因數小於等於被測得數字他們又可以整除的話counter就+1,下個數字加1繼續比,直到如果因數個數恰好是2個,則n為質數,最後在判斷是否為質數,輸出Yes是和No否就好


上一篇
C語言與C++語言自學第九天
下一篇
C語言與C++語言自學第十一天
系列文
C語言與C++語言自學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言