Visual C实例_第1页
Visual C实例_第2页
Visual C实例_第3页
Visual C实例_第4页
Visual C实例_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章实例1 Hello, Visual C+/*/ program1.cpp/*#include “iostream.h”#include “stdio.h”int main()printf(“Hello, World!n”);cout<<”Hello,Visual C+ 6.0!n”;return 0;实例2 Welcome to Win32!/*/ program2.cpp/*#include “stdafx.h”#include “iostream.h”int main(int argc,char *argv)char str20;cout<<”Please e

2、nter your name:”;cin>>str;cout<<str<<”, Welcome to Win32!n”;return 0;实例4 程序调试/*/ program4.cpp/*#include “stdafx.h”include “iostream.h”int ain()int main()int max,a,b,c;cout<<”依次输入三个整数,本程序将对其比较大小,并输出最大的数.n”;cout<<”第一个数”;cin>>a;cout<<”第二个数”;cin>>b;cout<

3、;<”第三个数”;cin>>c;if (a>b)max=a;else max=b;if (c>max)max=c;cut<<”最大的数是: “<<max<<endl;return 0;第二章实例5 进入C+的密码/*/ program5.cpp/*#include “iostream.h”int main()int key;cout<<”请输入密码: “;cin>>key;if (key=1234)cout<”密码正确! “<<endl;cout<<”欢迎进入C+ !”<

4、;<endl;return 1;实例6 有提示音的密码程序/*/ program6.cpp/*#include “iostream.h”int main()int key;cout<<”请输入密码: ”;cin>>key;if (key=0)cout<”密码正确! “<”n”;cout<<”欢迎进入C+ !”<<”n”;cout<<”07”<<”n”;return 1;实例7 闰年的计算/*/ program7.cpp/*#include “iostream.h”int main()int year;in

5、t f1,f2,f3;cout<<”请输入年份: ”;cin>>year;f1=(int)(year/4)*4=year;f2=(int)(year/100)*100=year;f3=(int)(year/400)*400=year;if (f1&&(!f2)|f2&&f3) cout<<year<<”年是闰年. n”;elsecout<<year<<”年不是闰年. n”;return 1;实例9 多用户密码程序/*/ program9.cpp/*#include “iostream.h”i

6、nt main()int key;cout<<”请输入密码: “;cin>>key;if (key=123) cout<<”欢迎您, Wizard.n”;else if (key=246)cout<<”欢迎您, Joe.n”;else if (key=999)cout<<”欢迎您, David.n” else cout<<”密码错误!n”<<”程序终止! 07n”;return 1;实例10 另一种多用户密码程序/*/ program10.cpp/*#include “iostream.h”int main()

7、int key;cout<<”请输入密码: “;cin>>key;switch(key) case 123:cout<<”欢迎您, Wizard.n”;break;case 246:cout<<”欢迎您, Joe.n”;break;case 999: cout<<”欢迎您, David.n”;break;default:cout<<”密码错误!n”<<”程序终止! 07n”;break;return 1;实例11 成绩分段统计/*/ program11.cpp/*#include “iostream.h”int

8、 main()int cj;cout<<”请输入分数: ”;cin>cj;switch(cj)case 90: cout<<”90100有12人.n”;case 80: cout<<”8090有25人.n”;case 70: cout<<”7080有17人.n”;case 60: cout<<”6070有5人.n”;default:cout<<”60分以下有7人.n”;return 1;实例12 连续数字的求和/*/ program12.cpp/*#include “iostream.h”int main()cons

9、t int MAX=100;int n,s;s=0;n=1;while (n<=MAX)s=s+n;n+;cout<<”1100的总和为 ”<<s<<”n”;return 1;实例13 韩信点兵/*/ program13.cpp/*#include “iostream.h”int main()int i,a,b,c;for (i =1; i <100; i +)a= i %3;b= i %5;c= i %7;if (a=1 && b=0 && c=5) cout<< i <<endl;ret

10、urn 1;实例14 百鸡问题/*/ program14.cpp/*#include “iostream.h”int main()int x,y,z;for (x=1;x<20;x+) for y=1;y<33;y+) z=100-x-y; if (5*x+y*3+z/3=100&&z%3=0) cout<<”公鸡有”<<x<<”只,母鸡有”<<y<<”只,小鸡有”<<z<<”只.n”;return 1;实例15 英文字符的统计/*/ program15.cpp/*#include

11、“iostream.h”#iinclude “stdio.h”int main()int n=0;char c;for (;)c=getchar();if (c=n)break;if (c>=a && c<=z|c>A && c<=Z) n+;cout<<”总计输入了”<<n<<”个英文字符.n”;return 1;实例16 英文字符的统计/*/ program16.cpp/*#include “iostream.h”#iinclude “stdio.h”int main()int k,s,v,n;s=

12、0;n=0;do cout<<”请输入成绩: ”; cin>>k;if (k<0|k>100) cout<<”输入错误!重新输入: 07n “; continue;s+=k;n+; while(1);v=s/n;cout<<”共输入”<<n<<”人,平均成绩是”<<endl;return 1;实例17 最大值与最小值/*/ program17.cpp/*#include “iostream.h”int max(int,int);int min(int,int);int main()int k,kma

13、x,kmin;kmax=0;kmin=0;docout<<”请输入数据: “;cin>>k;if (9999=k)break;kmax=max(kmax,k);kmin=min(kmin,k);while(1);cout<<”最大值为”<<kmax<<endl;cout<<”最小值为”<<kmin<<endl;return 1;int max(int a,int b) return(a>b?a:b);int min(int a,int b) return(a<b?a:b);实例18 数的

14、阶乘/*/ program18.cpp/*#include “iostream.h”int fac(int);int main()int n;long int N;cout<<”请输入一个整数: “;cin>>n;N=fac(n);Cout<<N<<endl;Return 1;int fac(int n)long int s;if (n=1) return 1;s=n*fac(n-1);return s;实例19 菲波那契数列/*/ program19.cpp/*#include “iostream.h”int f(int);int main()

15、int n,s,I;cout<<”请输入月数: “;cin>>n;for (I=1;I<=n;I+)s=f(i);cout<<”第”<<I<<个月共有”<<s<<”对兔子”<<endl;return;int f(int n)int s;if (n=1|n=2) return 1;s=f(n-1)+f(n-2);return s;实例21 奇偶有别/*/ program21.cpp/*#include “iostream.h”int main()const int MAX=100;int aMA

16、X;int bMAX;int i,k,x,y;x=0;y=0;do cin>>k; if (k=9999) break; if (k%2=0) ax=k;x+;elseby=k;y+;while (1);for (i=0; i<x; i+)cout<<ai<<” “;cout<<”n”;for (i=0; i<x; i+)cout<<ai<<” “;return 1;实例23 矩阵转置/*/ program23.cpp/*#include “iostream.h”int main()int a34=1,2,3,

17、4,5,6,7,8,9,10,11,12;int b43;int i,j;for (i=0; i<3; i+) for (j=0;j<4;j+) cout<<aij<<” “;cout<<”n”;cout<<”n”;for (i=0; i<3; i+) for (j=0;j<4;j+) bj i=aij;for (i=0; i<4; i+)for (j=0;j<3;j+) cout <<”n”return 1;实例27 整数转换为字符串/*/ program27.cpp/*#include “ios

18、tream.h”#include “string.h”void itostr(char *,int);void reverse(char *);void itostr(char *str,int n)int sign;char *strcmp=str;if (0>(sign=n) n=-n;do *str+=n%10+0; while (n/=10)>0;if (sign<0) *str+=-;*str=n;reverse(strtmp);void resverse(char *str)char *t;int c;t=str+(strlen(str)-1;for (t;str

19、<t;str+,t)c=*str;str=t;*t=c; void main()int n;char str40;cout<<”输入数字:”;cin>>n;itostr(str,n);cout<<”转换为字符串: ”<<str<<endl;实例29 学生成绩统计/*/ program29.cpp/*#include “iostream.h”typedef struct studentchar name8;int chin;int eng;int math; STUD;void main()STUD a20;int i,j,ch,

20、en,ma;char f=Y;ch=0;en=0;ma=0;i=0;While (f=Y|f=y) cout<<”姓名:”; cin>>;cout<<”语文:”; cin>>si.chin;cout<<”英语:”; cin>>si.eng;cout<<”数学:”; cin>>si.math; cout<<”继续输入? (Y/N) “; cin>>f;i+;for (j=0;j<i;j+) ch=ch+sj.chin; ma=ma+sj.math; en=e

21、n+sj.eng;cout<<”语文平均成绩为”<<ch/i<<endl;cout<<”数学平均成绩为”<<ma/i<<endl;cout<<”英语平均成绩为”<<en/i<<endl;第三章实例34 温度转换类的封装/*/ program34.cpp/*#include “iostream.h”class temperapublic:float cels;float change() return (9*cels)/5+32;void main() tempera c;cout<

22、<”输入摄氏温度值: “;cin>>c.cels;cout<<”转化为华氏温度值为”<<c.change()<<” 度.n ”;p99 例子#include “iostream.h”class ADDpublic:static int sta;int num;void add() sta+;num+;cout<<”sta=”<<sta<<”n”;cout<<”num=”<<num<<”n”;int ADD:sta=0;void main()ADD p1,p2;p1.nu

23、m=0;p2.num=0;p1.add();p2.add();实例35 对象的生存周期/*/ program35.cpp/*#include "iostream.h"class cls_Apublic:cls_A() cout<<"类实例初始化。nn"cls_A()cout<<"类实例被撤销。n"void f()cout<<"调用成员函数。nn"void main()cls_A *p;cout<<"测试开始!nn"p=new cls_A;p->

24、;f();delete p;实例36 不同类型数据的比较/*/ program36.cpp/*#include "iostream.h"int comp(int a,int b) cout<<"int 类型数据比较。最大值为"return(a>b?a:b);float comp(float a,float b) cout<<"float 类型数据比较。最大值为"return(a>b?a:b);double comp(double a, double b) cout<<" dou

25、ble 类型数据比较。最大值为:"return(a>b?a:b);void main() int i1,i2; float f1,f2; double d1,d2;cin>>i1;cin>>i2;cout<<comp(i1,i2)<<endl;cin>>f1;cin>>f2;cout<<comp(f1,f2)<<endl;cin>>d1;cin>>d2;cout<<comp(d1,d2)<<endl;实例39 园与园柱()/*/ pro

26、gram39.cpp/*#include “iostream.h”class cyclprivate:float PI;public:float r;cycl() PI=float(3.14);r=0;const float area()return PI*r*r;class cylinder:public cyclpublic:float h;cylinder() r=0; h=0;float cubage()return area()*h;void main()cylinder cy;cout<<”输入园柱体半径 r:”;cin>>cy.r;cout<<

27、”输入园柱体高 h:”;cin>>cy.h;cout<<”园柱体底面积为: ”<<cy.area()<<”n”;cout<<”园柱体体积为: ”<<cy.cubage()<<”n”;实例40 园与园柱(2)/*/ program40.cpp/*#include "iostream.h"class cyclprivate:float PI;public:float r;cycl() PI=float(3.14); r=0;cycl(float R) PI=float(3.14); r=R;co

28、nst float area()return PI*r*r;const float girth() return 2*r*PI; ;class cylinder:public cyclpublic:float h;cylinder() h=0;cylinder(float R):cycl (R)cylinder(float R,float H):cycl(R)h=H;const float cubage()return cycl:area()*h;const float area()return girth()*h+(cycl:area()*2;void main()cylinder cy1,

29、cy2(5),cy3(5,10);cout<<"输入园柱体1的半径 r:"cin>>cy1.r;cout<<"输入园柱体1的高 h:"cin>>cy1.h;cout<<"园柱体1的表面积为: "<<cy1.area()<<"n"cout<<"园柱体1的体积为: "<<cy1.cubage()<<"nn"cout<<"输入园柱体2的高 h

30、:"cin>>cy2.h;cout<<"园柱体2的表面积为: "<<cy2.area()<<"n"cout<<"园柱体2的体积为: "<<cy2.cubage()<<"nn"cout<<"园柱体3的底面积为: "<<cy3.cycl:area()<<"n"cout<<"园柱体3的表面积为: "<<cy3.

31、area()<<"n"cout<<"园柱体3的体积为: "<<cy3.cubage()<<"nn"实例41 部门职员信息/*/ program41.cpp/*#include “iostream.h”class departmentpublic:int num;char design10;class employeepublic:int num;char name10;class empl_dept:public department,public employeepublic:void

32、 input()cout<<”依次输入职员编号、姓名、部门编号、部门名称:n”;cin>>employee:num;cin>>name;cin>>department:num;cin>>design;void print() cout<<”职员编号:”<<employee:num<<” 姓名:”<<name; cout<<” 部门编号:”<<department:num<<” 部门名称”<<design;void main()empl_de

33、pt z;z.input();z.print();第四章实例48 窗口输出文字与图形 (P152153)void CProgram48View:OnDraw(CDC *pDC)CProgram48Doc *pDoc=GetDocument( );ASSERT_VALID(pDoc);/TODO: add code for native data here/以下为新增的代码CRect r;GetClientRect(&r);int x=0, y=0;pDC->TextOut(x,y, “在窗口上画一个圆形”);x=r.right/2;y=r.bottom/2;pDC->Ell

34、ipse(x-100,y-100,x+100,y+100);实例49 应用程序的创建与撤销 (P162163)int CMainFrame:OnCreate(LPCREATESTRUCT lpCreateStruct)/添加下面这一行语句,显示对话框MessageBox(“准备建立应用程序”, “创建程序”,MB_OK|MB_ICONEXCLAMATION);If (CFrameWnd:OnCreate(lpCreateStruct)= -1) return 1;void CMainFrame:OnClose( )/TODO:Add your message handler code here

35、 and/or call defaultMessageBox(“准备销毁程序窗口”, “撤销窗口”,MB_OK|MB_ICONEXCLAMATION);CFrameWnd:OnClose( );实例50 键盘字符的输入与显示 (P164166)CProgram50Doc:CProgram50Doc( )/TODO: add one-time construction code hereText=”;void CProgram50View:OnChar(UNIT nChar,UINT nRepCnt, UINT nFlags)/TODO:Add your message handler code

36、 here and/or call defaultCProgram50Doc *pDoc=GetDocument( );ASSERT_VALID(pDoc);if (nChar=b) pDoc->Text.Delete(pDoc->Text.GetLength( )-1,1);else pDoc->Text+=nChar;Invalidate( );Cview:OnChar(nChar, nRepCnt,nFlags);void CProgram50View:OnDraw(CDC *pDC)CProgram50Doc *pDoc=GetDocument( );ASSERT_V

37、ALID(pDoc);/TODO: add draw code for native data hereCRect r;GetClientRect(&r);pDC->DrawText(pDoc->Text,r,DT_WORDBREAK|DT_CENTER);实例51 区域探测 (P168171)void CProgram51View:OnLButtonUp(UINT nFlags,CPoint point)/TODO: Add your message handler code here and/or call defaultCRect r;GetClientRect(&a

38、mp;r);char *s;if (point.x>r.right/2) if (point.y>r.bottom/2)s=”你现在位于第四区”;elses=”你现在位于第一区”;else if (point.y>r.bottom/2)s=”你现在位于第三区”;else s=”你现在位于第二区”;MessageBox(s,”位置提示”,MB_OK|MB_ICONEXCLAMATION);CView:OnLButtonUp(nFlags,point);void CProgram51View:OnDraw(CDC *pDC) CProgram51Doc *pDoc=GetDocu

39、ment( );ASSERT_VALID(pDoc);/TODO: add draw code for native data herepDC->TextOut(mPoint.x,mPoint.y,pDoc->Text);void CProgram51View:OnMouseMove(UINT nFlags,CPoint point)/TODO: Add your message handler code here and/or call defaultCProgram51Doc *pDoc=GetDocument( );ASSERT_VALID(pDoc);pDoc->Te

40、xt=IntToCStr(point.x)+”,”+IntToCStr(point.y);mPoint.x=point.x+20;mPoint.y=point.y;Invalidate( );CView:OnMouseMove(nFlags,point);Cstring CProgram51View:IntToCStr(int Num)int i;CString strnum=”;char c;while (Num>0)i=Num%10;c=0;c=c+i;strnum+=(char)c;Num=Num/10;strnum.MakeReverse( );return strnum;实例5

41、2 滚动字幕 (P172173)CProgram52View:CProgram52View()/TO: add construction code herems=0;x=0;CProgram52View:OnCreate(LPCREATESTRUCT lpCreateStruct)if (CView:OnCreate(lpCreateStruct)=-1)/TODO: Add your specialized creation code hereSetTimer(1,10,NULL);return 0;void CProgram52View:OnTimer(UNIT nIDEvent)/TOD

42、O: Add your message handler code and/or call default/InvalidateRect(NULL,ture);/UpdateWindow();ms+=10;x=x+1;Invalidate();CView:OnTimer(10);void CProgram52View:OnDraw(CDC *pDC)/TODO: add draw code for native data hereCRect r;GetClientRect(&r);CString s;s.Format(“字幕已运行%d毫秒”,ms);if (x>r.right-r.

43、left)x=0;pDC->TextOut(x,r.bottom/2,”Visual C+ 6.0 “);pDC->TextOut(x,r.bottom/2+20,s);实例53园的移动轨迹 (P175179)void CProgram53View:OnDraw(CDC *pDC)CProgram53Doc*pDoc=GetDocument();ASSERT VALID(pDoc);/TODO: add draw code for native data hereDrawEps();void CPprogram53View:OnInitialUpdate()CScrollView:

44、OnInitialUpdate();CSize sizeTotal;/TODO: calculate the total size of this viewsizeTotal.cx=1000;sizeTotal.cy=800;SetScrollSizes(MM_TEXT,sizeTotal);void CProgram53View:DrawEps()CDC *pDC=GetDC();CRect r;GetClientRect(&r);int x=0,y=0;x=r.right/2;y=r.bottom/2;pDC->Ellipse(x-50,y-50,x+50,y+50);voi

45、d CProgram53View:OnHScroll(UNIT nSBCode,UNIT nPos,CScrollBar *pScrollBar)/TODO: Add your message handler code here and/or call defaultDrawEps();CScrollView:OnHScroll(nSBCode,nPos,pScrollBar);void CProgram53View:OnVScroll(UNIT nSBCode,UNIT nPos,CScrollBar *pScrollBar)/TODO: Add your message handler c

46、ode here and/or call defaultDrawEps();CScrollView:OnVScroll(nSBCode,nPos,pScrollBar);void CProgram53View:OnKeyDown(UNIT nChar, UINT nRepCnt,UINT nFlags)/TODO: Add your message handler code and/or call defaultswitch(nChar)case VK_NUMPAD7:OnVScroll(SB_LINEUP,0,NULL);OnHScroll(SB_LINELEFT,0,NULL);break

47、;case VK_NUMPAD1:OnVScroll(SB_LINEDOWN,0,NULL);OnHScroll(SB_LINELEFT,0,NULL);break;case VK_NUMPAD8:OnVScroll(SB_LINEUP,0,NULL);break;case VK_NUMPAD2:OnVScroll(SB_LINEDOWN,0,NULL);break;case VK_NUMPAD6:OnHScroll(SB_LINERIGHT,0,NULL);break;case VK_NUMPAD4:OnHScroll(SB_LINELEFT,0,NULL);break;case VK_NU

48、MPAD9:OnVScroll(SB_LINEUP,0,NULL);OnHScroll(SB_LINERIGHT,0,NULL);break;case VK_NUMPAD3:OnVScroll(SB_LINEDOWN,0,NULL);OnHScroll(SB_LINERIGHT,0,NULL);break;case VK_NUMPAD5:Invalidate();break;CScrollView:OnKeyDown(nChar,nRepCnt,nFlags);实例54 应用程序的生存周期 (P180182)int CMainFrame:OnCreate(LPCREATESTRUCT lpCreateStruct)MessageBox(“收到WM_CREATE消息! “,”提示信息”,MB_OK);If (CFrameWnd:OnCreate(lpCreateStruct)=-1)return 1;void CMainFrame:OnClose()/TODO:Add your message handler code here and/or call defaultMessageBox(“收到WM_CLOSE消息! “,”

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论