task 1;
#include <stdio.h> long long func(int n); int main(){ int n; long long f; while(scanf("%d", &n)!= EOF){ f = func(n); printf("n = %d , f = %lld\n", n, f ); } return 0; } long long func(int n){ if(n==1){ return 1; } else{ return func(n-1)*2+1; } }
功能:随机打印一串字符。
task 2_1:
#include <stdio.h> long long fac(int n); int main() { int i, n; printf("Enter n: "); scanf("%d", &n); for (i = 1; i <= n; ++i) printf("%d! = %lld\n", i, fac(i)); return 0; } long long fac(int n) { static long long p = 1; printf("p = %lld\n", p); p = p * n; return p; }
task 2_2:
#include <stdio.h> int func(int, int); int main() { int k = 4, m = 1, p1, p2; p1 = func(k, m); p2 = func(k, m); printf("%d, %d\n", p1, p2); return 0; } int func(int a, int b) { static int m = 0, i = 2; i += m + 1; m = i + a + b; return m; }
task 3:
#include <stdio.h> long long func(int n); int main(){ int n; long long f; while(scanf("%d", &n)!= EOF){ f = func(n); printf("n = %d , f = %lld\n", n, f ); } return 0; } long long func(int n){ if(n==1){ return 1; } else{ return func(n-1)*2+1; } }
task 4:
#include <stdio.h> int func(int n, int m); int main (){ int n, m; while(scanf("%d%d", &n, &m)!=EOF) printf("n = %d, m = %d, ans = %d\n", n, m, func(n,m)); return 0; } int func(int n, int m){ int ans; if(n==m||m==0){ return 1; } else if(n<m){ return 0; } else{ return func(n-1,m-1) + func(n-1,m); } }
task 5_1:
#include <stdio.h> double mypow(int n, int m); int main(){ int x, y; double ans; while(scanf("%d%d", &x, &y) != EOF){ if(y>=0){ ans = mypow(x,y); printf("%d的%d次方:%g\n\n", x, y, ans); } else{ y = -y; ans = 1.0/mypow(x, y); printf("%d的-%d次方:%g\n\n", x, y, ans); } } return 0; } double mypow(int n, int m){ if(m==1){ return n; } else if(m==0){ return 0; } else{ return n*mypow(n,m-1); } }
task 5_2:
#include <stdio.h> double mypow(int n, int m); int main(){ int x, y; double ans; while(scanf("%d%d", &x, &y) != EOF){ if(y>=0){ ans = mypow(x,y); printf("%d的%d次方:%g\n\n", x, y, ans); } else{ y = -y; ans = 1.0/mypow(x, y); printf("%d的-%d次方:%g\n\n", x, y, ans); } } return 0; } double mypow(int n, int m){ int i; double ans=1.0; for(i=1;i<=m;i++){ ans = ans*n ; } return ans; }
task 6:
#include<stdio.h> void hanoi(int n,char A,char B,char C); void move(int n,char A,char B); static int t=0; int main(){ char A,B,C; int n; while(scanf("%d",&n)!=EOF){ t=0; hanoi(n,'A','B','C'); printf("一共移动了%d次\n",t);} return 0; } void move(int n,char A,char C){ printf("%d:%c-->%c\n",n,A,C); t++; } void hanoi(int n,char A,char B,char C){ if(n==1) move (n,A,C); else{ hanoi(n-1,A,C,B); move(n,A,C); hanoi(n-1,B,A,C); } }
task 7:
#include<stdio.h> int is_prime(int x); int main() { int i, n; while (scanf("%d", &n) != EOF) { for (i = 2; i <= n; i++) { if (!is_prime(i) || !is_prime(n - i))continue; printf("%d = %d + %d\n", n, i, n - i); break; } } return 0; } int is_prime(int x) { int i; for (i = 2; i *i<= x; i++) { if (x % i == 0) { return 0;} else { return 1; } } }
task 8:
#include<stdio.h> int is_prime(int x); int main() { int i, n; while (scanf("%d", &n) != EOF) { for (i = 2; i <= n; i++) { if (!is_prime(i) || !is_prime(n - i))continue; printf("%d = %d + %d\n", n, i, n - i); break; } } return 0; } int is_prime(int x) { int i; for (i = 2; i *i<= x; i++) { if (x % i == 0) { return 0;} else { return 1; } } }
标签:return,int,long,char,实验,func,ans From: https://www.cnblogs.com/zzaw/p/17289770.html