C语言的基本数据类型
C语言的基本数据类型
浅谈变量操作(1)
- 编写程序比较常见的数据类型有int,double ,float,char,不同的数据类型所占内存字节数也不同,其他的数据类型参照书籍即可查找;
- C语言对字母的大小写很敏感,一个单词的大小写不同很可能就是两种变量的意思;
- 特别需要注意的是 ‘字符’ 与 **“字符串”**两种数据类型的赋值方法;
int a;
scanf("%d",&a);
printf("%d",a);
double a;
scanf("%lf",&a);
printf("%.3lf",a);
int a,b;
scanf("%d%d",&a,&b);
printf("%d",a+b);
熟悉以上三个例子,可以看出,变量是以某标识符为名字,其值是可以改变的量;
- 标识符是要满足C语言标识规则
- 变量需要先定义再使用(边定义边初始化)的顺序;
-入门目前所需要了解的就是加减乘除以及区域操作,还有关系运算符和逻辑运算符 - 算数运算操作的逻辑思维与数学上的一致;
这里重点描述自增与自减
“++,- -”,是首先单目运算符,它就包括例一个先赋值后自增和i++和先自增后赋值++i 如下面代码:
int i = 3,k=0;
k = (i++)+(i++)+(i++);
则 k=?
- 有人可能会认为k= 3+4+5 = 12;根据单目运算符的结合性“自右至左”实际上是C语言系统确认为9;
i++是先赋值,后自增,所以他先会取出 i 的原值3,紧接着对这三个i值相加为9,赋值给k,在经过给自己三次自增将i的值变为6;
那么下列的一个语句该如何理解呢?
int i=1,j=3.k=0;
k = i+++j;
它到底是(i++)+j呢?还是i+(++j)呢?
其实不管增样它是首先是一个二目运算吧!那么根据C语言编译处理将二目运算符的结合性方向“自左至右”解释为 ( i++)+j;,所以答案也是显而易见!
实例有:
#include<stdio.h>
void main()
{int x=023;//注意进制
printf("%d\n",--x);
}
#include<stdio.h>
void main()
{
int i,j,m,n;
i=8;j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d",i,j,m,n);
}
#include <stdio.h>
void main( )
{ int m=4;
if (++m>5) printf("%d\n",m--);
else printf("%d\n",--m);
}
自己先别直接复制到IDE运行答案,千万不要懒惰,自己动脑筋想一想,等有疑问再多上机敲一敲!!!!!!!