我們要如何印出1到100這些數字呢,如果我們單純的printf可能要做一百次那太累了,所以我們可以用while來將這些1~100的數字印出,下程式碼
#include <stdio.h>
int main(){
int count=1;
while(count<=100){
printf("%d\n", count);
count=count+1;
}
return 0;
}
我們先假設一個變數=1,帶入while我們一直跑到100我們還是小於等於100,101我們就沒有小於100,最後我們就會印出1到100,程式碼事先印完再+1到概念
如果我們單純印出固定的數字那就不有趣了,我們可以練習印出1到N的數字,我們寫的迴圈就有彈性
#include <stdio.h>
int main(){
int N;
printf("Please enter the number: ");
scanf("%d", &N);
int count=1;
while(count<=N){
printf("%d\n", count);
count=count+1;
}
return 0;
}
假設我們終點沒有事先指定先假設為N,那我們寫的迴圈就有彈性了,首先先架設一個N,在印警示訊息再從鍵盤讀入訊息存到N,然後count從1跑到N就會跑N次,印出我們想跑到的數字
我們在改個題目從M印到N,其中M<=N,那程式碼怎麼寫下程式碼
#include <stdio.h>
int main(){
int M,N;
printf("Please enter the number M: ");
scanf("%d", &M);
printf("Please enter the number N: ");
scanf("%d", &N);
int count=M;
while(count<=N){
printf("%d\n", count);
count=count+1;
}
return 0;
}
上面的程式碼中我們從鍵盤讀入M和N,我們的起點是M終點是N,下面一樣做相同的概念count=count+1,最後就會印出我們想從哪印到哪了
利用標準函式庫中的函式rand,可以將隨機因子,導入電腦程式應用中,i=rand()
#include <iostream>
#include <iomanip>
#include <cstdlib>
using namespace std;
int main()
{
for(int counter=1;counter<=20;counter++)
{
cout<<setw(10)<<(1+rand()%6);
if(counter%5==0)
cout<<endl;
}
}
rand會產生一個無號整數,其值介於0和RAND MAX至少是32767,rand的原型宣告在中,為了產生0到5之間整數,我們可以使用模數運算子%和rand,1+rand()%6,稱為縮放scaling,而數字6為縮放係數,先前產生的數字+1,就能夠將數字的範圍平移