1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <time.h> 4 #include <windows.h> 5 #define N 80 6 7 void print_text (int line , int col ,char text[]); 8 void print_space( int n); 9 void print_blank_lines( int n); 10 11 int main(){ 12 int line , col, i; 13 char text[N] = "hi , November~"; 14 15 srand (time (0)); 16 17 for (i = 1; i<= 10 ; ++i){ 18 line = rand () % 25 ; 19 col = rand() % 80 ; 20 print_text(line , col , text); 21 Sleep(1000); 22 23 } 24 return 0; 25 } 26 27 void print_spaces (int n){ 28 int i; 29 30 for (i = 1;i <= n ; ++i) 31 printf (" "); 32 } 33 34 void print_blank_lines (int n) { 35 int i; 36 37 for(i = 1; i <= n; ++i ) 38 printf ("\n"); 39 40 } 41 42 void print_text (int line , int col ,char text[]){ 43 print_blank_lines(line-1); 44 print_spaces(col -1); 45 printf("%s", text); 46 }
运行结果
task2.c
1 #include <stdio.h> 2 long long fac( int n ); 3 4 int main(){ 5 int i,n; 6 7 8 printf ("Enter n: "); 9 scanf("%d", &n); 10 for (i = 1; i <= n; ++i) 11 printf("%d! = %11d\n", i, fac(i)); 12 printf ("p = %11d\n"); 13 return 0; 14 } 15 16 long long fac(int n){ 17 static long long p = 1; 18 19 p =p * n; 20 21 return p;
task 2_2
1 #include <stdio.h> 2 int func(int, int); 3 int main() { 4 int k = 4, m = 1, p1, p2; 5 6 p1 = func(k, m); 7 p2 = func(k, m); 8 printf("%d, %d\n", p1, p2); 9 10 return 0; 11 } 12 13 14 int func(int a, int b) { 15 static int m = 0, i = 2; 16 17 i += m + 1; 18 m = i + a + b; 19 20 return m; 21 }
运行结果
运行结果
task3.
1 #include <stdio.h> 2 long long func ( int n); 3 4 int main (){ 5 int n; 6 long long f; 7 8 while (scanf ("%d", &n) != EOF){ 9 f = func(n); 10 printf("n = %d, f = %11d \n", n, f); 11 } 12 13 return 0; 14 } 15 16 long long func(int n){ 17 static long long a, f; 18 int i; 19 a = 1; 20 for (i = 1; i<=n ; ++i){ 21 22 a = a*2; 23 } 24 f = a - 1; 25 return f; 26 }
运行结果
task.4
1 #include <stdio.h> 2 #include<math.h> 3 int func(int n, int m); 4 int main() { 5 int n, m; 6 while(scanf("%d%d", &n, &m) != EOF) 7 printf("n = %d, m = %d, ans = %d\n", n, m, func(n, m)); 8 return 0; 9 } 10 int func(int n, int m){ 11 if(m>n) 12 return 0; 13 else if(m==n||m==0) 14 return 1; 15 else 16 return func(n-1,m)+func(n-1,m-1); 17 }
task 5
#include <stdio.h> static int x; int main() { void hanoi(int n, char a,char b,char c); int m; while(scanf("%d", &m)!=EOF){ hanoi(m, 'A', 'B', 'C'); printf("一共移动了%d次\n",x); x=0; } return 0; } hanoi(int n, char a, char b, char c) { void move(char a, char c); if (n == 1) move(a, c); else { hanoi(n - 1, a, c, b); move(a, c); hanoi(n - 1, b, a, c); } x++; return x; } void move(char x, char y) { printf("%c-->%c\n", x, y); }
task6
1 #include <stdio.h> 2 #include <math.h> 3 long func(long s); 4 int main() { 5 long s, t; 6 printf("Enter a number: "); 7 while (scanf("%ld", &s) != EOF) { 8 t = func(s); 9 printf("new number is: %ld\n\n", t); 10 printf("Enter a number: "); 11 } 12 return 0; 13 } 14 #include<stdio.h> 15 long func(long x) 16 { 17 int n=10,m=0; 18 while (x) 19 { 20 int t=x%10; 21 if(t%2!=0) 22 { 23 m+=t*n/10; 24 n*=10; 25 } 26 x/=10; 27 } 28 return m; 29 }