一些学C的笔记2

今天没学什么新东西就来总结一下遇到的问题吧;

关于求余运算符%

首先 确认一点所有的运算符是分双目和单目的
什么是双目呢,就是必须要两个量参与的
比如加法(+)
一般都要int a+ int b
所以可以发现大多数运算符都是双目的
当然也有单目,比如自增++ 还有赋值= 等等

其中双目的运算都会统一数据类型
统一数据类型都会根据精度来定
比如 int 的精度就没有 float高
所以当这边写一个简单的:
#include<stdio.h>
int main(){
	int a = 10;
	float b = 1.1;
	printf("%.f",a+b);
}

这个的返回值就是这样的

在这里插入图片描述

我们可以看见int + float 返回的是 float型数据
因为float数据的精度更高所以返回的是float

然后关于求余符号%
%这个符号只能作用于int型
那有人肯定要问了,诶我就要对浮点型数据进行求余怎么办呢
那你可以先把这个浮点数*10的n次方,知道其小数点后没数字,然后再求余
然后再除回去。
当然你也可以自己写一个求余
就比如求商之后再相减,同样可以实现效果。

关于变量

变量分为全局变量和局部变量
这个就要根据函数来说了
比如下面这个函数:
#include<stdio.h>
int sum(int a,int b){
	int i = a + b;
	return i;
}
int main(){
	int i = 1;
	int j = 2;
	printf("%d %d",i,sum(i,j));
}

就好比上面这个在第一个函数sum中 int a int b只是需要传递的参数
而i 就是局部变量 它只再sum这一个函数里生效
并不会影响到main里的i
同样
mian里定义的int i也不会影响到sum里的i

所以这种只在函数内部生效的变量就称为局部变量
而全局变量就是声明在函数外的变量了
就好比下面这个:
#include<stdio.h>
int i = 0;
int sum(int a,int b){
	i = a + b;
	return i;
}
int main(){
	i = 1;
	j = 2;
	printf("%d %d",i,sum(i,j));
}

这分别是两个程序的运行结果:
在这里插入图片描述
在这里插入图片描述

不难发现,下面的程序的i产生的全局的变化,这就是全局与局部的区别。
再说说声明常量
#define 常量名 值
常量就是怎么样的不会变就跟替换一样。

今天就这样吧,下次再见!

@3円2.18

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值