




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
01#include /sy0801.cpp 建立学生通讯录#include #include #define N 4struct address_listchar num10;char name20;int phone_code;char address20;void main()void Print(address_list stud);void Input(address_list stud);address_list studN;Input(stud);Print(stud);void Input(address_list stud)/函数头的定义int i;for(i=0;iN;i+)cout请输入第i+1studi.num;/注意结构体数组成员的访问方法cout请输入第i+1;cout请输入第i+1studi.phone_code;cout请输入第i+1studi.address;void Print(address_list stud)int i;coutsetw(2)学号setw(10)姓名setw(10)电话号码setw(10)家庭住址endl;for(i=0;iN;i+)coutsetw(2)studi.numsetw(10)setw(10) studi.phone_codesetw(10)studi.addressendl;/*请输入第1个学生的学号1请输入第1个学生的姓名aaaa请输入第1个学生的电话号码1111请输入第1个学生的家庭住址aaaaaaaa请输入第2个学生的学号2请输入第2个学生的姓名bbbb请输入第2个学生的电话号码2222请输入第2个学生的家庭住址bbbbbbbb请输入第3个学生的学号3请输入第3个学生的姓名cccc请输入第3个学生的电话号码33333请输入第3个学生的家庭住址dddd请输入第4个学生的学号4请输入第4个学生的姓名dddd请输入第4个学生的电话号码4444444请输入第4个学生的家庭住址gggggg学号 姓名 电话号码 家庭住址 1 aaaa 1111 aaaaaaaa 2 bbbb 2222 bbbbbbbb 3 cccc 33333 dddd 4 dddd 4444444 gggggg*/格式要根据实际数据进行调整02#include /sy0802.cpp 复数的加减法 用传值调用struct complexdouble real;double imag; ;void main()void Print(complex x);complex Input();complex add(complex x,complex y);complex sub(complex x,complex y);/以上两个函数均用传值调用complex x,y,z,w;cout请输入第1个复数:endl;x=Input();cout请输入第2个复数:endl;y=Input();cout第1个复数为:;Print(x);cout第2个复数为:;Print(y);z=add(x, y);cout相加后的复数为:;Print(z);cout相减后的复数为:;w=sub(x, y);Print(w);complex Input()complex x;coutx.real;coutx.imag;return x;void Print(complex x)cout0) cout+;coutx.imagiendl;complex add(complex x,complex y)complex z;z.real=x.real+y.real;z.imag=x.imag+y.imag;return z;complex sub(complex x,complex y)complex z;z.real=x.real-y.real;z.imag=x.imag-y.imag;return z;/*请输入第1个复数:请输入该复数的实部:2请输入该复数的虚部:3请输入第2个复数:请输入该复数的实部:4请输入该复数的虚部:5第1个复数为:2+3i第2个复数为:4+5i相加后的复数为:6+8i相减后的复数为:-2-2i*/0201#include /sy0802_1.cpp 复数的加减法 用引用调用struct complexdouble real;double imag; ;void main()void Print(complex x);complex Input();void add(complex& x,complex& y,complex& z);void sub(complex& x,complex& y,complex& z);/以上两个函数用引用调用complex x,y,z;cout请输入第1个复数:endl;x=Input();cout请输入第2个复数:endl;y=Input();cout第1个复数为:;Print(x);cout第2个复数为:;Print(y);add(x, y, z);cout相加后的复数为:;Print(z);cout相减后的复数为:;sub(x, y, z);Print(z);complex Input()complex x;coutx.real;coutx.imag;return x;void Print(complex x)cout0) cout+;coutx.imagiendl;void add(complex& x,complex& y,complex& z)/注意这儿与sy0802.cpp的不同z.real=x.real+y.real;z.imag=x.imag+y.imag;void sub(complex& x,complex& y,complex& z)z.real=x.real-y.real;z.imag=x.imag-y.imag;/*请输入第1个复数:请输入该复数的实部:2请输入该复数的虚部:3请输入第2个复数:请输入该复数的实部:4请输入该复数的虚部:5第1个复数为:2+3i第2个复数为:4+5i相加后的复数为:6+8i相减后的复数为:-2-2i*/0202#include /sy0802_2.cpp 复数的加减法 实现方法与sy0802.cpp不同 #include struct complexdouble real;double imag; ;void main()void Print(complex& x); /注意要用引用调用void Input(complex& x);complex add(complex x,complex y);complex sub(complex x,complex y);complex x,y,z;cout请输入第1个复数:endl;Input(x);cout请输入第2个复数:endl;Input(y);cout第1个复数为:;Print(x);cout第2个复数为:;Print(y);z=add(x, y);cout相加后的复数为:;Print(z);z=sub(x, y);cout相减后的复数为:;Print(z);void Input(complex& x)coutx.real;coutx.imag;void Print(complex& x)cout0) cout+;coutx.imagiendl;complex add(complex x,complex y)complex z;z.real=x.real+y.real;z.imag=x.imag+y.imag;return z;complex sub(complex x,complex y)complex z;z.real=x.real-y.real;z.imag=x.imag-y.imag;return z;/*请输入第1个复数:请输入复数的实部:2请输入复数的虚部:3请输入第2个复数:请输入复数的实部:4请输入复数的虚部:5第1个复数为:2+3i第2个复数为:4+5i相加后的复数为:6+8i相减后的复数为:-2-2i*/03#include /sy0803.cpp 求两坐标间的距离#include struct coordinatedouble x;double y; double z;void main()void Print(coordinate x);coordinate Input();double distance(coordinate x,coordinate y);coordinate a,b;double dist;cout请输入第1个点的坐标:endl;a=Input();cout请输入第2个点的坐标:endl;b=Input();dist=distance(a, b);cout第1个点的坐标:;Print(a);cout第2个点的坐标:;Print(b);cout这两点的距离为:distendl;coordinate Input()coordinate a;couta.x;couta.y;couta.z;return a;void Print(coordinate a)cout(a.x,a.y,a.z)endl;double distance(coordinate a,coordinate b)double dist;dist=sqrt(a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)+(a.z-b.z)*(a.z-b.z);return dist;/*请输入第1个点的坐标:请输入该坐标的x点:3请输入该坐标的y点:5请输入该坐标的z点:7请输入第2个点的坐标:请输入该坐标的x点:6请输入该坐标的y点:7请输入该坐标的z点:8第1个点的坐标:(3,5,7)第2个点的坐标:(6,7,8)这两点的距离为:3.74166*/04#include /sy0804.cpp 学生成绩处理#include #include #define N 4struct studentchar num10;char name20;int sc3;int aver;void main()void Input(student studs,int n);void Output(student studs,int n);void Average(student studs,int n);void Sort(struct student studs,int n);student studs=0101,Jean,0,0,0,0,0102,David,0,0,0,0,0103,Ruth,0,0,0,0,0104,Mary,0,0,0,0;Input(studs,N);Average(studs,N);Sort(studs,N);Output(studs,N);void Input(student studs,int n)int i,j;for(i=0;in;i+)cout请输入第i+1个学生的三门成绩:;for(j=0;jstudsi.scj;void Output(student studs,int n)/注意函数定义的方法int i,j;coutsetw(10)学号setw(10)姓名setw(10)C+;coutsetw(10)英语setw(10)数学setw(10)平均成绩endl;for(i=0;in;i+)coutsetw(10)studsi.numsetw(10);setw(10);for(j=0;j3;j+)coutstudsi.scjsetw(10);coutstudsi.averendl;void Average(student studs,int n)int i,j,sum;for(i=0;in;i+) sum=0;for(j=0;j3;j+)sum+=studsi.scj;studsi.aver=sum/3;void Sort(struct student studs,int n)int i,j,k,t;char num110,name120;for(i=0;in-1;i+)k=i;for(j=i+1;jn;j+)if(studsk.averstudsj.aver) k=j;if(k!=i)/分别进行交换结构体中的成员strcpy(num1,studsi.num);strcpy(studsi.num,studsk.num);strcpy(studsk.num,num1);strcpy(name1,);strcpy(,);strcpy(,name1);for(int m=0;m3;m+)t=studsi.scm; studsi.scm=studsk.scm; studsk.scm=t;t=studsi.aver; studsi.aver=studsk.aver; studsk.aver=t;/*请输入第1个学生的三门成绩:78 80 90请输入第2个学生的三门成绩:90 65 77请输入第3个学生的三门成绩:92 97 88请输入第4个学生的三门成绩:50 69 82 学号 姓名 C+ 英语 数学 平均成绩 0103 Ruth 92 97 88 92 0101 Jean 78 80 90 82 0102 David 90 65 77 77 0104 Mary 50 69 82 67*/0401#include /sy0804_1.cpp 学生成绩处理#include #include #define N 4struct studentchar num10;char name20;int sc3;int aver;void main()void Input(student studs,int n);void Output(student studs,int n);void Average(student studs,int n);void Sort(struct student studs,int n);student studs=0101,Jean,0,0,0,0,0102,David,0,0,0,0,0103,Ruth,0,0,0,0,0104,Mary,0,0,0,0;Input(studs,N);Average(studs,N);Sort(studs,N);Output(studs,N);void Input(student studs,int n)int i,j;for(i=0;in;i+)cout请输入第i+1个学生的三门成绩:;for(j=0;jstudsi.scj;void Output(student studs,int n)int i,j;coutsetw(10)学号setw(10)姓名setw(10)C+;coutsetw(10)英语setw(10)数学setw(10)平均成绩endl;for(i=0;in;i+)coutsetw(10)studsi.numsetw(10);setw(10);for(j=0;j3;j+)coutstudsi.scjsetw(10);coutstudsi.averendl;void Average(student studs,int n)int i,j,sum;for(i=0;in;i+) sum=0;for(j=0;j3;j+)sum+=studsi.scj;studsi.aver=sum/3;void Sort(struct student studs,int n)int i,j,k;student t;for(i=0;in-1;i+)k=i;for(j=i+1;jn;j+)if(studsk.averstudsj.aver) k=j;if(k!=i)t=studsi; studsi=studsk; studsk=t;/整体结构体元素交换/*请输入第1个学生的三门成绩:78 80 90请输入第2个学生的三门成绩:90 65 77请输入第3个学生的三门成绩:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 摩托部件基础知识培训课件
- 2025年河南省商丘市考研专业综合预测试题含答案
- 2024下半年漳州市漳浦县事业单位招聘考试《综合基础知识》试题(附答案)
- 摄影鉴赏课件
- 微波技术基础试题及答案
- 摄像头设置课件
- 2025合作伙伴:委托繁育品种合同大全
- 2025劳动合同终止协议范本下载
- 揭阳局面试题及答案解析:揭阳局招聘面试题库全攻略
- 2025餐饮服务合作协议书合同范本
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案
- 电力交易员试题及答案
- 膀胱冲洗临床指南
- DZ∕T 0270-2014 地下水监测井建设规范
- 助产士咨询门诊课件
- 唐恬人世间的孤勇者与追光者
- 数学基础模块上册课件
- 垂体瘤精品课件
- 《抽样技术》课件(完整版)
- 工程力学ppt课件(完整版)
- 锂离子电池正极材料 课件
评论
0/150
提交评论