我的写的代码如下: #include <stdio.h> int process (int a,int b,int c,int d) { int temp; if(a<b) temp=b; if(b<c) temp=c; if(c<d) temp=d; if(d<a) temp=a; return temp; } void main() { int num,a,b,c,d,jieguo; a=b=c=d=0; printf("开始选举,请注意,有效候选人的代号为:1,2,3,4。\n"); for (int i=1;i<=100;i++) { printf("\n请输入班长候选人代号(数字0结束):"); scanf("%d",&num); if(num==0) { printf("\n选举结束。"); break; } else if(num>4) printf("\n此选票无效。"); else if(num==1) a++; else if(num==2) b++; else if(num==3) c++; else if(num==4) d++; } printf("\n选举结果如下:\n"); printf("1:%d\n",a); printf("2:%d\n",b); printf("3:%d\n",c); printf("4:%d\n",d); jieguo=process(a,b,c,d); printf("选举最终结果是:候选人代号为%d同学当选班长\n",jieguo); }
但是运行结果都是代号为3的同学当选班长,请高手查一下,我错在那里了!~~