下面的C程序怎么错了呀,在线等
来源:网络收集 作者:解语人 时间:2008-4-28 12:44:57
#include <stdio.h>
#define MAX 200
int a[MAX],b[MAX],cnt=0;
void jsVal()
{
int i,qi,ba,sh,ge,j;
int ab,cd;
for(i=0;i<200;i++)
{
qi=a[i]/1000;
ba=(a[i]-qi*1000)/100;
sh=(a[i]-qi*1000-ba*100)/10;
ge=a[i]-qi*1000-ba*100-ge*10;
ab=ge*10+qi;cd=ba*10+sh;
if((ab%9==0||cd%9==0)&&(ab%2==1)&&(cd%2==1)&&ab/10!=0&&cd/10!=0)
{b[cnt]=a[i];cnt++;}
}
}
void readDat()
{
int I;
FILE *fp;
fp=fopen(IN25.DAT,r);
for(i=0;i<MAX;i++)
fscanf(fp,%d,&a[i]);
fclose(fp);
}
main()
{
int I;
readDat();
jsVal();
printf(满足条件的数=%d\n,cnt);
for(i=0;i<cnt;i++)
printf(%d\n,b[i]);
printf(\n);
writeDat();
}
writeDat()
{
FILE *fp;
int I;
fp=fopen(OUT25.DAT,w);
fprintf(fp,%d\n,cnt);
for(i=0;i<cnt;i++)
fprintf(fp, %d\n,b[i]);
fclose(fp);
}
NO123.CPP
D:\工具\Microsoft Visual Studio\Microsoft Visual Studio\MyProjects\NO123\NO123.CPP(6) : warning C4101: j : unreferenced local variable
D:\工具\Microsoft Visual Studio\Microsoft Visual Studio\MyProjects\NO123\NO123.CPP(24) : error C2065: i : undeclared identifier
D:\工具\Microsoft Visual Studio\Microsoft Visual Studio\MyProjects\NO123\NO123.CPP(37) : error C2065: writeDat : undeclared identifier
D:\工具\Microsoft Visual Studio\Microsoft Visual Studio\MyProjects\NO123\NO123.CPP(38) : warning C4508: main : function should return a value; void return type assumed
D:\工具\Microsoft Visual Studio\Microsoft Visual Studio\MyProjects\NO123\NO123.CPP(40) : error C2373: writeDat : redefinition; different type modifiers
D:\工具\Microsoft Visual Studio\Microsoft Visual Studio\MyProjects\NO123\NO123.CPP(48) : warning C4508: writeDat : function should return a value; void return type assumed
Error executing cl.exe.
NO123.OBJ - 3 error(s), 3 warning(s)
你的程序有三个地方错误,你写的int I;应该修改为int i;分别是21、30、42行。
还有一个警告,程序13行的地方,变量ge没有赋值就开始使用,可以把第6行修改为:
int i,qi,ba,sh,ge=0,j;