Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions level1/hanoi.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#include <stdio.h>
void Move(int n,char a,char b);
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);
}
}
int x;
void Move(int n,char a,char b)
{
x++;
printf("The %d step: Move No.%d dish from %c post to %c post \n" ,x,n,a,b);
}
int main()
{
int n;
printf("Please input the number of floor:\n");
scanf(" %d",&n);
Hanoi(n, 'A', 'B', 'C');
return 0;
}

32 changes: 32 additions & 0 deletions level1/p01_runningLetter/main.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>

int main()
{
for (int j = 1; j < 60; j++)
{

Sleep(100);
system("cls");
for (int i = 0; i < j;i++)
{
printf(" ");
}
printf("abcdefg");
}

for (int j = 60; j > 1; j--)
{

Sleep(100);
system("cls");
for (int i = 1; i < j; i++)
{
printf(" ");
}
printf("abcdefg");
}
getchar();
return 0;
}
18 changes: 18 additions & 0 deletions level1/p02_isPrime/finished_is_prime
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main()
{
int i,n,k,j;
scanf("%d",&n);
k=n/2;
for(i=2;i<k;i++);
j=n%i;
if(n==2)
printf("2 is prime\n");
else if(j==0)
printf("%d isn't prime\n",n);
else
printf("%d is prime\n",n);
return 0;
}
15 changes: 15 additions & 0 deletions level1/p04_ narcissus/水仙花数
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#include<stdio.h>
int main()
{
int a,b,c,i;
for(i=100;i<1000;i++)
{
a = i % 10;
b = ((i - a) / 10) % 10;
c = (i - a - 10 * b) / 100;
if ((a * a * a + b * b * b + c * c * c) == i)
printf("%d ", i);
}
return 0;

}
26 changes: 26 additions & 0 deletions level1/p06_Goldbach/Finished_Goldbach
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int prime(int x)
{
int i;
for(i=2;i<x;i++)
{
if(x%i==0)return 0;
}
return 1;
}
int main()
{
int i,j;
for(i=1;i<=50;i++)
{
for(j=2;j<2*i;j++)
if(prime(j)&&prime(2*i-j))
{
printf("%d=%d+%d\n",2*i,j,2*i-j);
break;
}
}
return 0;
}
31 changes: 31 additions & 0 deletions level1/p07_encrypt_decrypt/encrypt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void encry(char *inpute,unsigned long n)
{
for(int i=0;i<n;i++)
{
inpute[i]=inpute[i]*2;
}
}
void decry(char *output,unsigned long n)
{
for(int i=0;i<n;i++)
{
output[i]=output[i]/2;

}
}
int main()
{
char input[10001];
scanf("%s",&input);
unsigned long l_input=strlen(input);
encry(input, l_input);
printf("%s\n",input);
getchar();
decry(input, l_input);
getchar();
printf("%s\n",input);
return 0;
}
5 changes: 0 additions & 5 deletions level1/p08_hanoi/README.md

This file was deleted.

29 changes: 29 additions & 0 deletions level1/p08_hanoi/hanoi
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#include<stdio.h>
void Move(int n,char a,char b);
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);
}
}
int x;
void Move(int n,char a,char b)
{
x++;
printf("The %d step: Move No.%d dish from %c post to %c post \n" ,x,n,a,b);
}
int main()
{
int n;
printf("Please input the number of floor:\n");
scanf(" %d",&n);
Hanoi(n, 'A', 'B', 'C');
return 0;
}
32 changes: 32 additions & 0 deletions level1/p08_hanoi/hanoi.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
### 功能要求:

1.汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。
#include <stdio.h>
void Move(int n,char a,char b);
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);
}
}
int x;
void Move(int n,char a,char b)
{
x++;
printf("The %d step: Move No.%d dish from %c post to %c post \n" ,x,n,a,b);
}
int main()
{
int n;
printf("Please input the number of floor:\n");
scanf(" %d",&n);
Hanoi(n, 'A', 'B', 'C');
return 0;
}