c函数基础知识

#include <stdio.h>
#include "stdbool.h"//C语言万恶的头文件  忘干净了
//返回参数  函数名  出入参数(形参)
float average (double a, double b)
{
    return (a+b)/2;//执行语句
}

void printfCode (int a ,int b)
{
    printf("打印结果是:%d/2",100%5);
}

void onlyPrintf (void)
{
    printf("输出");

}

bool primeNumber(int a)
{
    if (a<=1)
        return false;
    for (int i = 2;i*i<=a;i++)
        if (a % i == 0)
            return false;
    

    return true;
}
//函数申明
void classPrint ();

int sum_array(int a[],int n)
{
    int i,sum = 0;
    for (i = 0; i < n; i++) {
        sum += a[i];
    }
    return sum;
}

int fact (int n ,int m)
{
    if (m ==1)
    {
        return 1;
    }
    else
    {
        return n * fact( n,  m-1);//调用自身就是递归
    }
    
}

#define LEN 100
int main(int argc, const char * argv[]) {
    // insert code here...
    printf("Hello, World!\n");
//   函数调用
    
    //有返回值的
    float x = average(5,6);
    
    printf("%f \n",x);
//    无返回值 传参数的
    printfCode(100, 5);
    
//    无返回值无参数的
    onlyPrintf();
    
//    判定素数
    int prime;
    scanf("%d",&prime);
    primeNumber(prime);
    if (primeNumber(prime))
    {
        printf("判定素数%d\n",prime);
    }
    else
    {
        printf("no prime");
    }
    
    
    classPrint();
//传参数组
    int b[LEN],total;
//    total = sum_array(b[], LEN);   wrong
    total = sum_array(b,LEN);
    printf("数组的和%d",total);
    
//    递归函数
    int factNumber = fact(5, 3);
    printf("递归%d\n",factNumber);
    return 0;
}

void classPrint ()
{
    printf("when behind main\n ");
}


你可能感兴趣的:(c)