天天看點

第一次c++實驗

1.實作一個簡單的菜單程式:

A:if......else形式:

代碼:

#include<iostream>
using namespace std;
int main(){
char tep;
cout<<"Menu: A(dd) D(elete) S(ort) Q(uit),Select one:"<<endl;
while(1)
{
cin>>tep;
if(tep=='Q')//字元串常量要用''
break;
else
switch(tep)
{
case 'A':{
cout<<"資料已經增加"<<endl;break;
}
case'D':
{
cout<<"資料已經删除"<<endl; break;
}
case'S':
{
cout<<"資料已經排序"<<endl;break;
}
default:break;
}
}
return 0;
}      

圖檔:

第一次c++實驗

B:switch形式:

代碼:

#include<iostream>
using namespace std;
int main(){
char tep;
while(1)
{
cout<<"Menu: A(dd) D(elete) S(ort) Q(uit),select one: "<<endl;
cin>>tep;
if(tep=='A') cout<<"程式已經增加。"<<endl;
else if(tep=='D') cout<<"程式已經删除。"<<endl;
else if(tep=='S') cout<<"程式已經排序。"<<endl;
else if(tep=='Q') break;
else cout<<"What you put cannot be recognized"<<endl;
}
return 0;
}      

圖檔:

第一次c++實驗

2.窮舉法找質數:

代碼:

A:for形式:

#include<iostream>
using namespace std;
int main()
{

for(int i=1;i<=100;i++)
{
int a=0;//定義一個計數器判斷是否為素數。
for(int j=2;j<i;j++)
{
if(i%j==0)
{
++a;
break;
}
}
if(a==0)
cout<<i<<endl;
}
return 0;
}      

圖檔:

第一次c++實驗

 B:while形式:

#include<iostream>
using namespace std;
int main()

{
int i=1;
while(i++){
int j=2;
while(j<i){
if(i%j==0)
break;
j++;}
if(i==j) cout<<i<<endl;     
if(i>=100)
break;
}
return 0;
}      

圖檔:

第一次c++實驗

C:do....while形式:

代碼:

#include<iostream>
using namespace std;
int main()

{
int i=1;
do{
int j=2;
while(j<i){
if(i%j==0)
break;
j++;}
if(i==j) cout<<i<<endl;     
if(i>=100)
break;
}while(i++);
return 0;
}      

圖檔:

第一次c++實驗

3.使用者猜數:

代碼:

#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int main(){
int a=rand()%100,guess=200;//從系統随機抽取一個處于1到100的數。
while(a!=guess)
{
cin>>guess;
if(a>guess) cout<<"The number you guess is smaller"<<endl;
else if(a<guess) cout<<"The number you guess is larger"<<endl;
}
cout<<"This is the true number"<<endl;
return 0;
}      

圖檔:

第一次c++實驗

4.取球遊戲:

代碼:

#include<iostream>
#define maxn 5 ;
using namespace std;
int main(){
int a[5]={1,2,3,4,5};
int count=0;
for(int i=0;i<5;i++)
{
for(int j=0;j<5;j++)
{
if(a[i]==a[j])
continue;
else if(a[i]!=a[j])
for(int k=0;k<5;k++){
if(a[k]!=a[i]&&a[k]!=a[j])
{
count++;
}
}
}
}
cout<<count<<endl;
return 0;
}      

圖檔:

第一次c++實驗

實驗總結:

1.注意頭檔案,c++與c語言的第一個不同便是頭檔案,雖然幾經錯誤,但一不注意還是會脫手而出c語言的影子,書上一般采用#include<iostream>,但我還在網上看到了一種偷懶的萬能寫法,#include<bits/stdc.h>,但由于書上并未出現,因而不敢使用;

2.c++與c語言相比,繼承了c的諸多優點,同時又發揚了其諸多的不足,輸入輸出的方式較之c語言簡便明了了許多,更多的函數可以直接使用,不用再自己定義;

3.通過此次實驗,我認識到了c++與c語言的差別以及優越性,但不論哪種語言,哪種題目,細心永遠是最重要的一點,cout後的“<<”;cin後的">>",一不留神便會失之毫厘謬以千裡;而每一道題隻會文法,擁有細心,這還是不夠的,像最後一題抽球法,如果沒有機率論的知識基礎,那麼也就不免望洋興歎:“巧婦難為無米之炊了”。因而算法的了解,其他基礎課程的學習也是重中之重。