gpt4 book ai didi

c - 为什么我的代码不输出到文本文件

转载 作者:太空宇宙 更新时间:2023-11-04 03:01:11 25 4
gpt4 key购买 nike

我编写了以下程序,当您从 IDE 运行它时,它运行良好。但是,当我想通过从 inp.txt 获取输入来测试它时文件并输出到 out.txt文件,它不会这样做。


#include <stdio.h>
#include <stdlib.h>

struct node
{
int data;
struct node *next;
}*start;

void insertatend(int d)
{
struct node *n;
n=(struct node *)malloc(sizeof(struct node));
n->data=d;
n->next=NULL;

if(start==NULL)
{
start=n;
}

else
{
struct node *tmp;
for(tmp=start;tmp->next!=NULL;tmp=tmp->next);
tmp->next=n;
}
}

int max(int a,int b)
{
int c=(a>b)?a:b;
return c;
}

int maxCoins(int n)
{
int arr[n+1],i;
arr[0]=0;
arr[1]=1;
arr[2]=2;
arr[3]=3;

if(n>2)
{


for(i=3;i<=n;i++)
{
int k= arr[(int)(i/2)]+arr[(int)(i/3)]+arr[(int)(i/4)];
arr[i]=max(i,k);
}
}

return arr[n];
}

int main(void)
{
int coins,i;
start=NULL;
struct node*p;

while(scanf("%d",&coins)>0)
{
insertatend(coins);
}

for(p=start;p!=NULL;p=p->next)
{
printf("%d\n",maxCoins(p->data));
}

getchar();

return 0;
}

我尝试在命令提示符下执行以下操作 ByteTest.exe<inp.txt>out.txt , 但未对 out.txt 进行任何更改文件。

我通过输入 CTRL+Z 来终止对我的程序的输入.跟这个有关系吗?


inp.txt and out.txt例如,可能包含


inp.txt      out.txt

12 13
24 27
26 27

最佳答案

您的问题可能是:

while(scanf("%d",&coins)>0)

这将返回字符数。您在这里不是检查硬币的值(value),而是检查输入字符串的长度。

关于c - 为什么我的代码不输出到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11549969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com