实验3

#include <stdio.h>
#include <stdio.h>
#include <time.h>
#include <windows.h>
#define N 80

void printText(int line, int col, char text[]);
void printSpaces(int n);
void printBlankLines(int n);

int main() {
int line, col, i;
char text[N] = "hi,May~";
srand(time(0));
for (i = 1; i <= 10; ++i) {
line = rand() % 25;
col = rand() % 80;
printText(line, col, text);
Sleep(1000);
}
return 0;
}

void printSpaces(int n) {
int i;
for (i = 1; i <= n; ++i)
printf(" ");
}

void printBlankLines(int n) {
int i;
for (i = 1; i <= n; ++i)
printf("\n");
}

void printText(int line, int col, char text[]) {
printBlankLines(line - 1);
printSpaces(col - 1);
printf("%s", text);

}

  

 

#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!=%11d\n", i, fac(i));

	return 0;
}

long long fac(int n) {
	static long long p = 1;
	p = p * n;

	return p;
}

  

 

 

#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;
}

  

 

 

#include <stdio.h>
#include <stdlib.h>
long long fun(int n);

int main() {
	int n;
	long long f;
	while (scanf("%d", &n) != EOF) {
		f = fun(n);
		printf("n = %d, f = %lld\n", n, f);
	}
	system("pause");
	return 0;
}

long long fun(int n) {
	if (n == 1)
		return 1;
	else
		return fun(n - 1) * 2 + 1;
}

  

 

 

#include <stdio.h>
#include <math.h>
void hanoi(unsigned int n, char from, char temp, char to);
void moveplate(unsigned int n, char from, char to);

int main() {
	unsigned int n, t;
	while (scanf("%u", &n) != EOF) {
		hanoi(n, 'A', 'B', 'C');
		t = pow(2, n) - 1;
		printf("\n一共移动了%d次.\n\n", t);
	}
	return 0;
}

void hanoi(unsigned int n, char from, char temp, char to) {
	if (n == 1)
		moveplate(n, from, to);
	else {
		hanoi(n - 1, from, to, temp);
		moveplate(n, from, to);
		hanoi(n - 1, temp, from, to);
	}
}

void moveplate(unsigned int n, char from, char to) {
	printf("第%u个盘子:%c-->%c\n", n, from, to);
}

  

 

 

#include <stdio.h>
#include <math.h>
int is_prime(int n);

int main() {
	for (int j = 4; j <= 20; j += 2) {
		for (int k = 2; k <= j / 2; k++) {
			if (is_prime(k) == 0 && is_prime(j - k) == 0) {
				printf("%d=%d+%d\n", j, k, j - k);
				break;
			}

		}
	}
	return 0;
}

int is_prime(int n) {
	for (int i = 2; i <= sqrt(n); i++)
		if (n % i == 0)
			return 1;
	return 0;
}

  

 

 

#include <stdio.h>
#include <stdlib.h>
long fun(long s);

int main() {
	long s, t;
	printf("Enter a number:");
	while (scanf("%ld", &s) != EOF) {
		t = fun(s);
		printf("new number is:%ld\n\n", t);
		printf("Enter a number:");

	}


	system("pause");
}

long fun(long s) {
	long i, p, t = 0, x = 0, m;
	p = s;
	while (p != 0) {
		i = p % 10;
		if (i % 2 == 1)
			t = t * 10 + i;
		p /= 10;
	}
	while (t != 0) {
		m = t % 10;
		x = x * 10 + m;
		t /= 10;
	}

	return x;

}

  

 

posted @ 2022-04-22 16:10  Abigail#  阅读(34)  评论(1编辑  收藏  举报