通過實驗這種具體的例項來分析和 講解C++迴圈結構程式的設計。
工具/原料
電腦一臺
方法/步驟
一、實驗目的
1.熟練while 和for迴圈結構及實現迴圈的方法。
2.掌握在程式設計中用迴圈的方法實現各種演算法(如窮舉、迭代、遞推等)。
二、知識要點
在C++的程式設計中,有很多問題需要對同一問題進行反覆求解,迴圈結構的程式可以實現此類功能。在C++中,主要有兩類迴圈,一是當型迴圈,另一種是直到型號迴圈,後一種較少使用。從語句的角度來說,主要有 Do{ }while
While(條件表示式) { }
和for(條件表示式1;判斷;表示式)) { }
三、實驗內容及步驟
1.編寫一控制檯應用程式,輸入一個數,判斷是否為素數。
程式如下:
#include
#include
void f(int n) //此函式只判斷是否為素數。 {
int i,j=0;
for(i=2;i<=sqrt(n);i++) if(n%i==0)
j++;
if(n==0 n<0) cout<<"資料錯誤!"<<"\a"<
else if(n==1) cout<<"這個數不是素數。"<
if(j==0)
cout<<"這個數是素數。"<
else
cout<<"這個數不是素數。"<
int main() {
int n;
cout<<"請輸入要檢驗的整數:"<
執行結果如下:
2.根據上面的程式碼,輸出100-200之間的所有素數。 顯示出來。用for 或while 或do-while迴圈語句實現。 程式如下: #include
using namespace std; int main() {
int m,k,i,n=0; bool prime;
for(m=101;m<=200;m=m+2)
{
prime=true;
k=int(sqrt(m));
for(i=2;i<=k;i++)
if(m%i==0)
{
prime=false;
break;
}
if(prime)
{
cout<
n=n+1;
}
if(n%10==0)
cout<
}
cout<
}
執行結果如下:
3.編寫一程式,計算100!,並討論使用什麼資料型別來儲存。 程式如下:
#include
int n;
long float y;
cout<<"please input a data:"; cin>>n; y=fac(n);
cout<
long floatwww.gzlij.com fac(int n) {
long float f; if(n<0) { cout<<"n<0,data error!"<
else if(n==0 n==1) f=1; else
f=fac(n-1)*n; return f; }
執行結果為: