task1.c
#include<stdio.h>
#include<stdlib.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);
}
![]()
task.2
#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;
}
![]()
task.3
#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.4
#include<stdio.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",n,f);
}
return 0;
}
long long fun(int n)
{
static long long m;
if(n>=1&&n<=32)
{
m=2*fun(n-1)+1;
}
else if(n==0) m=0;
return m;
![]()
task.5
#include <stdio.h>
void hanoi(unsigned int n,char from,char temp,char to);
void moveplate(unsigned int n,char from,char to);
int i;
int main()
{
unsigned n;
while(scanf("%u",&n)!=EOF)
{
i=0;
hanoi(n,'A','B','C');
printf("\n一共移动%d次\n",i);
}
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 n,char from,char to)
{
i++;
printf("第%u个盘子:%c-->%c\n",n,from,to);
}
![]()
task.6
#include<stdio.h>
#include<math.h>
#include "stdio.h"
int is_prime(int a) //判断素数的函数
{
int j;
for(j=2;j<a;j++)
if(a%j==0)
return 0;
else
return 1;
}
int prime(int number)
{
int a=sqrt(number) ;
for(int i=2;i<=a;i++){
if(number%i==0)
return 0 ;
}
return 1 ;
}
int main()
{
int count=0,flag;
for(int i=2;i<=20;i++){
flag=0;
for(int j=2;j<i;j++){
for(int k=2;k<i;k++){
if(i%2==0&&prime(j)==1&&prime(k)==1&&i==j+k){
printf("%4d=%2d+%2d",i,j,k) ;
count++;
flag=1;
break ;
}
}
if(flag==1)
break;
}
printf("\n");
}
return 0;
}
![]()
#include <stdio.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: ");
}
return 0;
}
long fun(long s)
{
long i,j=1,k=0;
while(s!=0)
{
i=s%10;
if(i%2!=0)
{
k=k+i*j;
j=j*10;
}
s=s/10;
}
return k;
}
![]()