實驗1 簡單的C++程序(P276)

一、實驗目的和要求

1. 熟悉Code::Blocks10.05編譯系統的常用功能。

2. 學會使用Code::Blocks10.05編譯系統實現簡單的C++程序。

3. 熟悉C++程序的基本結構,學會使用簡單的輸入/輸出操作。

二、實驗內容

1.編譯下列程序,改正所出現的錯誤信息,並寫出輸出結果。

//(1)sy1_1.cpp
main( )
{
Cout<<This is a program.
}

運行結果如下圖所示:

修改程序如下:

//(1)sy1_1.cpp
#include<iostream>
using namespace std;
int main(void)
{
   cout<<"This is a program.";
   return 0;
}

正確程序運行結果如下:



(2)

//sy1_2.cpp
# include<iostream>
using namespace std;
int main( )
{
cin>>x;
inty=x*x;
cout<<"y= <<y<<\n";
return 0;
}

運行結果如下圖所示:

修改程序如下:

//(2)sy1_2.cpp
#include<iostream>
using namespace std;
int main( )
{
    int x;
    cin>>x;
    int y=x*x;
    cout<<"y="<<y<<endl;
    return 0;
}

正確程序運行結果如下:


(3)

//sy1_3.cpp
# include< iostream>
using namespace std;
int main( )
{
int a,b;
a= 7;
int s = a + b;
cout<<"a+ b= "<<s<<endl;
return 0 ;
}

運行結果如下圖所示:


修改程序如下:
//(3)sy1_3.cpp
#include<iostream>
using namespace std;
int main( )
{
    int a,b;
    a=7;
    cout<<"請輸入b的值"<<endl;
    cin>>b;
    int s=a+b;
    cout<<"a+b="<<a+b<<endl;
    return 0 ;
}

正確程序運行結果如下:


2.寫出一個完整的C++程序,從鍵盤輸入值來賦給int類型的變量the_number,並在輸入語句前添加一個提示語,提示用戶輸入一個整數。(sy1_4.cpp)

編寫的程序如下:

//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.一個程序通過編譯並運行後得到了輸出結果,這一結果是否一定正確?
    答:不一定。因爲可能運行的方式不符合該程序本身的意義。

實驗小結  

    通過本次的實驗過程我初步瞭解的面向對象程序設計的方法,學會的cout和cin的使用,並且明白了cout和cin與printf和scanf在使用中的一些區別。在之前學習的基礎上又進一步的加深了對C++學習的印象,能夠熟練的使用Code::Blocks這一編程軟件。雖然在修改程序時會出現一些簡單的問題,比如說在語句結束時忘掉了分號導致編譯的時候出錯,這就說明了編程需要考驗我們的細心與耐心,要不斷地修改程序,在出問題在哪裏,並解決問題。學習是一個積累的過程,寫得程序多了就自然而然的熟練了,能夠一針見血的找出錯誤,能達到這種水平就要求我必須要花時間去練習,多讀程序,多編程序,過聽一些有關這方面的課程,爲今後的學習和工作打下良好的基礎。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章