//test1()打印空心菱型
// test2()随机产生[20,100]取最大值
// test3()打印100以内的质数
//
// test4()利用宏定义比较3个数大小
//test5() 递归实现4!
//
// main.m
// C21 TEST
//
// Created by dq on 15/7/16.
// Copyright (c) 2015年 dq. All rights reserved.
//
#import <Foundation/Foundation.h>
#define MAX1(a1,b1,c1) {int b[3];b[0]=a1;b[1]=b1;b[2]=c1;for(int i=0;i<3;i++){for(int j=i+1;j<3;j++){ int temp;if(a[i]<a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}}}}
void test1(){
int lineNum = 7;
for (int i = 0; i<lineNum;i++) {
if (i<=lineNum/2) {
for (int i1 = 0; i1<lineNum/2-i; i1++) {
printf(" ");
}
printf("* ");
for (int j = 0; j<i+1-2; j++) {
printf(" ");
}
if (i!=0) {
printf("* ");}
printf("\n");
}
else
{
for (int i1 = 0; i1<=i-lineNum/2-1; i1++) {
printf(" ");
}
printf("* ");
for (int j=0; j<lineNum-i-2; j++)
{
printf(" ");
}
if (i!=lineNum-1) {
printf("* ");}
printf("\n");
}
}
}
void test2(){
int num;
int max=0;
srand((unsigned)time(NULL));
for (int i=0; i<=20; i++) {
// num =arc4random()%100+20;
// srand(1);
num = rand()%91+20;
if(num>max)
{
max =num;
}
printf("%d\n",num);
}
printf("++++%d",max);
}
void test3()
{
for ( int i=2; i<=100; i++) {
if(i==2)
{
printf("2\n");
}
for (int j=2; j<=(int)sqrt(i)+1; j++) {
if(i%j==0)
{
break;
}
if(j==(int)sqrt(i)+1)
{
printf("%d\n",i);
}
}
}
}
void test4()
{
int a[3];
for (int i=0; i<3; i++) {
printf("请输入数字");
scanf("%d",&a[i]);
}
MAX1(a[0],a[1],a[2])
printf("%d",a[0]);
}
int fun(int n);
void test5(){
int n=4,sum;
sum =fun(n);
printf("结果为%d",sum);
}
int fun(int n)
{
if(n>1)
{
return n*fun(n-1);
}
else{
return 1;
}
}
int main(int argc, const char * argv[]) {
@autoreleasepool {
//test1();//打印空心菱型
// test2();// s随机产生[20,100]取最大值
// test3();//打印100以内的质数
//
// test4();//利用宏定义比较3个数大小
test5();// 递归实现4!
return 0;
}
}