C语言编程高手请进。 20
帮我用C语言写一个程序,内容是:把C盘里的所有.txt格式的文件,全部复制一份。并在D盘创建一个文件夹名为123,然后把C盘所有的txt文件全部复制一份进去。怎么写这个程...
帮我用C语言写一个程序,内容是:把C盘里的所有.txt格式的文件,全部复制一份。并在D盘创建一个文件夹名为123,然后把C盘所有的txt文件全部复制一份进去。怎么写这个程序啊。。
写不下就发到我的邮箱284799225@qq.com谢谢 展开
写不下就发到我的邮箱284799225@qq.com谢谢 展开
1个回答
展开全部
虽然本人不是什么c语言高手,不过对于lz的程序,本人还是有些许拙见要向lz说明的:
首先是语法错误:程序中的x变量是float型的,但scanf中读入的x却是整型的,应改为scanf("%f, %d", &x, &y)比较好。
其次是算法有问题:lz是不是每次运行都得不到结果呢??原因是程序中滥用了return 0。例如:
if (y > 0)
{
for (i = 1; i <= y; i++)
{
if (y != i)
{
t = t * x;
}
else
{
return 0;
}
}
printf("%-6f^%d=%-6f", x, y, t);
}
其中if (y != i)……else本人是看了好几遍也不知道lz有何用意,而且for循环的最后一次循环一定会有y==i,于是会导致循环进入了else语句中执行return 0,那结果都返回了还怎么执行printf("%-6f^%d=%-6f", x, y, t)语句呢??下面的也差不多是这个问题了!!!
最后也就是一楼提到的语句简洁问题,我就有点不明白楼主为什么那么喜欢在if………语句中都用到printf("%-6f^%d=%-6f", x, y, t),其实这个句子最后统一再用也行,当然这个也只是小问题了!!!主要的还是前两个问题使楼主的程序不能正确运行!!
下面是我写的程序,基本上也是秉承了lz的算法,只是有些改动。
int main(void)
{
int i, y;
float x,t=1;
printf("Input x, y:");
scanf("%f, %d", &x, &y);
if (y > 0)
for (i = 1; i <= y; i++)t=t*x;
else if (y < 0)
{
for(i = 1; i <= - y; i ++)t=t*x;
t=1/t;
}
printf("%-6f^%d=%-6f", x, y, t);
return 0;
}
首先是语法错误:程序中的x变量是float型的,但scanf中读入的x却是整型的,应改为scanf("%f, %d", &x, &y)比较好。
其次是算法有问题:lz是不是每次运行都得不到结果呢??原因是程序中滥用了return 0。例如:
if (y > 0)
{
for (i = 1; i <= y; i++)
{
if (y != i)
{
t = t * x;
}
else
{
return 0;
}
}
printf("%-6f^%d=%-6f", x, y, t);
}
其中if (y != i)……else本人是看了好几遍也不知道lz有何用意,而且for循环的最后一次循环一定会有y==i,于是会导致循环进入了else语句中执行return 0,那结果都返回了还怎么执行printf("%-6f^%d=%-6f", x, y, t)语句呢??下面的也差不多是这个问题了!!!
最后也就是一楼提到的语句简洁问题,我就有点不明白楼主为什么那么喜欢在if………语句中都用到printf("%-6f^%d=%-6f", x, y, t),其实这个句子最后统一再用也行,当然这个也只是小问题了!!!主要的还是前两个问题使楼主的程序不能正确运行!!
下面是我写的程序,基本上也是秉承了lz的算法,只是有些改动。
int main(void)
{
int i, y;
float x,t=1;
printf("Input x, y:");
scanf("%f, %d", &x, &y);
if (y > 0)
for (i = 1; i <= y; i++)t=t*x;
else if (y < 0)
{
for(i = 1; i <= - y; i ++)t=t*x;
t=1/t;
}
printf("%-6f^%d=%-6f", x, y, t);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询