41223208 cp2023

  • Home
    • SMap
    • reveal
    • blog
  • About
  • w5
  • w6
  • w7
  • ANSIC
  • c_ex
    • 練習一
    • 練習二
  • w11
  • w13
  • w15
  • w16
  • Brython
  • 期末總結
  • 課程心得
c_ex << Previous Next >> 練習二

練習一

1.(||)運算元傳回值與 (&&) 一樣, 但不同的是, 當 (||) 運算元兩邊的運算子之值都為 0 時, 則會傳回 0, 否則傳回 1

/* ====================
   邏輯或運算子。
==================== */
#include <stdio.h>

void main()
{
    printf("%d\n", 1 || 0);
    printf("%d\n", 0 || 0);
    printf("%d\n", 2 || 2);
}

2.sizeof( type ) 取得特定型別的 size

/* ====================
   sizeof 的範例。
==================== */
#include <stdio.h>

void main()
{
    char a;
    printf("int 的大小為 %d \n", sizeof(int));
    printf("char a 的大小為 %d \n", sizeof(a));
}

3.C 有3個邏輯運算元, 基本上常與條件判斷運算合用

/* ====================
   邏輯非運算子。
==================== */
#include <stdio.h>

void main()
{
    int a;
    a = 3;
    printf("%d\n", !a);
    a = 0;
    printf("%d\n", !a);
}

4.位元運算元

/* ====================
   位元運算子的範例。
==================== */
#include<stdio.h>

void main()
{
    int a, b;
    a = 15;
    b = 1;

    printf("%d \n", a | b ); /* a OR b */
    printf("%d \n", a & b ); /* a AND b */
    printf("%d \n", a ^ b ); /* a XOR b */
    printf("%d \n", a << 1 ); /* a 位元左移 1 位 */
    printf("%d \n", a >> 1 ); /* a 位元右移一位 */
    printf("%d \n", ~a ); /* A 的補數運算 */
}

5.關係運算元

/* ====================
   關係運算子的範例。
==================== */
#include <stdio.h>

int main()
{
    int a = 10, b = 5;

    printf(" a == b 是 %d \n", a == b);
    printf(" a > b 是 %d \n", a > b);
    printf(" a < b 是 %d \n", a < b);
    printf(" a >= b 是 %d \n", a >= b);
    printf(" a <= b 是 %d \n", a <= b);
    printf(" a != b 是 %d \n", a != b);

    printf("\n");

    b = 10;

    printf(" a == b 是 %d \n", a == b);
    printf(" a > b 是 %d \n", a > b);
    printf(" a < b 是 %d \n", a < b);
    printf(" a >= b 是 %d \n", a >= b);
    printf(" a <= b 是 %d \n", a <= b);
    printf(" a != b 是 %d \n", a != b);

    return 0;
}

6.算術運算元

/* ====================
   基本運算範例。
==================== */
#include<stdio.h>

int main()
{
    int a, b;
    a = 10; 
    b = 3;

    printf("%d \n", a * b );  /* 乘法 */
    printf("%d \n", a / b );  /* 除法 */
    printf("%d \n", a + b );  /* 加法 */
    printf("%d \n", a - b );  /* 減法 */
    printf("%d \n", a % b );  /* 取餘數 */

    return 0;
}

7.C 的基本型態 

/* ====================
   變數宣告的例子 2。
==================== */
int main()
{
    /* 變數宣告 */
    int a;
    int A;
    int b, c;

    a = 1;
    A = 8;
    b = 2;
    c = A - a + b; /* 先計算 A - a + b,將結果傳回給 c */
    printf("%d", c); /* 使用 printf 印出 c 這個整數型態的變數 */

    return 0;
}

8.C 的基本型態 

/* ====================
   變數宣告的例子 3。
==================== */
#include <stdio.h>

int main()
{
    int a = 1;
    int A = 8;
    int b = 2, c;

    c = A - a + b;

    /* 輸出 a, A, b, c 到螢幕 */
    printf("a = %d, A = %d, b = %d, c = %d ", a, A, b, c);

    return 0;
}

9.C 的浮點數

#include <stdio.h>

void main()
{
    float a = 0.5;
    double b = 1.2;
    int c = 3;

    b = b + a + c;

    /* 輸出 a, b, c 到螢幕 */
    printf(" a = %3.1f, b = %3.1f, c = %d ", a, b, c);
}

10.C 的輸出與輸入的函數

/* =========================
   輸入一個整數
========================= */
#include <stdio.h>

int main()
{
    int i;
    printf("輸入一個整數:");
    scanf("%d", &i); /* 在變數 i 的前面加上 &(位址運算元) */
    printf("輸入的數字是 %d", i);

    return 0;
}

11.使用 C 的標準輸出函數

/* ====================
   印出你好,世界!
==================== */
#include <stdio.h>

void main()
{
    /* 印出 Hello World! */
    printf("Hello World!");
}

12.使用 C 的標準輸出函數

/* ====================
   打印出你好,世界!再见再见。
==================== */
#include <stdio.h>

int main()
{
    /* 打印出 Hello World! 再见再见 */
    printf("Hello World! ");
    printf("Bye ");
    printf("Bye");
    return 0;
}

13.C的字元

/* ====================
   字符示例 1
==================== */
#include <stdio.h>

int main()
{
    char x, y;
    x = 'a';
    y = (char)97;
    /* 输出 x, y, x,最后一个是以 ASCII 值显示 y */
    printf(" x = %c, y = %c, y 的 ASCII 值 = %d", x, y, y);
    return 0;
}

14.邏輯運算元

/* ====================
   邏輯非(Logical NOT)。
==================== */
#include <stdio.h>

void main()
{
    int a;
    a = 3;
    printf("%d\n", !a);
    a = 0;
    printf("%d\n", !a);
}

15.C 的 Array (陣列)

/* ====================
   陣列 - 1。
==================== */
#include <stdio.h>

int main()
{
    int grade[5]; /* 大小為5的陣列 */
    int i;

    grade[0] = 75; /* 第1個元素 */
    grade[1] = 80; /* 第2個元素 */
    grade[2] = 85; /* 第3個元素 */
    grade[3] = 70; /* 第4個元素 */
    grade[4] = 90; /* 第5個元素 */

    for (i = 0; i < 5; i++)
    {
        printf("第 %d 個數字 = %d\n", i, grade[i]);
    }

16.C 的流程控制

/* ====================
   do - while 循環。
==================== */
#include <stdio.h>

void main()
{
    int i, j;
    i = 0;
    j = 10; /* 在循環之外先設定初始值 */

    do
    {
        printf("i = %d, ", i);
        printf("j = %d \n", j);
        i++;
        j++;
    } while (i < 6); /* 檢查條件的地方 */
}

17.函數 (Function)

/* ====================
   函數 (2)
==================== */
#include <stdio.h>

float circle(int r); /* 宣告 circle 的原型 */

void main()
{
    float answer;
    answer = circle(8);
    printf("圓周長度是 %f", answer);
}

/* ====================
   circle 函數,計算圓的周長
==================== */
float circle(int r)
{
    float result;
    result = 3.14159 * (double)2 * r;
    return (result);
}

18.C 的流程控制

/* ====================
   switch - case 的示例 1。
==================== */
#include <stdio.h>

void main()
{
    char c;
    printf("輸入一個字符:");
    scanf("%c", &c);

    switch (c)
    {
    case 'a':
        printf("你按下了 a ");
        break;
    case 'b':
        printf("你按下了 b ");
        break;
    case 'c':
        printf("你按下了 c ");
        break;
    default:
        printf("不是 a、b、c ");
        break;
    }
}

19.邏輯運算元

/* ====================
   邏輯 AND。
==================== */
#include <stdio.h>

void main()
{
    printf("%d\n", 1 && 3);
    printf("%d\n", 0 && 0);
    printf("%d\n", 2 && 2);
}

20.C 的流程控制

/* ====================
   99 乘法表。
==================== */
#include <stdio.h>

int main()
{
    int x, y;

    for (x = 1; x <= 9; x++)
    {
        for (y = 1; y <= 9; y++)
        {
            printf("%d ", x * y);
        }
        printf("\n");
    }

    return 0;
}


c_ex << Previous Next >> 練習二

Copyright © All rights reserved | This template is made with by Colorlib