目录
2005
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#define leap(n) (n % 4 == 0 && (n % 100 != 0 || n % 400 == 0))
int main() {
int y, m, d, i, s;
int month[2][13] = {
{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};
while (scanf("%d/%d/%d", &y, &m, &d) != EOF) {
for (s = 0, i = 1 ; i < m ; i++)
s += month[leap(y)][i];
s += d;
printf("%d\n", s);
}
return 0;
}
define 居然也可以定义函数 多维数组,存储为数字是根本不用引号,很多东西都忘记了。。。
就算知道这是水题,说实话,我这水平,还是想不到,练吧,能说啥。 心态好点。
2006
#include <stdio.h>
int main(void) {
int n, i, s, t;
while (scanf("%d", &n) != EOF) {
s = 1;
for (i = 0; i < n; i++) {
scanf("%d", &t);
if (t & 1)
s *= t;
}
printf("%d\n", s);
}
return 0;
}
水题。.....每次写题目 都不知道 在干嘛 就感觉 题目没好好读 然后 语法的问题 也没好好搞
错误也看不出来 太菜了 也太傻逼了
2007
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int main()
{
int x,y,i,t;
int ps=0;
int lj=0;
while(scanf("%d%d",&x,&y)!=EOF)
{
if(x>y)
{
t = x;
x = y;
y = t;
}
int p = 1;
int j = 1;
int ps=0;
int lj=0;
for(i=x;i<=y;i++)
{
if(i%2==0)
{
p=i*i;
ps=ps+p;
}
else if(i%2!=0)
{
j=i*i*i;
lj=lj+j;
}
}
printf("%d %d\n",ps,lj);
}
return 0;
}
#include <stdlib.h>
#include <stdio.h>
int main(void) {
unsigned int m, n, i, x, y;
while (scanf("%u%u", &m, &n) != EOF) {
if (m > n) {
i = n;
n = m;
m = i;
}
x = y = 0;
for (i = m ; i <= n ; i++)
(i & 1) ? (y += i*i*i) : (x += i*i);
printf("%u %u\n", x, y);
}
return EXIT_SUCCESS;
}
每次编程都在质疑自己,怀疑自己是不是真的不适合搞这个。
可自己确实 时间花的太少了。。。。
在早期CPU处理的功能还不够强的时候,求X对于2n的余数,会换成位运算:X & (2n - 1)。比如求 X 余 8,写成 X & 7。
2008
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int main()
{
int n,i;
float m;
while(scanf("%d",&n)!=EOF&&n!=0)
{
int f = 0;
int l = 0;
int z = 0;
for(i=1;i<=n;i++)
{
scanf("%f",&m);
if(m<0)
{
f++;
}
else if (m==0)
{
l++;
}
else
{
z++;
}
}
printf("%d %d %d\n",f,l,z);
}
}
#include <stdio.h>
int main(void)
{
int n, i, a, b, c;
double x;
while (scanf("%d", &n) , n)
{
a = b = c = 0;
for (i = 0 ; i < n ; i++)
{
scanf("%lf", &x);
if (x > 0) c++;
else if (x < 0) a++;
else b++;
}
printf("%d %d %d\n", a, b, c);
}
return 0;
}
学习学习
2009
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int main()
{
int m;
float s,x;
while(scanf("%f%d",&x,&m)!=EOF)
{
for(s=0.0;m--;x=sqrt(x))
s+=x;
printf("%.2f",s);
}
}
我真是个废物
2010
#include<stdio.h>
int main()
{
int n,m,i;
int a,b,c,h;
int f;
while(scanf("%d%d",&m,&n)!=EOF)
{
f=0;
for(i=m;i<=n;i++)
{
a=i/100;
b=(i/10)%10;
c=i%10;
h=a*a*a+b*b*b+c*c*c;
if(h==i)
{
if(f==0)
{
printf("%d",i);
}
else
printf(" %d",i);
f++;
}
}
if(f==0)
{
printf("no\n");
}
else
printf("\n");
}
}
#include<stdio.h>
int sxh(int m)
{
int sum = 0;
int n = m;
while (n) {
sum += (n % 10)*(n % 10)*(n % 10);
n /= 10;
}
return sum == m;
}
int main(void) {
int n, m, c;
while (scanf("%d%d", &m, &n)) {
for (c = 0; m <= n; m++) {
if (sxh(m))
printf(c++ ? " %d": "%d", m);
}
puts(c ? "\n" : "no\n");
}
return 0;
}
心态不行 能力不行 水平不行
h 应该在 for上?
2011
#include<stdio.h>
int main()
{
int n,m,i,j,flag,c;
float sum;
scanf("%d",&m);
for(i=1;i<=m;i++)
{
scanf("%d",&c);
sum=0;
flag = 1;
for(j=1;j<=c;j++)
{
sum=sum+(1.0/j)*flag;
flag=-flag;
}
printf("%.2f\n",sum);
}
}
慎思 慎行 多思考 心态要好 不要浮躁
2012
#include<stdio.h>
int prime(int n)
{
int i;
int flag;
flag=0;
for(i=2;i<n;i++)
{
if(n%i==0)
flag++;
}
if(flag==0)
{
return 0;
}
else
return 1;
}
int main()
{
int x,y,i,s,k;
while(scanf("%d%d",&x,&y)!=EOF&&!(x==0&&y==0))
{
k=0;
for(i=x;i<=y;i++)
{
s=i*i+i+41;
if(prime(s))//f(s)!=0
{
k++;
}
}
if(k!=0)
printf("Sorry\n");
else
printf("OK\n");
}
}
判定该表达式的值是否都为素数。
好好读题 看好条件 不然找不到问题所在
然后代码 写出来跟屎一样 太长了 读起来很难受
低级错误很多 对有些细节 不是很知道
2013
#include <stdio.h>
int f(int n);
int main()
{
int n,sum;
while(scanf("%d",&n) != EOF&&n)
{
sum = f(n);
printf("%d\n",sum);
}
return 0;
}
int f(int n)
{
if(n == 1)
{
return 1;
}
else
{
return 2 * (f(n-1) + 1);
}
}
#include <cstdio>
long long int memo[33];
long long int f(long long int n)
{
memo[1] = 1;
for(long long int i = 2; i <= n; ++ i)
{
memo[i] = 2 * (memo[i - 1] + 1);
}
return memo[n];
}
int main()
{
long long int n;
while(scanf("%d", &n) != EOF)
{
printf("%d\n", f(n));
}
return 0;
}
找规律 日常自闭 低级错误 ..........