本人初学c,遇到一个if语句,不管条件怎么变都输出一个定值,求高手帮助!!!!

发布于 2022-10-15 07:30:59 字数 1619 浏览 35 评论 0

程序主要是把数据从一个文本中拷贝到另一个文本中,不论a[236]等于多少 结果都输出y=1,百思不得其解,求各位大侠给予帮助,小弟感激不尽!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#include<stdio.h>
#include <math.h>
#include<stdio.h>
#include<stdlib.h>
long int a[67000];
int main()
{for(;
{FILE *fpold,*fpnew;
int sum=0,sum1=0;      
char c,g;
int k=0,k1=0;
long int i=0,x,n;
long int ii=0,xx,nn;
long int j;
int y;
fpold=fopen("old.txt","r";
fpnew=fopen("new.txt","w"; sum=0;
while(EOF!=(fscanf(fpold,"%c",&c)))
{
if(c>='0'&&c<='9')
{
sum=sum*10+c-'0';
k++;
}
else
{
if(k>0)fprintf(fpnew,"%d\n",sum);
k=0;
sum=0;
}
}
fclose(fpold);
fclose(fpnew);
freopen("new.txt","r",stdin);
while(scanf("%ld",&x)!=EOF) a[i++]=x;
n=i;
freopen("CON","r",stdin);
printf("num:%ld\n",n);
if(a[236]=256) y=1;
else y=2;
printf("y=%d\n",y)
}
}
不论a[236]等于多少 结果都输出y=1,百思不得其解,求各位大侠给予帮助,小弟感激不尽。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

毁梦 2022-10-22 07:30:59

==

墨离汐 2022-10-22 07:30:59

回复 2# madoldman

    我想得到结果2,可是一直得不到

今天小雨转甜 2022-10-22 07:30:59

if(a[236]=256) y=1;
else y=2;

--->

if(a[236]==256) y=1;
else y=2;

一直在等你来 2022-10-22 07:30:59

进来前就猜到肯定把 == 写成了 =

楼主您就不能把编译器警告全开起来?如果脑子不能避免这种低级错误,至少不要拒绝编译器帮你避免

就此别过 2022-10-22 07:30:59

回复 4# hellioncu

    谢谢!

夜还是长夜 2022-10-22 07:30:59

回复 5# 雨过白鹭洲

    谢谢 不错的建议 采纳

╰沐子 2022-10-22 07:30:59

回复 2# madoldman

    谢谢你朋友 感激涕零

女中豪杰 2022-10-22 07:30:59

回复 4# hellioncu

    谢谢你 感激涕零 问题终于解决了 我的程序终于完成了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文