为什么我的程序在dev c++中运行时出不了答案

下面是我的程序:#include <stdio.h>
#include <stdlib.h>

int main()
{
int n,i;
int a[21]={0};
int b[21]={0};
int A=0;
int B=0;
int e,f,g,h;
for(e=1;e<f;e++){

while(scanf("%d",&n)!=EOF)
{
if(n<=0||n>20) break;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
scanf("%d",&b[i]);
for(i=0;i<n;i++)
{
if (a[i]==1&&b[i]==2)
A=A+6;
if (a[i]==2&&b[i]==1)
B=B+6;
else if(a[i]-b[i]==1)
B=B+a[i]+b[i];
else if(b[i]-a[i]==1)
A=A+a[i]+b[i];
else if(a[i]>b[i])
A=A+a[i];
else if(a[i]<b[i])
B=B+b[i];
}

printf("A has %d points. B has %d points.",A,B);
h=1;
h<=e?printf("\n"):h++;
A=0;
B=0;}

}
system("pause");
return 0;
}

第1个回答  2012-11-02
一、
int main()
{
int n,i;
int a[21]={0};
int b[21]={0};
int A=0;
int B=0;
int e,f,g,h;
//这里f没有初值,怎么运行?
f=10; //不知道你要循环几次,这里先按10次说
h=1 ; //因为你后面h要与e比较,是不是应该放到这里?
for(e=1;e<f;e++){
while(scanf("%d",&n)!=EOF) //这里要想结束,需要在空行时,输入ctrl+z结束while循环

二、
//h=1;这里也有问题,每次都赋值为1,后面的h++就没有意义了,但没看明白,h不大于e时输出回车的意义是什么?
h<=e?printf("\n"):h++;

有问题再追问!本回答被网友采纳
第2个回答  2012-11-02
我使用Codeblock运行了一下可以正常工作的
输入
5
1 2 3 4 5
6 7 8 9 10
运行结果
A has 0 points.B has 40 point.
你的程序运行时出不了答案会不会是配置问题。缺少了gdb.exe widres.exe 或是make.exe?
第3个回答  2012-11-02
出不了答案本回答被提问者采纳
第4个回答  2010-01-31
程序有问题
相似回答