版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
参考文献参考文献[1]张长海.C语言程序设计[M].北京:高等教育出版社,2006[2]吴启武.C语言课程设计案例精编.北京:清华大学出版社,2011.[3]郭翠英.C语言课程设计案例精编.北京:中国水利水电出版社,2004.[4]姜灵芝,余键.C语言课程设计案例精编.北京:清华大学出版社,2008.[5]黄明,梁旭,万洪莉.C语言课程设计.北京:电子工业出版社,2006 沈阳航空航天大学课程设计报告附录附录(程序清单)#include<stdio.h>#include<string.h>#include<stdlib.h>#include<math.h>#defineMAX8#defineN100voidEtoT(chara[]);voidStoTen(chara[]);voidshowbit(intn);voidhs(chars[MAX]);voidTwotoS(chara[]);voidTo_sixteen(intn);voidTwotoE(chara[]);voidTo_eight(intn);voidEtoT(chara[]){ charch; intl,s,num=0; doublen; l=strlen(a)-1; s=l; for(;l>=0;l--) { ch=a[l]; n=pow(8,s-l); if(ch>='0'&&ch<='7') num+=(ch-'0')*n; } printf("%d\n",num);}voidStoTen(chara[]){ charch; intl,s,num=0; doublen; l=strlen(a)-1; s=l; for(;l>=0;l--) { ch=a[l]; n=pow(16,s-l); if(ch>='0'&&ch<='9') num+=(ch-'0')*n; elseif(ch>='a'&&ch<='f') num+=(ch-'a'+10)*n; elseif(ch>='A'&&ch<='F') num+=(ch-'A'+10)*n; } printf("%d\n",num);}voidshowbit(intn){ if(n>1) { showbit(n/2); printf(""); } printf("%d",n%2);}voidhs(chars[MAX]){charx=0; intl,p=1;for(i=strlen(s);i>0;i--) { x=x+(s[i-1]-'0')*p; p*=2; }printf("得到的十进制数是:%d\n",x); }voidTwotoE(chara[]){ charch; intl,s,num=0; doublen; l=strlen(a)-1; s=l; for(;l>=0;l--) { ch=a[l]; n=pow(2,s-l); num+=(ch-'0')*n; } To_eight(num); printf("\n");}voidTo_eight(intn){ chara[]={'0','1','2','3','4','5','6','7'};if(n>7)To_eight(n/8);printf("%c",a[n%8]);}voidTwotoS(chara[]){ charch; intl,s,num=0; doublen; l=strlen(a)-1; s=l; for(;l>=0;l--) { ch=a[l]; n=pow(2,s-l); num+=(ch-'0')*n; } To_sixteen(num); printf("\n");}voidTo_sixteen(intn){ chara[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};if(n>15)To_sixteen(n/16);printf("%c",a[n%16]);}voidmain(){ intc,g;chara[N],b[N],e[N],f[N],d[N]; for(;;) { printf("将八进制转换为十进制输入1\n将十六进制转化为十进制输入2\n将十进制转化为二进制输入3\n将二进制转化为十进制输入4\n将二进制转化为八进制输入5\n将二进制转化为十六进制输入6\n退出系统输入其他数\n"); scanf("%d",&g); if(g>0&&g<7) { switch(g) { case1:printf("请输入一个八进制数:"); scanf("%s",a); EtoT(a); break; case2:printf("请输入一个十六进制数:"); scanf("%s",b); StoTen(b);//十六进制转换为十进制 break; case3:printf("请输入一个十进制数:"); scanf("%d",&c); showbit(c); printf("\n"); break; case4: printf("请输入一个二进制数:"); scanf("%s",d); hs(d); break; case5:printf("请输入一个二进制数:"); scanf("%s",e); TwotoE(d); break; case6: printf("请输入一个二进制数:"); scanf("%s",f); TwotoS(f);//二进制转换为十六进制 } } else{ printf("\n"); printf("*退出*\n"); printf("\n"); break;} printf("\n\n"); }}沈阳航空航天大学课程设计报告
课程设计总结:此次课程设计中,我了解到了许多以前不太会的知识,也在对程序的不断的调试中认识到调试时的细心是很重要的,这些都让我受益匪浅。譬如,结构体的scanf语句中的“%d%s%d”之间应该有空格,即改为“%d%s%d”,否则结构体中的信息容易被覆盖,无法全部读入;在这次课程设计中,我还学会了switchcase语句以及函数的调用,这些都是我在以前的学习中不熟练的,让我在这次课程设计中学习新知识的同时也感受到很多快乐,对C语言及以后要学习的一些专业课程也产生了浓厚的兴趣,同时我也意识到有很多知识是我不了解的,我还需要更努力的学习,来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论