zoukankan      html  css  js  c++  java
  • C lang:Definition function

    Ax_note

    in parameter for show_n_char() is formal parameter


    Aa_Definition function

    #include <stdio.h>
    #include <string.h>
    #define NAME "ENOMOTHEM, INC."
    #define ADDRESS "101 Beijing China"
    #define PLACE "Megapolis, CA 00000"
    #define WIDTH 40
    #define WJXNUM 40
    #define SPACE ' '
    
    // function protype
    void show_n_char(char ch, int num);
    
    int main(void)
    {
        int spaces;
    // function call
        show_n_char('A',WJXNUM);
        printf("
    ");
        putchar('
    ');
        show_n_char('*', WIDTH);
        putchar('
    ');
        show_n_char(SPACE, 12);
        printf("%s
    ", NAME);
        spaces = (WIDTH - strlen(ADDRESS)) / 2;
    
        show_n_char(SPACE, spaces);
        printf("%s
    ", ADDRESS);
        show_n_char(SPACE, (WIDTH - strlen(PLACE)) / 2);
    
        printf("%s
    ", PLACE);
        show_n_char('*', WIDTH);
        putchar('
    ');
    
        return 0;
    }
    //function definition
    void show_n_char (char ch, int num)
    {
        int count;
    
        for (count = 1; count <= num; count++)
            putchar(ch);
    }
    

    Ab_Used return transport parameter             What F*k

    #include <stdio.h>
    int imin(int, int);
    
    int main(void)
    {
        int evil1, evil2;
    
        printf("Enter a pair of integers (q to quit):
    ");
    
        while (scanf("%d %d", &evil1, &evil2) == 2)
        {
            printf("The lesser of %d and %d is %d.
    ", evil1, evil2, imin(evil1, evil2));
            printf("Enter a pair of integers (q to quit):
    ");
    
        }
        printf("Bye.
    ");
    
        return 0;
    }
    
    int imin(int n, int m)
    {
        int min;
    
        if (n < m)
            min = n;
        else
            min = m;
    
        return min;
    }
    
    


    Ac_Tail recursion and for relize factorial

    Ac_a Factorial

    • 0!=1
    • 1×2×3×4×…×(n-2)×(n-1)×n=n!
    #include <stdio.h>
    long fact(int n);
    long rfact(int n);
    int main(void)
    {
        int num;
    
        printf("This program calculatess factorials.
    ");
        printf("Enter a value in the range 0-12 (q to quit):
    ");
        while(scanf("%d", &num) == 1)
        {
            if (num < 0)
                printf("No negative numbers, please.
    ");
            else if (num > 12)
                printf("Keep input under 13.
    ");
            else
            {
                printf("loop: %d factorial = %ld
    ", num, fact(num));
                printf("recursion:%d factorial =%ld
    ", num, rfact(num));
            }
            printf("Enter a value in the range 0-12 (q to quit):
    ");
    
        }
        printf("Bye.
    ");
        return 0;
    }
    
    long fact(int n)
    {
        long ans;
    
        for (ans = 1; n > 1; n--)
            ans *= n;
    
        return ans;
    }
    long rfact(int n)
    {
        long ans;
    
        if (n > 0)
            ans = n * rfact(n - 1);
        else
            ans = 1;
        return ans;
    }
    
    


    Ad_recursion and inverted order

    eg.
    1. Oct 234
    = 2x102+3x101+4x10^0
    2. Bin 101
    =1x22+0x21+1x2^0
    3.5%3 = 2(1 to 2)
    moda%b=a-(int)(a/b)*b

    #include <stdio.h>
    
    void to_binary(unsigned long n);
    
    int main(void)
    {
        unsigned long number;
        printf("Enter an integer (q to quit):
    ");
        while (scanf("%lu", &number) ==1)
        {
            printf("Binary equivalent:");
            to_binary(number);
            putchar('
    ');
            printf("Enter an integet (q to quit):
    ");
        }
    
        return 0;
    }
    
    void to_binary(unsigned long n)
    {
        int r;
    
        r =n % 2;
        if (n >= 2)
            to_binary(n /2);
        putchar(r == 0 ? '0' : '1');
    
        return;
    }
    
    

  • 相关阅读:
    redis操作
    MySQL架构
    MySQL查询缓存
    MySQL数据备份与还原
    Sql性能优化
    Notepad++中每一行的开头和结尾添加引号?
    分组聚合
    Python3用scan和delete命令批量清理redis数据
    VUE+django
    python转化13位时间戳
  • 原文地址:https://www.cnblogs.com/enomothem/p/11704721.html
Copyright © 2011-2022 走看看