如何用C语言创建和删除文件

如何用C语言创建和删除文件,第1张

一、创建文件

在C语言中创建文件,使用fopen函数,同时指定为只写即可。

参考代码如下:

/*

    函数功能: 创建文件名为s的文件。

    返回值: 

        -1 参数错误

        0 创建成功

        1 文件已存在

        2 创建失败

*/

int create_file(char *s)

{

    FILE *fp

    if(s==NULL||s[0]=='\0') return -1//参数为空,即错误参数。

    fp= fopen(s, "r")//以只读方式打开

    if(fp)//打开成功,表示文件已经存在。

    {

        fclose(fp)//关闭文件

        return 1//返回文件已存在。 

    }

    fp= fopen(s, "w")//以只写方式创建文件。

    if(fp == NULL) 

        return 2//创建失败。

    fclose(fp)//关闭文件。

    return 0//创建成功。

}

二、删除文件:

在C语言中,有专门的删除文件函数remove。

1、头文件:stdio.h

2、声明:int remove(const char* filename)

3、功能:删除文件名为filename的文件。

4、返回值:删除成功,返回0.否则返回-1.

5、示例代码:

#include <stdio.h>

int main()

{

    char s[100]

    int ret

    scanf("%s",s)//输入文件名。

    ret = remove(s)//删除文件

    if(ret==0)//根据结果给出相应提示

        printf("删除文件成功\n")

    else

        printf("删除文件失败\n")

    return 0

}

你看这个应该满足要求吧。我把三种循环方式都用上了:

#include<stdio.h>

#include<math.h>

int isprime(int n)

{

int i,t

if(n==2)

return 1

if(n%2==0 || n<2)

return 0

for(i=3,t=(int)sqrt(n)i<=ti+=2)

{

if(n%i==0)

return 0

}

return 1

}

void main()

{

int i,a,n

i=0

do

{

printf("Input an integer (>=1):")

scanf("%d",&a)

if(a>=1)

break

}while(++i<3)

if(i==3) exit(0)

printf("prime submultiples:\n")

i=1

n=0

while(i<=a)

{

if(a%i==0)

if(isprime(i))

{

printf("%d ",i)

n++

if(n%10==0)

printf("\n")

}

i++

}

给个实例给你看看吧

#include<stdio.h>

#include<stdlib.h>

struct node

{

int data

struct node* pNext

}

struct node* create()

{

struct node* pHead = NULL

struct node* pTail = NULL

struct node* pNode = NULL

int x=0

printf("\n请输入一个整数:")

scanf("%d",&x)

while(x!=0)

{

pNode = (struct node*)malloc(sizeof(struct node))

pNode->data = x

pNode->pNext = NULL

if (pHead==NULL)

{

pHead = pTail = pNode

}

else

{

pTail->pNext = pNode

pTail = pNode

}

printf("\n请输入一个整数:")

scanf("%d",&x)

}

return (pHead)

}

void main(void)

{

struct node* qNode = NULL

qNode = create()

printf("The data of link:\n")

while (qNode!=NULL)

{

printf("%d\t",qNode->data)

qNode = qNode->pNext

}

printf("\n")

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11454389.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存