两类命令
到目前为止你看到的所有命令都可以分为以下两类。
第一类——做事情
C语言中大部分命令都是语句。简单的语句是一些动作,它们做事情,或告诉我们事情。你已经见过定义变量的语句、从键盘读取输入的语句以及向屏幕显示数据的语句。
#include<stdio.h>
#include<stdlib.h>
int main()
{
char card_name[3]; //*定义变量的语句
puts("输入牌名:"); //*向屏幕显示数据的语句
scanf("%2s",card_name); //*从键盘读取输入的语句
}
/*当把很多语句组合在一起,就创建出了块语句。**块语句是由花括号围起来的一组命令**
{ … }这些命令被花括号包围,因此形成了块语句。
第二类——只有条件为真才去做事情
例如 if 这样的控制语句在运行代码之前会检查条件:
if(value_of_hand<=16) /*这是条件。
hit(); /*如果条件为真,就执行这条语句。
else
stand(); /*如果条件为假,就执行这条语句
当条件为真时,if 语句一般要做好几件事情,因此 if 语句通常和块语句一起使用:
if(dealer_card == 6){
double_down();
hit(); /*如果条件为真,这两条命令都会运行。它们组合进了一条块语句中。
}
到目前为止的代码
/*
* 计算牌面点数的程序。
* 使用“拉斯维加斯公开许可证”。
* 学院21点扑克游戏小组。
* /
#include<stdio.h>
#include<stdlib.h>
int main()
{
char card_name[3];
puts("输入牌名:");
scanf("%2s",card_name);
int val = 0;
if(card_name[0] == 'K'){
val = 10;
}else if(card_name[0] =='Q'){
val = 10;
}else if(card_name[0] =='J'){
val = 10;
}else if(card_name[0] =='A'){
val = 11;
}else{
val = atoi(card_name);
}
printf("这张牌的点数是:%i\n",val);
return 0;
}