scanf

scanf格式化

scanf("格式化", &記憶體位址);
  • 第1參數放入格式化字串。
  • 第2參數放人記憶體位址。
基本型態 格式化字串
char name[] %s
int %d
double %lf
char %c

注意!要取得char字元,要scanf2次才取得到。

1
2
  scanf("%c",&gender);
  scanf("%c", &gender);

注意!char字串陣列,name陣列名,本身就是陣列索引[0]&name[0]的記憶體位址。
不需要用&name

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main() {
  char name[10] = "";
  int age = 0;
  double salary = 0.0;
  char gender = ' ';
  printf("請輸入名字");
  scanf("%s", name);

  printf("請輸入年齡");
  scanf("%d", &age);
  
  printf("請輸入薪水");
  scanf("%lf", &salary);
  
  // F是女 M是男
  printf("請輸入性別:F 或 M");
  scanf("%c",&gender);
  scanf("%c", &gender);
  
  printf("name= %s age= %d sal= %.2f gender = %c \n",name ,age ,salary ,gender);
  return 0;
}
請輸入名字test
請輸入年齡20
請輸入薪水15.5
請輸入性別:F
name= test age= 20 sal= 15.50 gender = F 

results matching ""

    No results matching ""