|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 guhusf 于 2021-1-22 22:20 编辑
具体问题是选择系统盘后,后续程序跳过了文件名称的输入,直接就是内容输入。如图。
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
void BUILD_E()
{
FILE *fp;
char name[20],text[1024];
char way[20] = "e:\\";//设置路径为e盘
printf("请输入文件名称:\n");
gets(name);
strcat(name,".txt");//给文件名加上后缀
strcat(way,name);//添加路径
fp = fopen(way,"w");
printf("请输入内容:\n");
gets(text);
fputs(text,fp);
fclose(fp);
}
void BUILD_D()
{
FILE *fp;
char name[20],text[1024];
char way[20] = "d:\\";//设置路径为d盘
printf("请输入文件名称:\n");
gets(name);
strcat(name,".txt");//给文件名加上后缀
strcat(way,name);//添加路径
fp = fopen(way,"w");
printf("请输入内容:\n");
gets(text);
fputs(text,fp);
fclose(fp);
}
main()
{
int a=0;
printf("选择存储空间(对应序号):1.D盘;2.E盘\n");
scanf("%d",&a);
while (a!=1&&a!=2)
{
printf("请重新输入正确的序号!");
scanf("%d",&a);
}
switch(a)
{
case 1:BUILD_D();
break;
case 2 :BUILD_E();
break;
}
}
其实你这个想法若用 windows 编程就简单了,只要调用 Windows API 函数 MoveFile ,一条语句就能实现
|
-
红圈里的一起输出了
|