c语言写oj
⑴ 大一C语言oj题,答案错误百分之五十,看了好久没看出错误,求大佬帮帮忙,万分感谢
#include <stdio.h>
int judgebaozi(int a,int b,int c){
if(a==b&&b==c)
return a;
else return 0;
}
int judgeizi(int a,int b,int c){
if(a==b||a==c)
return a;
else if(a!=b&&a!=c&&b!=c)
return 0;
else return b;
}
int judgedianzi(int a,int b,int c){
return a+b+c;
}
int judge1(int a,int b,int c){
if(a==b)
return c;
else if(a==c)
return b;
else if(b==c)
return a;
}
int main()
{
int a1,a2,a3,a4,a5,a6,k,m,o,p,q,r,s,t,j;
int data[9000][6];
scanf("%d",&k);
for(m=0;m<k;m++)
for(j=0;j<6;j++)
scanf("%d",data[m]+j);
for(m=0;m<k;m++){
a1=data[m][0];
a2=data[m][1];
a3=data[m][2];a4=data[m][3];a5=data[m][4];a6=data[m][5];
o=judgebaozi(a1,a2,a3);
p=judgebaozi(a4,a5,a6);
q=judgeizi(a1,a2,a3);
r=judgeizi(a4,a5,a6);
s=judge1(a1,a2,a3);
t=judge1(a4,a5,a6);
if(o!=0&&p!=0){
if(a1==a4)
printf("Draw\n");
else if(a1==1)
printf("lcy\n");
else if(a4==1)
printf("Ypop\n");
else if(a1>a4)
printf("lcy\n");
else
printf("Ypop\n");
}
else if(o!=0)
printf("lcy\n");
else if(p!=0)
printf("Ypop\n");
else if(q!=0&&r!=0){
if(q==r){
if(s==t)
printf("Draw\n");
else if(s==1)
printf("lcy\n");
else if(t==1)
printf("Ypop\n");
else if(s>t)
printf("lcy\n");
else
printf("Ypop\n");
}
else if(q==1)
printf("lcy\n");
else if(r==1)
printf("Ypop\n");
else if(q>r)
printf("lcy\n");
else printf("Ypop\n");
}
else if(q!=0)
printf("lcy\n");
else if(r!=0)
printf("Ypop\n");
else if(judgedianzi(a1,a2,a3)==judgedianzi(a4,a5,a6))
printf("Draw\n");
else if(judgedianzi(a1,a2,a3)>judgedianzi(a4,a5,a6))
printf("lcy\n");
else printf("Ypop\n");
}
return 0;
}
你的程序写得好,逻辑有一点问题!
⑵ oj,C语言题,怎么做嘞!
#include"stdio.h"
structstu{
charname[21];
intx;
};
intmain(intargc,char*argv[]){
structstustu[100],t;
inti,j,k,n;
printf("Howmanystudentsarethere(1~100)? ");
if(scanf("%d",&n)!=1||n<1||n>100){
printf("Inputerror,exit... ");
return0;
}
printf("Pleaseenterthe%dstudent(s)information: ",n);
for(i=0;i<n;i++)
if(scanf("%s%d",stu[i].name,&stu[i].x)!=2||stu[i].x<0||stu[i].x>100){
printf("Inputerror,redo:");
i--;
fflush(stdin);
}
printf("========================= ");
for(i=0;i<n;i++){
for(k=i,j=k+1;j<n;j++)
if(stu[k].x<stu[j].x)
k=j;
if(k-i)
t=stu[k],stu[k]=stu[i],stu[i]=t;
printf("%20s%d ",stu[i].name,stu[i].x);
}
return0;
}
运行样例: