張凱強-程序設(shè)計實踐報告_第1頁
張凱強-程序設(shè)計實踐報告_第2頁
張凱強-程序設(shè)計實踐報告_第3頁
張凱強-程序設(shè)計實踐報告_第4頁
張凱強-程序設(shè)計實踐報告_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、程序設(shè)計實踐報告 姓名 張凱強 學(xué)號 _0902100202_電氣工程學(xué)_院_自動化_專業(yè)_091_班 2011 _年 12 _月_2_日指導(dǎo)老師:盧日昌2-5 將“fly”譯成密碼“iob”。編碼規(guī)律:將字母a變成字母d,即變成其后的第3個字母,x變成a,y變成b,z變成c。提示:用賦初值的方法使c1,c2,c3的值分別為f.l.y,按編碼規(guī)則改變c1,c2,c3后,將結(jié)果輸出。#include "iostream.h"void main()char c1='f',c2='l',c3='y'c1=(c1>='a

2、'&&c1<='w')?c1+3:c1-23; c2=(c2>='a'&&c2<='w')?c2+3:c2-23; c3=(c3>='a'&&c3<='w')?c3+3:c3-23;cout<<c1<<c2<<c3<<endl;3-5編一模擬袖珍計算器的完整程序,運行結(jié)果參見圖2,.3.1。要求:輸入兩個操作數(shù)和一個操作符,根據(jù)操作符決定所做的運算。#include "io

3、stream.h"void main() double x,y,z;char a;cout<<"請輸入操作數(shù)1 運算符op 操作數(shù)2"<<endl; cin>>x>>a>>y;switch(a)case '+':z=x+y;break;case '-':z=x-y;break;case '*':z=x*y;break;case '/':z=x/y;break;cout<<x<<a<<y<<

4、9;='<<z<<endl;4-8求Sn=a+aa+aaa+aaaa+aaaaa(n個a),其中a是一個由隨機函數(shù)產(chǎn)生的19(包括1和9)中的一個正整數(shù),n是一個由隨機函數(shù)產(chǎn)生的510(包括5和10)中的一個數(shù)。#include "iostream.h"#include "stdlib.h"#include "time.h"void main() int a,n,i; long sn=0,temp=0; srand(unsigned)time(NULL); a=1+rand()%9; n=5+rand(

5、)%6; cout<<"a="<<a<<endl; cout<<"n="<<n<<endl; cout<<"sn=" for(i=1;i<n;i+) temp=temp*10+a; sn=sn+temp; cout<<temp<<"+" temp=temp*10+a; sn=sn+temp; cout<<temp<<"="<<sn<<e

6、ndl; 5-2隨機產(chǎn)生20個學(xué)生的計算機課程的成績(0100),按照從大到小的順序排序,分別顯示排序前和排序后的結(jié)果#include "iostream.h"#include "stdlib.h"#include "time.h"void main() int a10,i,j,k,t; srand(time(0); for(i=0;i<10;i+) ai=rand()%101; cout<<"排序前"<<endl; for(i=0;i<10;i+) cout<<ai

7、<<" " for(i=0;i<10;i+) k=i; for(j=0;j<10;j+) if(ak>aj) k=j; t=ai,ai=ak;ak=t; cout<<"n排序后"<<endl;for(i=0;i<10;i+)cout<<ai<<" " 6-6編寫函數(shù)max,其功能是將字符串s中最大字符的地址返回,再編寫一個主函數(shù),調(diào)用該函數(shù),將字符串s中從最大字符開始的子串中的小寫字母轉(zhuǎn)換成大寫字母,然后輸出新字符串s。例如,假設(shè)s的內(nèi)容為“qwert

8、you”,則從最大字符'y'開始的子串為“you”,處理后的s為“qwertYOU”。函數(shù)形式為:char*max(char s);#include "iostream.h"#include "stdio.h"#include "string.h"char *max(char s)char *m=s,*p=s;while(*p!='0')if(*p>*m)m=p;p+;return m;void main() char s1000,*p;gets(s);p=max(s); while(*p!=&#

9、39;0')if(*p>='a'&&*p<='z')*p=*p-32;p+;puts(s);7-6 編寫程序,建立一個帶有頭結(jié)點的單項鏈表。鏈表結(jié)點中的數(shù)據(jù)為從鍵盤輸入的一個字符串,但要求將該字符串按由小到大的順序組織到鏈表中的。 #include <iostream.h>#include <stdio.h>#include <stdlib.h>#include <string.h>struct node char data; struct node *next;void mai

10、n()int i,j,k,n;char s100,t; struct node *head,*tail,*newnode,*p;head=new node;tail=head;gets(s);n=strlen(s);for(i=0;i<n-1;i+)k=i;for(j=i;j<n;j+)if(sk>sj) t=sk;sk=sj;sj=t;for(i=0;i<n;i+)newnode=new node;newnode->data=si;tail->next=newnode;tail=newnode;tail->next=NULL;p=head->n

11、ext;while(p!=NULL)cout<<p->data; p=p->next; cout<<endl;8-2 編寫程序,將題1建立的文本文件中的每一個字符及其所對應(yīng)的ASCII碼輸出到屏幕上。例如文件的內(nèi)容是“I love China”,則輸出: I(73) (32)l(108)o(111)v(118)e(101) C(67)h(104)i(105)n(110)a(97)注意:空格也是有效字符。這里我在當(dāng)前工程文件下建立一個abc.txt文本文件并寫入I love China,在調(diào)用程序時輸入文件名為abc.txt則可以完成程序的功能。#includ

12、e”stdio.h”#include”stdlib.h”void main() char filename100; char ch; FILE *fp; printf("輸入完整文件名:"); scanf("%s",filename); if(fp=fopen(filename,"r")=NULL) printf("文件打開失敗"); exit(1); while(ch=fgetc(fp)!=EOF) printf("%c(%d)",ch,(int)ch); fclose(fp); printf

13、("n");9-5設(shè)計一個航班類Plane,具有機型,班次,額定載客數(shù)和實際載客數(shù)等數(shù)據(jù)成員,還具有輸入、輸出數(shù)據(jù)成員的功能以及求載客效率的功能。其中,載客效率=實際載客數(shù)/額定載客數(shù)。老師您可以輸入A380 CZ3260 500 300,分別為機型,班次,額定載客數(shù),實際載客數(shù)#include"iostream.h"class planeprivate:char a30; /機型char b30; /班次int c; /額定載客數(shù) int d; /實際載客數(shù)public:void input()cin>>a>>b>>

14、c>>d;void output()cout<<a<<' '<<b<<' '<<c<<' '<<d<<endl;double p()return (1.0*d/c);void main()plane s;s.input();s.output();cout<<" "<<s.p()<<endl;10-4設(shè)計一個圓類Circle類。其內(nèi)包含兩個虛函數(shù)area()和length(),利用抽象類

15、的方法求一個圓內(nèi)接正方形和圓外切正方形的面積和方程。提示:假設(shè)圓的半徑為r,則圓內(nèi)接正方形的邊長為 ,圓外切正方形的邊長為2r。 #include "iostream.h"#include "math.h"class Circle/定義類private:double R;public:Circle(double r)R=r;void print()cout<<"圓的半徑為:"<<R<<endl;virtual double length() /定義虛函數(shù)length ,計算內(nèi)接正方形周長return

16、 (sqrt(2)*R)*4);virtual double area()/定義虛函數(shù)area,計算內(nèi)接正方形面積return (sqrt(2)*R)*(sqrt(2)*R);virtual double length1()/計算外切正方形周長return (2*R*4);virtual double area1()/計算外切正方形面積return(2*R)*(2*R);void main()double r;cout<<"輸入半徑:"<<endl;cin>>r;Circle *p;/抽象類Circle a(r);p=&a;p-&

17、gt;print();cout<<"圓的內(nèi)接正方形周長為:"<<p->length()<<endl;cout<<"圓的內(nèi)接正方形面積為:"<<p->area()<<endl;cout<<"圓的外切正方形周長為:"<<p->length1()<<endl;cout<<"圓的外切正方形面積為:"<<p->area1()<<endl; 總結(jié)本次程序設(shè)計環(huán)節(jié)遇到很多問題,比如指針函數(shù),鏈表等問題,同時在設(shè)計的環(huán)節(jié)還存在很多小的細(xì)節(jié)方面的不足,比如循環(huán)結(jié)構(gòu)用于比較數(shù)組或字符串的大小,隨機數(shù)的產(chǎn)生等等。很多使用

溫馨提示

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

評論

0/150

提交評論