西电c语言课程设计报告Word文档格式.docx

上传人:b****2 文档编号:2949184 上传时间:2023-05-01 格式:DOCX 页数:14 大小:62.44KB
下载 相关 举报
西电c语言课程设计报告Word文档格式.docx_第1页
第1页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第2页
第2页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第3页
第3页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第4页
第4页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第5页
第5页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第6页
第6页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第7页
第7页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第8页
第8页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第9页
第9页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第10页
第10页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第11页
第11页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第12页
第12页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第13页
第13页 / 共14页
西电c语言课程设计报告Word文档格式.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

西电c语言课程设计报告Word文档格式.docx

《西电c语言课程设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《西电c语言课程设计报告Word文档格式.docx(14页珍藏版)》请在冰点文库上搜索。

西电c语言课程设计报告Word文档格式.docx

菜单设计、加密解密主程序、密码修改功能、最终调试。

2初步设计

将每个分块下发给组员,组员进行粗略的程序编译,再根据各分块难度不同增减任务量。

3编写代码

组员将各自代码编译完成,并确保独立运行成功。

4程序整合、调试

将各分块整合,编译运行,尝试输入多组数据,测试结果是否与预期相同。

如果不同,那么查找问题并修改代码。

最终形成合格的程序。

3.功能模块图

3.数据结构设计

没开数据结构课不会写。

现学现写也来不及了〒_〒

4.算法设计

同4。

6.程序代码

#include<

stdio.h>

string.h>

conio.h>

stdlib.h>

//清屏函数的头文件

voidf1(void);

//主界面函数

voidrode(int);

//返回菜单函数

intsystem(constchar*string);

//清屏函数声明

voidf2(void);

//声明f2

voidf3(void);

voidf4(void);

//开始时得解开密码函数

intmima=123456,n;

//全局变量

voidmain()

{

inta,i,b;

a=mima;

b=3;

printf("

此程序设置了初始密码!

请输入6位数字密码:

\n"

);

for(i=0;

i<

3;

i++)//三次输入密码机会

{

scanf("

%d"

&

n);

if(a==n)//密码输入正确

进入\n"

system("

cls"

//清屏函数

f1();

//调用f1函数

}

else//密码输入错误

if(b-1==0)

exit(0);

//退出

密码好像不太对哦,就剩下%d次机会了!

b-1);

b=b-1;

}

voidf1()//主界面函数

chars;

//定义S,即操作选项

******************************文本加密软件**************************\n"

*************************************************\n"

**作者**\n"

**肖峰**\n"

**许云松**\n"

**黄辉**\n"

**平措朗杰**\n"

*请从下面的菜单中选择你要进行的操作*\n"

*a.文件加密*\n"

*b.文件解密*\n"

*c.更改密码*\n"

*z.退出系统*\n"

s=getche();

if(s=='

a'

system("

//清屏

f2();

//调用函数f2

b'

f3();

//调用函数f3

c'

f4();

//调用函数f4

z'

//退出系统

voidrode(intk)//返回菜单函数

charc;

//定义c,即操作选项

接下来你希望干什么啊\n"

a.继续当前菜单\nb.回到主菜单\n"

c=getch();

if(c=='

f1();

{

if(k==2)

f2();

if(k==3)

f3();

if(k==4)

f4();

}

voidf2()

FILE*fp1,*fp2;

charf1[20],f2[20],p[6];

registercharch;

inti=0,j;

输入加密文件:

"

%s"

f1);

if((fp1=fopen(f1,"

r"

))==NULL)

printf("

\n文件无法打开!

请返回"

rode

(2);

else

\n输入密钥:

p);

j=strlen(p);

\n输入加密后的文件:

f2);

if((fp2=fopen(f2,"

w"

while(j>

=0)

ch=fgetc(fp1);

while(!

feof(fp1))

fputc(ch^p[i>

=j?

i=0:

i++],fp2);

ch=fgetc(fp1);

j--;

加密成功!

fclose(fp1);

fclose(fp2);

rode

(2);

voidf3()

输入解密文件:

rode(3);

}

\n输入解密后的文件:

while(j>

解密成功!

rode(3);

voidf4()

intpas,ch,h=3,t,j;

重置密码前必须验证原密码。

请输入6位数字原密码:

for(j=0;

j<

j++)//三次输入密码机会

scanf("

t);

if(mima==t)//密码输入正确

while

(1)

{

while

(1)

{

printf("

请输入新密码:

scanf("

pas);

if(pas>

99999&

&

pas<

1000000)//密码为六位数

break;

else//密码非六位数

{

printf("

输入格式不正确,请输入六位数字\n"

continue;

}

}

printf("

请再次输入新密码:

scanf("

ch);

if(pas==ch)//两次新密码输入一致

break;

//跳出循环

else//两次新密码输入不一致

两次新密码输入不一致\n"

continue;

}

printf("

恭喜你,密码修改成功\n"

mima=pas;

//修改全局变量密码

rode(4);

//调用rode函数

else//密码输入错误

if(h-1==0)

exit(0);

抱歉,密码错误,您还有%d次机会:

h-1);

h=h-1;

7.程序运行结果

挺成功的,完全符合标准

8.编程中遇到的困难及解决方法

按时间顺序来说吧。

1思考不周全,比如忘记必须是六位密码,忘记设置变量等。

2整合的困难,因为组员各自负责自己的分块,单独运行成功,但放到整个函数中会碰到变量形式、名称不统一,没有考虑与主函数的衔接等,方法就是一点点改…

3细节不注意,导致修改特别困难,比如字符输入选择了getchar而不是gerche,因为对getchar理解不够,直到昨天晚上才找到了问题。

还有套用函数调用时,没有将调用语句放到整个函数最后,导致运行调用函数后,这个函数后边的语句也运行了,诸如此类,数不胜数。

9.总结心得及建议

通过这个简单的程序,我们认识到了自己所学浅薄,基础很差,加上没有经验,搞得一团糟,从这个程序身上,我们体会到了细心的重要,体会到了修改程序的枯燥,走出了编程的第一步。

建议么,人傻还是要多读书啊,多学学知识才能在广大程序员中占位脚跟!

10.组内成员分工和贡献评价

分工:

黄辉:

提出大体思路,设计主菜单,参与程序修改。

许云松:

编写密码修改程序,参与程序修改,写总结报告。

肖峰:

编写加密解密程,参与程序修改。

平措朗杰:

编写次菜单程序。

贡献评价(百分比):

32%

30%

8%

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2