C 語言 講義 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 A B C
變數宣告(完整版)
1. 變數型態
2. 變數宣告
建議在 main()
{
的下面開始寫,且要全部寫在一起
3. 例:
main( )
{
int a;
float b,c;
char d,e,f,g;
long h;
double k;
...
}
變數使用
變數與運算子1 : 運算子
優先順序 (可用小括號來改變優先順序):
例:
a=123 - 32 ;
例:
a=123;
b=10;
c= a - b;
例:
a=123 - 3 * 4 / ( 2 + 1 );
例:
a=123;
b=10;
c=a % b;
例:
a=123;
c= a*134 - 24 / 2 %3;
完整的例子:
#include<stdio.h>
main()
{
int a,b,c;
a=123;
b=10;
c=a-b;
printf("%d - %d = %d \n",a,b,c);
a=23;
b=10;
c=a%b;
printf("%d 求餘數 %d = %d \n",a,b,c);
c=134 - 24 / 2 %3;
printf("134 - 24 / 2 求餘數 3 = %d \n",c);
}
練習1: 試求 282 / 6 + ( 123 * 2 - 6 ) / 3 = ?
練習2: 試求 2341 除以 25 的 餘數 ?
練習3: 試求 1280 / 5 + ( 231 * 2 - 5 ) % 3 * 2 = ?
練習4: 試問 若皮蛋4個裝一小盒來賣,現有87個皮蛋,請問可以裝幾盒? 剩幾顆?
練習5: 試問 以100元的紙鈔,買13元的物品,要找幾個50元銅板?幾個10元銅板?幾個5元銅板?幾個1元銅板?
練習6: 試求 123456789012 + 231 = ?
變數與運算子 : 變數型態的轉換
在變數的前面加上(變數型態)
例:
int a,b;
float c;
a=123;
b=32;
c=(float)a / (float)b;
printf("%d / %d = %f \n",a,b,c);
完整的例子:
#include<stdio.h>
main()
{
int a,b,d;
float c;
a=123;
b=32;
c=(float)a / (float)b;
d=a/b;
printf("float divide: %d / %d = %f \n",a,b,c);
printf("integer divide: %d / %d = %d \n",a,b,d);
}
字元變數與字串變數 (難度:高)
字串變數可視為是字元變數的陣列
例:
char b; 字元變數
char a[20]; 字串變數
字串變數可視為是字元變數的陣列,但在變數宣告、變數使用、輸出(printf)、輸入(scanf)上都不同。
變數宣告:
char b; 字元變數
char a[20]; 字串變數
變數使用:
b='q'; 字元變數
strcpy(a,"Hello! Bye.."); 字串變數
輸出printf:
printf("%c \n",b); 字元變數
printf("%s \n",a); 字串變數
輸入scanf:
scanf("%c",&b); 字元變數
scanf("%s",a); 字串變數
完整的例子:
#include<stdio.h>
main()
{
char b;
char a[20];
b='q';
strcpy(a,"Hello! Bye..");
printf("%c \n",b);
printf("%s \n",a);
printf("Please input a char: ");
scanf("%c",&b);
printf("Please input a string: ");
scanf("%s",a);
printf("------------------- after input ------\n");
printf("%c \n",b);
printf("%s \n",a);
}
練習 1: 請設計一個程式,程式執行後,會要求輸入姓名? 身高? 並將結果輸出在螢幕上,如下的畫面
你的姓名是?Tom
你的身高是?174
你的姓名是 Tom, 體重是 174 公分
( 棕色字體 代表是使用者輸入的值)