C语言程序设计求帮助

在main函数中创建一个文件,将键盘输入的字符串写入文件中。打开该文件,读出字符串,将字符串中下标和ASCII码值之和为偶数的字符删除,串中剩余字符所形成的新串存放到另一个文件中。

代码如下

#include <stdio.h>
int main()
{
    int i,j;
    char buf[100],buf2[100];
    FILE* fp1,*fp2;
    printf("请输入字符串:");
    gets(buf);
    fp1 = fopen("a.txt","w");//写入a.txt
    fprintf(fp1,"%s",buf);
    fclose(fp1);
    printf("成功写入a.txt\n");
    //打开文件读文件
    fp1 = fopen("a.txt","r");
    if(fp1==0)
    {
        printf("a.txt打开失败\n");
        return 0;
    }
    fgets(buf2,100,fp1); //读取一行
    printf("读取成功,读取的字符串为:%s\n",buf2);
    //只保留下标为偶数且ASCII码值为奇数的字符
    i=0;
    j=0;
    while(buf2[i]!='\0')
    {
        if((i+buf2[i])%2==1)//删除和是偶数的
            i++;
        else
        {
            buf2[j++] = buf2[i];
            i++;
        }
    }
    buf2[j]='\0';
    printf("处理后的字符串:%s\n",buf2);
    //写入文件
    fp2 = fopen("b.txt","w");
    fprintf(fp2,"%s",buf2);
    fclose(fp2);
    printf("成功写入b.txt\n");
    return 0;
}


您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

全是一样的问题哈