目录
目录
3. 存放在字符类型中的变量,都可以被解释为 ASCII 字符表中的对应字符
1. 字符类型事实上是一个特殊的整数类型
字符类型事实上是一个特殊的整型,因此它也有取值范围,signed char 的取值范围是 -128 ~ 127;unsigned char 的取值范围是 0 ~ 255。
2. 字符类型与普通整数类型的不同之处
C 标准规定普通整数类型默认使用 signed 修饰符,但没有规定 char 的默认修饰符。因此,使用 signed 或 unsigned 修饰符,是由编译系统自行决定。
3. 存放在字符类型中的变量,都可以被解释为 ASCII 字符表中的对应字符
标准 ASCII 字符表使用7位二进制数来表示所有的大写和小写字母,数字 0 到 9、标点符号, 以及在美式英语中使用的特殊控制字符。
其中,ASCII 字符表上的数字 0 ~ 31 以及 127(共 33 个)分配给了控制字符,用于控制像打印机等一些外围设备。这些是看不到的。数字 32 ~ 126 分配给了能在键盘上找到的字符,这些是所见即所得的。
3. 字符串
C 语言没有专门为存储字符串设计一个单独的类型,因为没必要。我们之前已经说过,字符串事实上就是一串字符。所以只需要在内存中找一块空间,然后存放一串字符类型的变量即可。
声明字符串的语法:
char 变量名[数量];
对其进行赋值,事实上就是对这一块空间里边的每一个字符变量进行赋值。我们通过索引号来获得每个字符变量的空间。
变量名[索引号] = 字符;
比如:
char a[] = "FishC";
4.课后习题(编程题)
第一题
写一个华氏度到摄氏度的转换程序,用户输入华氏度,程序计算并输出对应的摄氏度。
注意:1摄氏度 =(1华氏度 – 32)* 5 / 9]
代码
#include <stdio.h>
int main()
{
float h,s;
printf("请输入华氏度:");
scanf("%f",&h);
s = (h-32)*5/9;
printf("转化为摄氏度是:%.2f\n",s);
return 0;
}
结果
第二题
已知结果写代码:
代码
#include <stdio.h>
int main()
{
char n;
float h,w;
printf("请输入您的姓名:");
scanf("%s",&n);
printf("请输入您的身高(cm):");
scanf("%f",&h);
printf("请输入您的体重(kg):");
scanf("%f",&w);
printf("=========正在为您转换============\n");
h = h / 2.54;
w = w / 0.453;
printf("小王的身高%.2f(in),体重是%.2f(lb)\n",h,w);
return 0;
}
~