一、實驗目的和要求
1. 熟悉C++6.0編譯系統的常用功能。
2. 學會使用C++6.0編譯系統實現簡單的C++程序。
3. 熟悉C++程序的基本結構,學會使用簡單的輸入/輸出操作。
二、實驗內容
1.編譯下列程序,改正所出現的錯誤信息,並寫出輸出結果。
/sy1_1.cpp
main()
{
cout<<"This is a program."
}
運行結果如下圖所示:
修改程序如下:
#include<iostream>
using namespace std;
int main(void)
{
cout<<"This is a program.";
return 0;
}
正確程序運行結果如下:
# include<iostream>
using namespace std;
int main( )
{
cin>>x;
inty=x*x;
cout<<"y= <<y<<\n";
return 0;
}
運行結果如下圖所示:
修改程序如下:
#include<iostream>
using namespace std;
int main( )
{
int x;
cin>>x;
int y=x*x;
cout<<"y="<<y<<endl;
return 0;
}
正確程序運行結果如下:
(3)
# include< iostream>
using namespace std;
int main( )
{
int a,b;
a= 7;
int s = a + b;
cout<<"a+ b= "<<s<<endl;
return 0 ;
}
運行結果如下圖所示:
修改程序如下:
#include<iostream>
using namespace std;
int main( )
{
int a,b;
a=7;
cin>>b;
int s=a+b;
cout<<"a+b="<<a+b<<endl;
return 0 ;
}
正確程序運行結果如下:
2.寫出一個完整的C++程序,從鍵盤輸入值來賦給int類型的變量the_number,並在輸入語句前添加一個提示語,提示用戶輸入一個整數。(sy1_4.cpp)
編寫的程序如下:
#include<iostream>
using namespace std;
int main(void)
{
int the_number;
cout<<"please input an integer:"<<endl;
cin>>the_number;
cout<<"the_number="<<the_number<<endl;
return 0;
}
運行的結果如下:
分析與討論
1.C++程序的基本結構。
答:一般情況下,用C++語言編寫的程序是由函數加上類型組成的。在這種結構中,C++語言中有一個特殊的函數稱爲主函數。每一段程序都從主函數開始執行,由主函數去激活一個對象的行爲,通過這個對象的行爲又去激活其他對象的行爲,程序中的衆多對象共同協作完成某一任務。
此外,C++程序的基本結構還有如下兩種退化的情形。一種退化情形是程序中僅有類而沒有函數(包括主函數)。這些程序通常不是爲了直接運行,而是用來構造C++程序庫,供編寫其他程序是使用。另一種退化情形是程序中僅有函數而沒有類。除主函數外,還可能有一些遊離的函數,這些遊離的函數不屬於任何類。這時的C++程序不具有面向對象的特徵,但它包含了C++程序基本組成。
2.從對實驗內容第1題中出現錯誤的修改,總結出編程時應注意哪些問題。
答:(1)在編程時首先要注意是否有頭文件,即#include指令,它的作用是將某一個源文件的代碼併入當前源程序。
(2)在編程時還要注意在include指令之後需要加入using namespace std,這是一條針對名字空間的指令,是爲了告訴編譯程序此程序中所有的標識符都在std名字空間中,標識符都可以直接使用而不會發生命名的衝突。
(3)在編程時在主函數前面要有類型,並且在最後要有返回值。在第1題中函數名之前的int表示函數需要一個整型返回值,return
0則便是程序正常結束。
(4)在編程時cout後面輸出的字符串要用雙引號括起來,並且在語句結束時的分號不能忘。
3.C++程序中所出現的變量是否都必須先說明後使用?說明變量時是否都應放在函數體的開頭。
答:不是。在使用之前的語句中定義說明即可。
4.使用cout與運算符“<<”輸出字符串時應該注意些什麼?
答:使用cout與運算符“<<”輸出字符串時字符串應爲位於“”裏面。並且在輸出時若要實現換行,可以使用endl,也可以使用轉義符“/n”
5.程序中說明了的變量,但沒有賦值,這時能否使用?
答:能。
6.一個程序通過編譯並運行後得到了輸出結果,這一結果是否一定正確?
答:不一定。因爲可能運行的方式不符合該程序本身的意義。
實驗小結
本次實驗過程中,我出現了很多問題,首先就是codeblocks軟件在我的電腦上使用不了,怎麼弄都弄不好,然後去借了同學的電腦來做,在實驗中,我基本掌握了cout和cin的使用,也熟悉了許多編譯系統的常用功能,能夠利用編譯系統實現簡單的c++程序。在做實驗時,總是粗心大意的忘記寫符號之類的,但做了幾遍之後就沒那麼容易忘記了,程序的輸入也更熟練了。希望自己以後能在做實驗的過程中獲得更多的知識與技能。