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 ");
}
相關文章
相關標籤/搜索