實(shí)驗(yàn)一 C++基礎(chǔ)練習(xí)(附答案).doc_第1頁(yè)
實(shí)驗(yàn)一 C++基礎(chǔ)練習(xí)(附答案).doc_第2頁(yè)
實(shí)驗(yàn)一 C++基礎(chǔ)練習(xí)(附答案).doc_第3頁(yè)
實(shí)驗(yàn)一 C++基礎(chǔ)練習(xí)(附答案).doc_第4頁(yè)
實(shí)驗(yàn)一 C++基礎(chǔ)練習(xí)(附答案).doc_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

實(shí)驗(yàn)一 C+基礎(chǔ)練習(xí)實(shí)驗(yàn)?zāi)康暮鸵?1掌握C+程序的基本格式與規(guī)范,學(xué)會(huì)編寫(xiě)簡(jiǎn)單的C+程序。 2理解C+程序結(jié)構(gòu)的特點(diǎn)。 3熟悉C+程序基本的輸入輸出操作。 4掌握C+數(shù)據(jù)類型常量和變量以及修飾符的使用方法。 5掌握函數(shù)定義、函數(shù)調(diào)用和函數(shù)說(shuō)明的方法。 6熟悉作用域運(yùn)算符的功能和基本使用方法。 7掌握C+內(nèi)存的動(dòng)態(tài)分配與釋放方法。 8理解引用的概念,掌握引用的使用方法。實(shí)驗(yàn)內(nèi)容 1編寫(xiě)一個(gè)程序,從鍵盤(pán)上輸入攝氏溫度,通過(guò)轉(zhuǎn)換輸出華氏溫度,轉(zhuǎn)換公式為。例如,輸入攝氏溫度為10時(shí),輸出華氏溫度為50;輸入攝氏溫度為37時(shí),輸出華氏溫度為98.6。要求輸入輸出時(shí)有提示。 2定義一個(gè)結(jié)構(gòu)體數(shù)據(jù)類型用于保存自己的個(gè)人信息,例如可以包含姓名、性別、年齡、幾門(mén)課程的成績(jī)等(根據(jù)自己的需要定義成員)。在程序中輸入個(gè)人信息,然后按一定的格式輸出個(gè)人信息。要求輸入輸出時(shí)有提示。3編寫(xiě)函數(shù)求2個(gè)和3個(gè)正整數(shù)中的最大值,并在主函數(shù)中進(jìn)行調(diào)用驗(yàn)證。要求:(1)利用函數(shù)重載實(shí)現(xiàn);(2)用參數(shù)帶默認(rèn)值的函數(shù)實(shí)現(xiàn)。 4編寫(xiě)一個(gè)程序,動(dòng)態(tài)定義一個(gè)整型數(shù)組(數(shù)組的大小通過(guò)鍵盤(pán)輸入),給數(shù)組元素賦值。求數(shù)組所有元素的和,求和的結(jié)果使用全局變量sum存儲(chǔ),同時(shí)對(duì)數(shù)組中的奇數(shù)求和,結(jié)果使用局部變量sum存儲(chǔ),將兩個(gè)結(jié)果輸出。本題要求體會(huì)和理解作用域運(yùn)算符的概念與基本使用方法,同時(shí)掌握動(dòng)態(tài)內(nèi)存分配和釋放。5編寫(xiě)一個(gè)函數(shù)建立一個(gè)單鏈表。鏈表結(jié)構(gòu)如下:鏈表中節(jié)點(diǎn)的結(jié)構(gòu)為:typedef struct Nodeint data;Node *next; *LinkList;建立單鏈表函數(shù)的原型為:int CreateList(LinkList &L,int n)其中L為單鏈表的頭指針,創(chuàng)建的鏈表通過(guò)L返回;n為鏈表中節(jié)點(diǎn)的個(gè)數(shù)。函數(shù)中通過(guò)new運(yùn)算符給每個(gè)節(jié)點(diǎn)分配存儲(chǔ)空間,并通過(guò)cin輸入節(jié)點(diǎn)中保存的數(shù)據(jù),最后將節(jié)點(diǎn)插入到鏈表末尾。再編寫(xiě)一個(gè)輸出鏈表數(shù)據(jù)的函數(shù),函數(shù)原型為:int PrintList(LinkList L)最后編寫(xiě)主函數(shù)進(jìn)行測(cè)試。6閱讀下列程序,指出錯(cuò)誤的語(yǔ)句以及出錯(cuò)的原因。然后上機(jī)調(diào)試改正錯(cuò)誤。(1)include void main()cinx;int y=x*x;couty=yn;return 0;(2)#include void main()int a,b;a=7;int s=a+b;couta+b=sendl;7調(diào)試下列程序,寫(xiě)出輸出結(jié)果,并解釋輸出結(jié)果(1)#include void main()double dd=3.9,de=1.3;double &rdd=dd,&rde=de;coutrdd+rde,dd+deendl;rdd=2.6;coutrdd,ddendl;de=2.5;coutrde,deendl;(2)#include void main()void fun(int ,int &);int a,b;fun(2,a);fun(3,b);couta+b=a+bendl;void fun(int m,int &n)n=m*4;(3)#include int &fun(int);int aa5;void main()int a=5;for(int i=0;i5;i+)fun(i)=a+i;for(i=0;i5;i+)coutaai ;coutendl;int &fun(int a)return aaa;參考答案(非權(quán)威,僅僅是我自己的理解,如有錯(cuò)誤,請(qǐng)批評(píng)指正?。┑谝活}:#include void main() float x; coutx; cout它的華氏溫度為:9*x/5+32endl;第二題:#include #define N 1struct student /定義并聲明結(jié)構(gòu)變量int number;char name20;char sex10;int age;float score2;stuN;void main() coutstu0.number; ; coutstu0.sex; coutstu0.age; coutstu0.score0; coutstu0.score1; coutendl; coutendl; cout你的學(xué)號(hào)為:stu0.numberendl; cout你的姓名為:endl; cout你的性別為:stu0.sexendl; cout你的年齡為:stu0.ageendl; cout你的A課成績(jī)?yōu)椋簊tu0.score0endl; cout你的B課成績(jī)?yōu)椋簊tu0.score1endl; 第三題:#include using namespace std; int MAX(int x,int y)return xy?x:y; int MAX(int a,int b,int c)return (ab?a:(bc?b:c); void main() int x,y,a,b,c; coutx; couty; coutendl; couta; coutb; coutc;coutendl;coutendl; coutMAX(x,y)=MAX(x,y)endl; coutMAX(a,b,c)=MAX(a,b,c)endl;第四題:#includeusing namespace std;int sum=0;void main() int N,sum=0; coutN;int *p = new intN; cout請(qǐng)輸入N個(gè)整數(shù)到數(shù)組pN中:endl;for(int i=0;i pi;for(int k=0;kN;k+) :sum += pk;if( pk%2!=0) sum += pk; coutendlendl; cout數(shù)組pN的總和為:; cout:sumendl; coutendlendl; cout數(shù)組pN的奇數(shù)和為:; coutsumendl; delete p;第五題:#include typedef struct Nodeint data;Node *next; *LinkList;LinkList CreateList(LinkList &L,int n)LinkList p = NULL;LinkList temp = NULL; int data; cout 請(qǐng)任意輸入n個(gè)正整數(shù): data;while (n 0) p = new struct Node; p-data = data; p-next = NULL; if (!L) L = temp = p; else temp-next = p; temp = p; cin data;n-; return L;int PrintList(LinkList L)LinkList p = L; cout 鏈表的全部數(shù)據(jù)如下: endl; while (p) cout data next; cout next = NULL; L = L-next; delete p; void main()LinkList L = NULL; L = CreateList(L,3);/輸入鏈表數(shù)據(jù) PrintList( L );/輸出鏈表數(shù)據(jù) freeLink( L );/釋放單鏈表的頭指針第六題:(1)修改前的程序:include /頭文件應(yīng)定義應(yīng)加上#號(hào)void main()cinx;/使用x之前應(yīng)先申明x的內(nèi)型int y=x*x;couty=yn;/引號(hào)的位置錯(cuò)誤,應(yīng)改為y=,且換行應(yīng)該使用endlreturn 0; /main函數(shù)定義為void類型,因此不應(yīng)該有返回值,故去掉這句話。修改后的程序:#include void main()int x;cinx;int y=x*x;couty=yendl;(2)修改前的程序:#include void main()int a,b;/整個(gè)過(guò)程中b都沒(méi)有賦值,因此a+b為一個(gè)不確定的數(shù)。a=7;int s=a+b;couta+b=sendl;修改后的程序:#include void main()int a,b;a=7;b=0;int s=a+b;couta+b=sendl;第七題:(1)#include void main()double dd=3.9,de=1.3;/定義兩個(gè)double類型的數(shù)據(jù)double &rdd=dd,&rde=de;/分別對(duì)dd和de進(jìn)行引用聲明為rdd和rde/由于引用與其所引用的變量的值永遠(yuǎn)保持相同。故rdd+rde=dd+de=3.9+1.3=5.2/因此輸出為:5.2,5.2coutrdd+rde,dd+deendl;rdd=2.6;/rdd=dd被賦值為2.6coutrdd,ddendl;/rdd=dd=2.6因此輸出為:2.6,2.6de=2.5;/de=rde被賦值為2.5coutrde,deendl;/de=rde=2.5 因此輸出為:2.5,2.5(2)#include void main()void fun(int ,int &);/函數(shù)原型說(shuō)明int a,b;/聲明兩個(gè)int類型的數(shù)據(jù)a,bfun(2,a);/調(diào)用函數(shù)fun,使引用變量a=2*4=8fun(3,b);/調(diào)用函數(shù)fun,使引用變量b=3*4=12couta+b=a+bendl;/輸出a+b的值20void fun(int m,int &n)n=m*4;(3)#include int &fun(int);/聲明

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論