教育路上
摘要:C++語言程序結構。以下是我們為大家整理的,相信大家閱讀完后肯定有了自己的選擇吧。
2023-02-18 13:15網絡推薦
第二節 C++語言程序結構
無論做任何事情,都要有一定的方式方法與處理步驟,
所謂“無規矩無以成方圓”。計算機程序設計比日常生活中
的事務處理更具有嚴謹性、規范性和可行性。為了使計算機
有效地解決實際問題,必須將處理步驟編排好,用計算機能
理解的計算機語言編寫成“序列”,讓計算機自動識別并執
行這個“序列”,達到解決實際問題的目的。將處理問題的
步驟編排好,用計算機語言組成序列,就是常說的編寫程序。
在C++語言中,執行每條語句都是由計算機完成相應的具體
操作,編寫程序是利用C++語句的功能來實現預定的處理要
求?!扒Ю镏?,始于足下”,我們從簡單程序學起,逐步
了解和掌握怎樣編寫程序。
在學習C++語言之前,讓我們繞過那些繁瑣的語法規則
細節,通過一些簡單的例題,來熟悉程序的基本組成和基本
語句的用法,選手剛接觸編程時,多動手模仿是一條捷徑。
例12 在梯形中陰影部分面積是150平方厘米,求梯形面積。
【分析】 已知梯形上、下底長為15和25。令梯形的高為h,則由已知三角形面積為
150平方厘米,有150=(15*h)/2,得h為20,然后根據梯形面積公式算出梯形面積。
程序如下:
#include<cstdio> //printf和scanf調用cstdio庫,在C語言中可調用stdioh庫
#include<cstdlib> // Dev C++使用system( )調用cstdlib庫
using namespace std; //在C語言中要省略,例如在VC++和TC++中
int main() //有的C語言可用void main(),例如TC++和VC++
{ //整個程序開始
float s,h,up,down; // float定義s,h,up,down為單精度實型變量
up=15; //已知上底
down=25; //已知下底
h=2*150/up; //根據上底求出梯形的高
s=(up+down)*h/2; //求出梯形的面積
printf("s=%02f\n",s);// \n是換行控制符,02f按實際位數輸出,保留2位小數
system("pause"); //暫停作用,TC++和VC++中使用system( )調用stdlibh庫
return 0; //結束程序,在Dev C++中可省略,在TC++和VC++中最
好保留
}
運行結果:
s=40000
【說明】:
所謂namespace,是指標識符的各種可見范圍。C++標準程序庫中的所有
標識符都被定義于一個名為std的namespace中。
當使用<iostreamh>時,相當于在C中調用庫函數,使用的是全局命名空間,
也就是早期的C++實現;當使用<iostream>的時候,該頭文件沒有定義全局命名
空間,必須使用namespace std;這樣才能正確使用cout、cin和endl。
例13 已知一位小朋友的電影票價是10元,計算x位小朋友的總票價是多少?
【分析】 假設總票價用y來表示,則這個問題可以用以下幾個步驟來實現:
①輸入小朋友的數目x;
②用公式y=10*x計算總票價;
③輸出總票價y的值。
程序如下:
#include<iostream> //使用cin,cout,須調用iostream庫
#include<cstdlib> // Dev C++使用system( )調用cstdlib庫
using namespace std;
int main() // main前的int在Dev C++中可省略
{
int x,y; //定義整型變量
cout<<"Input x="; //輸入提示
cin>>x; //小朋友的人數
y=10*x; //計算總票價
cout<<"total="<<y<<endl; //輸出總票價
system("pause"); //暫停作用,須調用cstdlib庫
return 0; //結束程序,在Dev C++中可省略
}
【說明】:
1、int定義x,y為整型變量,有關整型變量將在第二章詳細介紹。
2、cout<<的作用是在屏幕中顯示字符串"Input x="。
3、cin>>x的作用是輸入一個數,賦予變量x。
4、cout<<"total="<<y<<endl的作用是輸出提示符total=,輸出y的值,endl是換
行的意思。
5、system("pause")起暫停作用。
通過以上例12和例13兩個例子,可以總結出C++語言程序的結構如下:
1)C++語言變量在使用之前必須先定義其數據類型,未經定義的變量不能使用。
2)程序由一個或多個函數組成,一個程序中必須有且只有一個主函數,主函數
的名字為main。不論main()函數在程序中什么位置,程序都是從main()函數開始
執行,main()函數執行完畢,程序也就結束了。
3)在程序中可以調用系統提供的庫函數。在調用庫函數之前,必須將相應頭文
件包含在程序中。
4)程序中可以有注釋行。注釋是為了使程序更易于理解和提示。
5)程序的語句以分號結束。分號是C++語言不可缺少的組成部分。
6)程序的書寫要注意適當的縮進,一般采用“逐層縮進”形式,以便使程序更
加清晰易讀。
把處理問題的步驟編成能從上到下順序執行的程序,是簡單程序的基本特征。
再來分析下面一道例題的程序結構,同時繼續學習基本語句。
例14 有一個牧場,牧場上的牧草每天都在勻速生長,這片牧場可供15頭牛吃20天,
或可供20頭牛吃10天,那么,這片牧場每天新生的草量可供幾頭牛吃1天?
【分析】解決這類問題的關鍵是利用牛吃的草量,最終求出這片牧場每天新生長的草
量,我們設1單位的草量為1頭牛1天所需的草量,于是15頭牛20天所食的草量為300單
位(包括這20天內的新生草量),20頭牛10天所食的草量為200單位(包括這10天內
的新生草量),兩者的差值即為10天內的新生草量。程序如下:
#include<iostream> //使用cin,cout,須調用iostream庫
#include<cstdlib> // Dev C++使用system( )調用cstdlib庫
using namespace std;
int main() // main前的int在Dev C++中可省略
{
int s1,s2,s3; //變量定義
s1=15*20; //15頭牛20天所食的草量
s2=20*10; //20頭牛10天所食的草量
s3=(s1-s2)/(20-10); //每天新生的草量單位數
cout<<"s="<<s3<<endl; //1單位為1頭牛1天的食量
system("pause"); //暫停作用,須調用cstdlib庫
return 0; //結束程序,在Dev C++中可省略
}
運行結果:
s=10
【C++版本注意事項】
在4版本C++中,<iostream>不是萬能庫,不包括cstdio,cstring,cstdlib,其他常用
的min, max函數也不保證包括,需要注意如下幾個細節:
①、getchar(),stdin,stdout,freopen(),fclose(), scanf()在c++中需要調用
<cstdio>
②、memset()需要包含C頭文件<stringh>,在c++中需要調用<cstring>
③、qsort(),exit()需要包含C頭文件<stdlibh>,在c++中需要調用<cstdlib>
在4版本C++中iostream根據標準去除了iostream對cstdio, cstring, algorithm的依
賴性,需要顯式包括。你現在還可能不透徹理解以上注意事項,就慢慢消化吧,
在信息學奧賽中一定要注意以上細節,請記?。骸凹毠潧Q定成敗”。
【上機練習】
1輸入三個數,計算并輸出它們的平均值以及三個數的乘積,寫出程序。
2輸入圓的半徑R,求圓的面積和周長。
3加法計算器:編程由鍵盤輸入兩個整數a和b,將它們的和輸出到屏幕上。
4某梯形的上底、下底和高分別為8,12,9,求該梯形的面積。
( 梯形面積公式為 S=
5 已知圖圓柱體的高為12,底面圓的半徑為7,求圓柱體表面積
訪客的評論 2024/09/19 06:03
文中描述的是準確的嗎,如何報名!