C语言课程设计报告(ZD).docVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言课程设计报告 一、实践的目的和要求 加深对《C语言》课程所学知识的理解,进一步巩固C语言语法规则。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备解决综合性实际问题的能力。 二、实践内容 在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用,包括时间函数、绘图函数,以及文件的读写操作等。 三、实践任务 1.欢迎画面 2.学生成绩管理系统(自己设计界面) 3.异或加密与解密 (1)文件加密 (2)文件解密 说明:将某一已知文件的内容以字符形式读出,与密钥(用户从键盘输入)的对应字符进行异或操作即可,解密同样如此。 如:设原文为ab1234,密钥为56,则有 ab1234 565656 按二进制进行异或操作即可得到密文(乱码)。 4.移位加密与解密 (1)文件加密 (2)文件解密 说明:将某一已知文件的内容(限于英文字母)以字符形式读出,根据密钥k(用户从键盘输入)将对应字符进行移位操作即可,解密时移动方向相反。 如:设原文为abcdef,密钥为5,则有 abcdef 每个字母按字母表向后移动位(注:z后接a) fghijkl 可得到密文(乱码)。 5.辅助运算 (1)整数N模m的乘法逆t 要求:输入整数N和m,求出t,若t不存在,给出信息。 提示:这三个数满足:N*t%m=1,使用穷举法。 例如:当N为11,m为26时,由于(11×19)%26=1,所以11模26的乘法逆为19。 (2)统计字母个数 要求:输入一段英文字母,统计各个字母的个数,并按个数从大到小排序输出。 提示:字母大小写等价。输出格式为:字母:个数。 (3)OTP加密 要求:输入同等长度的原文x和密钥k(英文字母),根据公式 c=(x+k) %26 得到密文,并输出。 提示:将26个字母按0~25编号,将原文字母和对应位置的密钥字母的编号按上述公式进行计算后得到一个新的字母。 四、设计流程图 流程图另附! 五、相关程序 1 欢迎画面 #includestdlib.h #includegraphics.h struct Snow { int x; int y; int speed; }snow[100]; int snownum=0; int size; int change=10; void *save1,*save2; void Copy(); void DrawSnow(); void Pr(); void main(void) {int gd=DETECT,gm; initgraph(gd,gm,c:\\turboc2); Copy(); DrawSnow(); getch(); closegraph(); } void Copy() { setcolor(0); setfillstyle(SOLID_FILL,15); fillellipse(200,200,4,4); size=imagesize(196,196,204,204); save1=malloc(size); save2=malloc(size); getimage(196,196,204,204,save1); getimage(96,96,104,104,save2); } void Pr() { int s[15]={0,100,150,200,150,200,250,150,250,300,250,150,100,250,350}; setcolor(change/10); settextstyle(0,0,4); outtextxy(150,200,Welcome!!!); sound(s[change/10]); } void DrawSnow() {int i; int sx[62]; randomize(); for(i=0;i62;i++) sx[i]=(i+2)*10; cleardevice(); while(!kbhit()) { Pr(); if(snownum!=100) { snow[snownum].speed=2+random(5); i=random(62); snow[snownum].x=sx[i]; snow[snownum].y=10-random(100); } for(i=0;isnownum;i++) put

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档