# 2017-2018-1 20155224 《信息安全系系统设计基础》第四周MyOD
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了# 2017-2018-1 20155224 《信息安全系系统设计基础》第四周MyOD相关的知识,希望对你有一定的参考价值。
2017-2018-1 20155224 《信息安全系系统设计基础》第四周MyOD
在这里跟老师先道歉,当时我的git没有安装好,后面也一直没有装上,所以程序没有git。
要求
参考教材第十章内容
用Linux IO相关系统调用编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能,注意XXX是文件名,通过命令行传入,不要让用户输入文件名
不要把代码都写入main函数中
要分模块,不要把代码都写入一个.c中
提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息
课上上传代码到码云
代码实现
MyOD.c
#include "head.h"
#include<stdio.h>
#include<stdlib.h>
void main()
{
char filename[50];
printf("input filename: ");
scanf("%s",filename);
ascii(filename);
Hexa(filename);
}
ascii.c
#include "head.h"
#include<stdio.h>
#include<stdlib.h>
void ascii(char *filename)
{
FILE *fp;
char ch;
fp=fopen(filename,"r");
ch=fgetc(fp);
printf("ascii: \\n");
while(ch != EOF)
{
if(ch==‘\\n‘)
{
printf("\\n");
}
else
{
printf("%d, ",ch);
}
ch=fgetc(fp);
}
}
Hexa.c
#include "head.h"
#include<stdio.h>
#include<stdlib.h>
void Hexa(char *filename)
{
FILE *fp;
char ch;
printf("Hexadecimal numbers: \\n");
fp=fopen(filename,"r");
ch=fgetc(fp);
while(ch != EOF)
{
if(ch==‘\\n‘)
{
printf("\\n");
}
else
{
printf("%x, ",ch);
}
ch=fgetc(fp);
}
fclose(fp);
}
结果截图
实验分析
本次编写的MyOD程序功能为:输入txt文件名,将文件内容转换为ascii码值与十六进制分别输出,在这里我是在主程序中调用两个子程序完成了打印。
以上是关于# 2017-2018-1 20155224 《信息安全系系统设计基础》第四周MyOD的主要内容,如果未能解决你的问题,请参考以下文章
# 2017-2018-1 20155224 《信息安全系统设计基础》第十四周学习总结
# 2017-2018-1 20155224 《信息安全系系统设计基础》第四周MyOD
# 2017-2018-1 20155224 《信息安全系统设计基础》第十一周学习总结
2017-2018-2 20155224『网络对抗技术』Exp7:网络欺诈防范