1、A+B 2
1 #include<stdio.h> 2 3 int fun(int m, int n) 4 { 5 return (m+n)%100; 6 } 7 8 int main() 9 { 10 int n,a,b; 11 scanf("%d",&n); 12 while(n--) 13 { 14 scanf("%d%d",&a,&b); 15 printf("%d ",fun(a,b)); 16 } 17 return 0; 18 }
2、最小整数
1 #include<stdio.h> 2 3 int fceil(double x) 4 { 5 if(x>0) 6 return x+0.5; 7 else 8 return x; 9 } 10 11 int main() 12 { 13 double x; 14 scanf("%lf",&x); 15 16 printf("%d ",fceil(x)); 17 18 return 0; 19 }
3、最大整数
1 #include<stdio.h> 2 3 int getfloor(double x) 4 { 5 if(x<0) 6 return x-0.5; 7 else 8 return x; 9 } 10 11 int main() 12 { 13 double x; 14 scanf("%lf",&x); 15 16 printf("%d ",getfloor(x)); 17 18 return 0; 19 }
4、ACKERMAN
1 #include<stdio.h> 2 3 int ackerman(int m, int n) 4 { 5 if (m == 0 && n >= 0) { 6 return n + 1; 7 } 8 if (m >= 0 && n == 0) { 9 return ackerman(m-1,1); 10 } 11 return ackerman(m-1, ackerman(m,n-1)); 12 } 13 14 int main() 15 { 16 int m,n; 17 scanf("%d%d",&m,&n); 18 19 printf("%d ",ackerman(m,n)); 20 21 return 0; 22 }
5、发工资的日子
1 #include<stdio.h> 2 3 int fun(int m) 4 { 5 int count = 0; 6 int n[] = {100,50,10,5,2,1}; 7 8 for(int i=0; m && i<6; ++i) 9 { 10 count+=m/n[i]; 11 m %= n[i]; 12 } 13 14 return count; 15 } 16 17 int main() 18 { 19 int n,m,count=0; 20 scanf("%d",&n); 21 22 while(n--) 23 { 24 scanf("%d",&m); 25 count += fun(m); 26 } 27 28 printf("%d ",count); 29 30 return 0; 31 }
6、逆序整数
1 #include <stdio.h> 2 void fun(int n) 3 { 4 if(n>0){ 5 printf("%d",n%10); 6 fun(n/10); 7 } 8 } 9 10 int main() 11 { 12 int n; 13 scanf("%d",&n); 14 fun(n); 15 return 0; 16 }
7、组合数
1 #include <stdio.h> 2 int c(int n,int m) 3 { 4 /*temp 为答案*/ 5 double temp = 1; 6 /*保证m>=n-m*/ 7 if(m<n-m) 8 return c(n,n-m); 9 for(int i=0;i<n-m;++i){ 10 temp*=m+i+1; 11 temp/=i+1; 12 } 13 return (int)temp; 14 } 15 16 17 int main() 18 { 19 int n,m; 20 scanf("%d%d",&n,&m); 21 int ret = c(n,m); 22 if(ret) 23 printf("%d",ret); 24 else 25 printf("wrong"); 26 return 0; 27 }
8、高低交换
1 #include <stdio.h> 2 3 void fun(unsigned char a) 4 { 5 unsigned char height = (a & 0x0F)<<4; 6 unsigned char low = a >> 4; 7 printf("%d",low+height); 8 } 9 10 int main() 11 { 12 int a; 13 scanf("%d",&a); 14 fun(a); 15 return 0; 16 }
9、数据加密
1 #include <stdio.h> 2 3 int fun1(int n); 4 void fun2(int a); 5 6 int main() 7 { 8 int a; 9 scanf("%d",&a); 10 fun2(a); 11 return 0; 12 } 13 14 int fun1(int n) 15 { 16 return (n+5)%10; 17 } 18 19 void fun2(int a) 20 { 21 int arr[4] = {0}, i=0; 22 while(a) 23 { 24 arr[i++] = fun1(a%10); 25 a /= 10; 26 } 27 28 for(int j=0; j<4; ++j) 29 printf("%d",arr[j]); 30
10、不会吧,又是A+B
1 #include <stdio.h> 2 3 void fun(int hour, int minute, int second); 4 5 int main() 6 { 7 int h,m,s,n=2; 8 int second=0, minute=0, hour=0; 9 10 while(n--) 11 { 12 scanf("%d%d%d",&h,&m,&s); 13 second += s; 14 minute += m; 15 hour += h; 16 } 17 18 fun(hour,minute,second); 19 20 return 0; 21 } 22 23 24 void fun(int hour, int minute, int second) 25 { 26 if (second>59) 27 { 28 minute += second/60; 29 second %= 60; 30 } 31 32 if (minute>59) 33 { 34 hour += minute/60; 35 minute %= 60; 36 } 37 38 printf("%d %d %d", hour,minute,second); 39 }