西工大POJ考试题库.docx
《西工大POJ考试题库.docx》由会员分享,可在线阅读,更多相关《西工大POJ考试题库.docx(43页珍藏版)》请在冰豆网上搜索。
![西工大POJ考试题库.docx](https://file1.bdocx.com/fileroot1/2022-11/16/b53e7af4-bf05-4d70-8435-0bf37e7b3b82/b53e7af4-bf05-4d70-8435-0bf37e7b3b821.gif)
西工大POJ考试题库
西工大幼儿园3
回文子串4
这个月有几天6
小写字母转成大写字母7
计算正n边形的面积8
数组中取出下标为奇数的数9
银行利息10
从右开始取n个字符组成子串11
最小公倍数12
五名学生参加计算机竞赛13
清华大学出版社15
计算一个月的天数:
15
求一个实数里整数的位数:
16
推测4位数的车牌号:
16
比较字符串大小:
16
小鹏数学课17
A*B得数每一位相加得到C18
向in.dat中写入一行文本18
加入XXXX19
左下角19
右上角20
偶数的和21
整数位数21
输入N521
大数减法22
You换成we25
恐怖水母26
1/k=1/x+1/y27
循环移位27
延伸的卡片29
操场训练30
找规律等差等比31
1-N输出含有8,8的倍数,每一位相加等于8的数31
大数相加32
冒泡排序降序37
选择排序降序38
快速排序降序38
两人三足趣味运动会39
西工大幼儿园
#include
#include
intmain()
{
chari,j,k;
for(i='X';i<='Z';i++)
for(j='X';j<='Z';j++)
if(i!
=j)
for(k='X';k<='Z';k++)
if(i!
=k&&j!
=k)
if(i!
='X'&&k!
='X'&&k!
='Z')
printf("A=%c\nB=%c\nC=%c\n",i,j,k);
return0;
}
回文子串
#include
#include
#include
#defineMAXN5000+10
charbuf[MAXN],s[MAXN];
intp[MAXN];
intmain()
{
intn,m=0,max=0,x,y;
inti,j;
fgets(buf,sizeof(s),stdin);
n=strlen(buf);
for(i=0;i{
if(isalpha(buf[i]))
{
p[m]=i;
s[m++]=toupper(buf[i]);
}
}
for(i=0;i{
for(j=0;i-j>=0&&i+j{
if(s[i-j]!
=s[i+j])break;
if(j*2+1>max){max=j*2+1;x=p[i-j];y=p[i+j];}
}
for(j=0;i-j>=0&&i+j+1{
if(s[i-j]!
=s[i+j+1])break;
if(j*2+2>max){max=j*2+2;x=p[i-j];y=p[i+j+1];}
}
}
for(i=x;i<=y;i++)
printf("%c",buf[i]);
printf("\n");
return0;}
#include
#include
intFeibonacci(intn){
if(n==1||n==2)return1;
elsereturnFeibonacci(n-1)+Feibonacci(n-2);
}
intmain(){
intn;
scanf("%d",&n);
printf("%d\n",Feibonacci(n));
return0;}
这个月有几天
#include
#include
int main()
{
int y,m,d;
int A[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
int B[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d%d",&y,&m);
if((y%4==0&&y%100!
=0)||(y%400==0))
d=A[m];
else
d=B[m];
printf("%d",d);
return 0;
小写字母转成大写字母
#include
#include
intmain()
{chars[80];
intlen,i;
gets(s);
len=strlen(s);
for(i=0;i{
if(s[i]>='a'&&s[i]<='z')
s[i]=s[i]-32;}
puts(s);
return0;}
计算正n边形的面积
#include
#include
#definePI3.1415926
intmain()
{
doubles,a;
intn;
scanf("%d%lf",&n,&a);
s=a*a*n/(2*2*tan(PI/n));
printf("%.2lf\n",s);
return0;
}
数组中取出下标为奇数的数
#include
#include
intmain()
{
intn,i;
scanf("%d",&n);
inta[n];
for(i=0;iscanf("%d",&a[i]);
for(i=0;i{if(i%2!
=0)printf("%d",a[i]);}
return0;
}
银行利息
#include
#include
int main()
{double n,s;
scanf("%lf",&n);
s=n-1600;
if(n<=1600)
printf("0");
else if(n>1600&&s<500)
printf("%.0lf",0.05*s);
else if(s>=500&&s<2000)
printf("%.0lf",0.05*500+0.1*(s-500));
else if(s>=2000&&s<5000)
printf("%.0lf",0.05*500+0.1*1500+0.15*(s-2000));
else if(s>=5000&&s<20000)
printf("%.0lf",0.05*500+0.1*1500+0.15*3000+0.2*(s-5000));
else if(s>=20000&&s<40000)
printf("%.0lf",0.05*500+0.1*1500+0.15*15000+0.2*15000+0.25*(s-20000));
else if(s>=40000&&s<60000)
printf("%.0lf",0.05*500+0.1*1500+0.15*15000+0.2*15000+0.25*20000+0.3*(s-40000));
else if(s>=60000&&s<80000)
printf("%.0lf",0.05*500+0.1*1500+0.15*15000+0.2*15000+0.25*20000+0.3*20000+0.35*(s-60000));
else if(s>=80000&&s<100000)
printf("%.0lf",0.05*500+0.1*1500+0.15*15000+0.2*15000+0.25*20000+0.3*20000+0.35*20000+0.4*(s-80000));
else
printf("%.0lf",0.05*500+0.1*1500+0.15*15000+0.2*15000+0.25*20000+0.3*20000+0.35*20000+0.4*20000+0.45*(s-100000));
return 0;
}
从右开始取n个字符组成子串
#include
#include
#include
intmain()
{chars[100]={0};
intn,a,i;
gets(s);
a=strlen(s);
scanf("%d",&n);
if(n>=a)
puts(s);
else{
for(i=a-n;iprintf("%c",s[i]);
}
return0;
}
最小公倍数
#include
#include
intmain()
{
intN,M,t,i;
scanf("%d%d",&M,&N);
t=M*N;
for(i=1;i<=t;i++)
{
if(i%N==0)
if(i%M==0)
{printf("%d",i);
break;
}
}
return0;}
五名学生参加计算机竞赛
#include
intmain()
{
inta,b,c,d,e;
for(a=0;a<2;a++)
for(b=0;b<2;b++)
for(c=0;c<2;c++)
for(d=0;d<2;d++)
for(e=0;e<2;e++)
if(((a==1&&b==1)||(a==0&&b==0))
&&((b==0&&c==1)||(b==1&&c==0))
&&((c==1&&d==1)||(c==0&&d==0))
&&(!
(d==0&&e==0))
&&((e==1&&a==1&&d==1)||(e==0)))
{if(a==1){printf("a");}
if(b==1){printf("b");}
if(c==1){printf("c");}
if(d==1){printf("d");}
if(e==1){printf("e");}}
return0;
}
清华大学出版社
#include
#include
structtagME{
chara0[5];
chara1[11];
chara2[20];
inta3;
inta4;
};
intmain()
{structtagMEa[100];
intn,i,j=1,k;
FILE*fp;
scanf("%d%d",&n,&i);
for(k=0;k<=n-1;k++)
scanf("%s%s%s%d%d",a[k].a0,a[k].a1,a[k].a2,&a[k].a3,&a[k].a4);
fp=fopen("D:
//out.dat","w");
if(fp!
=NULL){
for(j=0;j<=n-1;j++){
fscanf(fp,"%s%s%s%d%d",a[j].a0,a[j].a1,a[j].a2,&a[j].a3,&a[j].a4);
}
printf("%s%s%s%d