C语言入门 3
临近期末岛主们开始复习了吗?大家一定要为考试做好准备哟!
小信这次继续分享C语言基础知识,希望对岛主们的复习也有帮助
不可改变的常量
*在程序执行过程中,值不发生改变的量称为常量。
C语言的常量可以分为直接常量和符号常量。
*直接常量也称为字面量,是可以直接拿来使用,无需说明的量,比如:
整型常量:13、0、-13;
实型常量:13.33、-24.4;
字符常量:‘a’、‘M’
字符串常量:”I love imooc!”
在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。符号常量在使用之前必须先定义,其一般形式为:
#define 标识符 常量值
自动类型转换
数据类型存在自动转换的情况.
自动转换发生在不同数据类型运算时,在编译的时候自动完成
char类型数据转换为int类型数据遵循ASCII码中的对应值.
注:
*字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换
*char可以转换为int,int可以转换为double,char可以转换为double。但是不可以反向。
强制类型转换
强制类型转换是通过定义类型转换运算来实现的。其一般形式为:
(数据类型) (表达式)
其作用是把表达式的运算结果强制转换成类型说明符所表示的类型
在使用强制转换时应注意以下问题:
数据类型和表达式都必须加括号, 如把(int)(x/2+y)写成(int)x/2+y则成了把x转换成int型之后再除2再与y相加了。
转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换。
强制转换后的运算结果不遵循四舍五入原则。
这次给大家的代码是:比较两个字符串大小。
# include
int compare(char * s1,char * s2)
{
char * p1;
char * p2;
for (p1=s1,p2=s2;*p1!='\0' || *p2!='\0';++p1,++p2)
{
if (*p1>*p2)
{
return 1;
break;
}
if (*p1==*p2)
{
continue;
}
if (*p1{
return -1;
break;
}
}
if (*p1==*p2)
return 0;
}
int main(void)
{
char str1[50];
char str2[50];
int t;
printf("请输入字符串1:");
gets(str1);
printf("请输入字符串2:");
gets(str2);
t = compare(str1,str2);
if (t>0)
{
printf("字符串1>字符串2\n");
}
if (t==0)
{
printf("字符串1=字符串2\n");
}
if (t<0)
{
printf("字符串1}
return 0;}
当我任意的输入两个字符串&#xff0c;就会自动比较两字符串大小
这次的C语言知识分享就到这里
岛主们可以对小信的图文提出意见或建议
小信会根据你们的建议改进图文
争取为大家提供更好的
知识干货
制作&#xff1a;祝福儿 刘俊杰
校对&#xff1a;盛凯旋
审核&#xff1a;程杨 江晓莉 毕冉