C语言顺序表简单问题
发布网友
发布时间:2022-05-17 11:20
我来回答
共4个回答
热心网友
时间:2022-06-12 22:51
/*
A线性表为: 顺序表练习程序(C)
B线性表为: 该字符串将写入.txt文件
Press any key to continue
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef char DataType; // 定义数据数据类型
typedef struct {
DataType *data; // data指向数据区的首个数据
int length; // 数据长度
}SqList;
SqList *CreateList(DataType *s) {
SqList *L;
int len = strlen(s);
L = (SqList *)malloc(sizeof(SqList));
L->data = (DataType *)malloc(len + 1);
strcpy(L->data,s);
L->length = len;
return L;
}
void PrintList(SqList *L) {
printf("%s\n",L->data);
}
void WriteFile(SqList *L,FILE *fw) {
fprintf(fw,"%d %s\n",L->length,L->data);
}
void FreeList(SqList *L) {
free(L->data);
free(L);
}
int main() {
DataType *arra = "顺序表练习程序(C)";
DataType *arrb = "该字符串将写入.txt文件";
FILE *fw = fopen("F:\\VC\\顺序表数据.txt","wt");
if(fw == NULL) {
printf("不能打开数据文件<F:\\VC\\顺序表数据.txt>\n");
return 1;
}
SqList *A = CreateList(arra);
printf("A线性表为: ");
PrintList(A);
SqList *B = CreateList(arrb);
printf("B线性表为: ");
PrintList(B);
WriteFile(A,fw);
WriteFile(B,fw);
fclose(fw);
FreeList(A);
FreeList(B);
return 0;
}
热心网友
时间:2022-06-12 22:51
char str[128] //定义一个字符串数组
scanf(%s,str); //得到输入的字符串,用户输入
FILE *fp; //定义一个文件指针
fp = fopen("你想要输出的TXT文件的路径","w+");
write(fp,str,sizeof(str));
热心网友
时间:2022-06-12 22:52
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
char* pArr[100] = {0};//n < 100
int n = 0;
int i = 0;
while (true)
{
char *p = (char *) malloc(100); //每个字符串长度<100
n = scanf("%s", p);
if (n != 1)//产生EOF时,推出循环:windows下按ctrl+z
break;
pArr[i] = p;
i++;
}
FILE * fp;
fp = fopen("test.txt","w+");//输出到text.txt中
if(fp == NULL)
return -1;
//打印字符串到文件中
for (int index = 0; index < 100; ++index)
{
if (pArr[index] != NULL)
{
fputs(pArr[index], fp);
fputs("\r\n", fp);//windows下txt文件的换行
//printf("%s\n", pArr[index]);
}
}
fclose(fp);
fp = NULL;
//释放申请的内存
for (int index = 0; index < 100; ++index)
{
if (pArr[index] != NULL)
{
free(pArr[index]);
pArr[index] = NULL;
}
}
return 0;
}
热心网友
时间:2022-06-12 22:52
char str[128] //先定义一个字符串,大小随便,也可以是二维的
scanf(%s,str);//得到输入的字符串
FILE *fp; //定义一个文件指针
fp = fopen("你想要输出的TXT文件的路径","w+");
write(fp,str,sizeof(str));
这样就可以了