1.3

0--数字0’0‘--字符0--ASCII值为48\0--字符--ASCII值为0EOF-- End Of File 文件的结束标志 值是-1 通过左键选中右键下拉栏中查看定义

关于ASCII的实例*2

输入ASCII码值,输出对应字符

int main() 
{
    int c;
    scanf("%d", &c);
    printf("%c\n", c);
    return 0;

输入数值,输出对应ASCII码

int main()
{
    char c;
    scanf("%c", &c);
    printf("%d\n", c);
    return 0;
}

算数操作符 + - * / %

相关实例

int main()
{
    int a = 7 / 2;
    int b = 7 % 2;
    float = 7.0/2;
//除号'/'的两端都是整数的时候,执行整数除法,结果也是整数,小数部分会被舍弃
//如果两端只要有一个是小数,结果就是小数
//'%'取模的两侧只能都是整数
//如果两端只要有一个是小数,结果就是小数
    printf("%d\n", a);//3
    printf("%d\n", b);//1 取模/取余 
    printf("%f\n", c);//3.5 此时进行浮点数除法
    printf("%.1f\n", c);//小数点后保留一位
    return 0;
}

赋值操作符及其相关实例

int main()
{
	int a = 0;//初始化
	a = 20;   //赋值
	a += 3;   //a = a + 3//值为23
	a -= 5;   //a = a - 5//值为18
	a *= 2;   //a = a * 2//值为36
	a /= 4;   //a = a / 4//值为9
	a %= 4;   //a = a % 4//值为1

	return 0;
}


移位操作符

移位操作符 >> <<

位操作符

位操作符 & ^ |

双目操作符

a+b;
a-b;
a*b;
a/b;
a%b;

有两个参数参与、

单目操作符

! 逻辑反操作正负号+-& 取地址sizeof 操作数的类型长度~ 对一个数的二进制按位取反-- 前置、后置--++ 前置、后置++间接访问操作符(解引用操作符)*(类型) 强制类型转换

相关实例 !

\\C语言中  0表示假  非零表示真
 int main()
{
	int  flag = 1;
	if (!flag)//flag为1,取反为0,所以为假
	{
		printf("hehe\n");
	}
	else
	{
		printf("hoho\n");
	}

	return 0;
}


if()若括号中为真,非零,执行if下{}中语句若括号中为假,即零,执行其他

相关实例 size of #3 相关size of

int main()
{
	int a = 10;
	printf("%d\n", sizeof(a));   //4
	printf("%d\n", sizeof (int));//4 
	printf("%d\n", sizeof a);    //4  sizeof 后直接加a未加括号也可以正常运行,更证明了sizeof是操作符而非函数
	int arr[10] = { 0 };
	printf("%d\n", sizeof(arr));//40,是整个数组的大小,数组中有10个元素,每个元素是4个字节
	printf("%d\n", sizeof(arr[0]));//4,是数组中第一个元素的大小
	printf("%d\n", sizeof(arr) / sizeof(arr[0]));//10,数组的大小/数组中第一个元素的大小=数组中元素的个数
	return 0;
}


相关实例 前++与后++

int main()
{
	int a = 10;
	int b = a++;
	//后置++,先赋值再++,等同int b = a; a = a + 1;

	printf("%d\n", b);
	printf("%d\n", a);
	return 0;
}
int main()
{
	int a = 10;
	int b = ++a;
	//前置++,先++再复制,等同a = a+1;int b = a; 

	printf("%d\n", b);
	printf("%d\n", a);
	return 0;
}

相关实例 强制类型转换

int main()
{
	int a = 3.14;
	//3.14是一个浮点数,编译器默认其为double类型,double类型的数赋值给int类型的变量,会丢失精度
	printf("%d\n", a);//3
	int a = (int)3.14;
	printf("%d\n", a);//3
	return 0;
}

关系操作符

> < >= <= == !=

int main()
{
	int a = 10;
	if (a == 1) //===是关系操作符,判断是否相等,相等为真非0,不等为假0
	{
		printf("hehe\n");
	}
	else
	{
		printf("haha\n");
	}

	return 0;
}

逻辑操作符

&& || ! 与或非

int main()
{ 
	int a = 10;
	int b = 20;
	if (a > 5 && b > 15)//&&逻辑与,两边都为真,结果为真
	{
		printf("hehe\n");
	}
	else
	{
		printf("haha\n");
	}
	return 0;	  
}

int main()
{ 
	int a = 10;
	int b = 20;
	if (a  && b )
		//&&逻辑与,两边都为真,结果为真
		//a和b都是非零,结果为真
	{
		printf("hehe\n");
	}
	else
	{
		printf("haha\n");
	}
	return 0;	  
}

int main()
{
	int a = 10;
	int b = 20;
	if (a > 5 || b > 15)//||逻辑或,两边有一个为真,结果为真
	{
		printf("hehe\n");
	}
	else
	{
		printf("haha\n");
	}
	return 0;
}

条件操作符

表达式1?表达式2:表达式3(三目操作符)如果表达式1为真,执行表达式2,否则执行表达式3

int main()
{
	int a = 10;
	int b = 20;
	int c = 0;
	c = a > b ? a : b;
	printf("%d\n", c);
	return 0; 
}

下标引用操作符 [ ]

int main()
{
	int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };
	arr[3] ;//[ ]就是下标引用操作符,用来访问数组中的元素,arr和3之间的[]的操作数
	int n = 3;
	arr[n] = 100;//n是变量,可以改变,arr[n]是数组中的第n个元素
	return 0;
}

函数调用操作符 ( )

int Add(int x, int y)
{
	return x+y;
}
int main()
{
	int a = 10;
	int b = 20;
	int sum = Add(a, b);//Add后的(),就是函数调用操作符,用来调用函数,Add,a,b都是操作数
	printf("%d\n", sum);
	return 0;
}

-> 指针成员访问操作符 此处不做讲解

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客企业服务