# 2017-2018-1 20155224 《信息安全系系統設計基礎》第四周MyOD
阿新 • • 發佈:2017-12-07
scanf xxx .com 命令行 .cn 令行 oid 模塊 子程序
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