在学习C基础总结了笔记,并分享出来。有问题请及时联系博主:Alliswell_WP,转载请注明出处。
01-C基础第15天(快 yi通)
练习:查找单词记录单词翻译
程序分析
一、读取文件中的单词
1、打开文件判断文件可用性
2、创建构体struct dict {char * word,char* trans}结构体需要开辟堆空间
3、读取文件内容开辟堆空间,存放在堆空间中文件行数/2=获取单词个数两行算作一个单词
4、关闭文件
二、查找单词
1、通过键盘获取单词
2、通过循环查找单词记录单词翻译
3、退出死循环
三、释放堆空间
1、释放单词和翻译
2、释放结构体堆空间
索引:struct index{ char flag,int start,int end}flag=a 36
for(int i=index.start;i<index.end;i++)
{
}
dict.c代码如下:
1 #define _CRT_SECURE_NO_WARNINGS 2 #include "dict.h" 3 4 5 6 ////全局变量 7 //dic * p; 8 9 //1、打开文件 存储数据 10 void ReadFile(dic ** p) 11 { 12 //开辟堆空间 13 //*p = (dic*)malloc(sizeof(dic)*WORDMAX);// realloc() 链表 14 *p = (dic*)malloc(sizeof(dic)* WORDMAX); 15 16 //读取文件内容 17 FILE * fp = fopen("D:\dict.txt", "r"); 18 if (!fp) 19 return -1; 20 int i = 0; 21 char buf[1024]; 22 while (!feof(fp)) 23 { 24 memset(buf, 0, 1024); 25 fgets(buf, 1024, fp); 26 27 //格式化操作 28 //buf[strlen(buf) - 1] = ' '; 29 for (int i = strlen(buf); i > 0; i--) 30 { 31 if (buf[i] == ' ') 32 { 33 buf[i] = '