栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言第三天

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言第三天

C语言第三天

Gitee地址

Github地址

CSDN地址

文章目录
  • C语言第三天
    • 选择语句
    • 初识循环语句(while)
    • 函数
    • 数组
    • 操作符
      • 算数操作符
      • 移位操作符
      • 位操作符
      • 赋值操作符
      • 单目操作符
        • sizeof
        • ~
        • ++
      • 强制类型转换
      • 关系操作符
      • 逻辑操作符
      • 条件操作符
      • 其他操作符

时间顺流而下,生活逆水行舟

选择语句

不同的选择对应不同的结果

#include 
int main()
{
	int input=0;            //输入的值
	printf("加入我们:");
	printf("是否好好学习(1/0)?");
	scanf("%d",&input);
	if (input==1)
	{
		printf("你会找到心仪的工作n");
	}   //分支
	else
	{
		printf("还需要继续加油n");
	}   //分支{}可有可无
	return 0;
}

运行结果

初识循环语句(while)

需要进行重复性发生的事情

#include 
int main()
{
	int line=0; //定义一个line变量
	while(line<3000)
	{
	printf("学习写代码:%dn",line);  //%d显示行号
		line++; //打印一次,加一次line的数值
	}
	if (line==3000) //表示line等于3000时,跳出循环
	{
	printf("你可以找到一份好的工作n");
	}
	return 0;
}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YW7HxEPL-1656493120396)(img/while循环语句.png)]

函数

可以重复调用

//利用函数完成两个数的相加
#include 

int Add(int x,int y)   //定义一个函数,输入x,y
{
	int z=0;
	z=x+y;
	return z;
}
int main()
{
	int num1=0;
	int num2=0;
	scanf("%d%d",&num1,&num2);
	int sum=Add(num1,num2);  //引用函数
	printf("%dn",sum);
	return 0;
}

运行结果

数组

定义:一组相同类型的元素的集合

数组使用下标来访问,默认第一个元素下标为0,第二个元素下标为1,以此类推。

案例

#include 
int main()
{
	int arr[10]={1,2,3,4,5,6,7,8,9,10};  //定义一个数组,将1-10存起来
	int i=0;
	while (i<10)  //定义一个循环,打印出数组所有的内容
	{
		printf("%dn",arr[i]);
		i++;
	}
//	char ch[5]={'a','b','c','d'}; //不完全初始化,剩余的默认为0
	//数组使用下标来访问,默认第一个元素下标为0,第二个元素下标为1,以此类推。访问第一个元素:ch[0]
	return 0;
}

数组的运行结果

操作符 算数操作符

+,-,* ,/,%

  • 对于/来说。想要得到一个为小数的值,需要使用float来定义,使用%f来打印,同时除数与被除数需要至少有一个为小数,例如 :float a=9/2.0;即可得到结果为4.5

  • #include 
    int main()
    {
    	float a=9/2.0; //需要有一个数为小数。使用float类型
    	printf("%fn",a);
    	return 0;
    }
    //运行结果为4.5
    
  • %—取模(余),案例:int a=9%2;商4余1,所以结果为1

  • #include 
    int main()
    {
    	//float a=9/2.0; //需要有一个数为小数。使用float类型
    	int a=9%2;  //取模操作
    	printf("%dn",a);
    	return 0;
    }
    
移位操作符

例如:>>–右移操作符,<<—左移操作符,移动的是二进制位

#include 
int main()
{
//左移右移操作符
	int a=2;
	int b=a<<1;   //左移操作符,移动的是二进制位
	printf("%dn",b);
	return 0;
}
//运行结果为4
位操作符

& ----按位与

| ----按位或

^ —按位异或

赋值操作符

=,+=,-=,*=,/=,^=,|=,>>=,<<=

单目操作符

双目操作符:a+b,+有两个操作数。

单目操作符:只有一个操作数

0表示假,非零表示真,将假变成真的时候,为1

符号含义
!取反操作
-负值
+正值
&取地址
sizeof操作数的类型长度(以字节为单位)
~对一个数的二进制位按取反
–前置,后置–
++前置、后置++,先++得出结果,在赋值给变量使用
*间接访问操作符
(类型)强制类型转换
sizeof
	#include 
int main()
{
	int a=10; //表示为真
	printf("%dn",!a);  //!a取反,结果为0

	return 0;
}

sizefo是一个操作符,计算类型或者变量的大小,也可以计算数组的大小,不是函数

计算数组的大小

#include 
int main()
{
//计算数组的大小
	int arr[10]={ 0 };
	int sz;
	printf("%dn",sizeof(arr)); //计算的是数组的总大小,单位是字节,一个int类型为4字节,所以此处为40字节
	printf("%dn",sizeof(arr[0]));//结果为4
	sz = sizeof(arr)/sizeof(arr[0]);
	printf("%dn",sz);  //结果为10
	return 0;
}

运行结果

~

~按二进制位取反,把所有的二进制中数字,1变成0,0变成1

数据在内存中存的是补码,一个整数的二进制表示有三种:原码,反码,补码

-1的 源码:10000000000000000000000000000001 符号位不变,其他位取反

​ 反码:11111111111111111111111111111110

​ 补码:11111111111111111111111111111111

正整数:原码,反码,补码相同

#include 
int main()
{
	int a=0;
	printf("%dn",~a); // 结果未-1,~按二进制位取反,把所有的二进制中数字,1变成0,0变成1
	return 0;
}
//运行结果-1
++

先++得出结果,在赋值给变量使用

后置++是先赋值给变量使用,再++

#include 
int main()
{
	int a=10;
	int b=++a;//前置++,先++计算出结果,再赋值给变量
	//后置++是先赋值给变量使用,再++
	printf("%dn",b);
	printf("%dn",a);
	return 0;
}

强制类型转换
#include 
int main()
{
	int a=(int)3.14;  //强制将浮点型转化成整形,输出结果为3,不添加强制转换会出现警告,将会丢失精度
	printf("%dn",a);
	return 0;
}
关系操作符
符号含义
>大于
<小于
>=大于等于
<=小于等于
!=不等于
==相等
逻辑操作符

&& 逻辑或

#include 
int main()
{
	int a=3;
	int b=5;
	int c=a&&b;//即两边都为真的时候,结果为真,如果有一个为0,结果就为假
	printf("%dn",c);  //输出结果为1真
	return 0;
}

|| 逻辑与

#include 
int main()
{
	int a=3;
	int b=0;
	int d=a||b;//逻辑或,即一个为真的时候,结果就为真
	 printf("%dn",d);//输出结果为1真
	return 0;
}
条件操作符

exp1?exp2:exp3

exp1成立,exp2计算,整个表达式的结构是:exp2的结果

exp1不成立,exp3计算,整个表达式的结构是:exp3的结果

#include 
int main()
{
	int a=0;
	int b=3;
	int max=0;
  //可以写成max=a>b?a:b;
	max=a>b?a:b;
	printf("%dn",max); //输出结果3
	return 0;
}

逗号表达式,逗号隔开的一段表达式

逗号表达式,是从左向右依次计算的,整个表达式的结果是最后一个表达式的结果

#include 
int main()
{
		int a=0;
		int b=3;
		int c=5;
		int d=(a=b+2,c=a-4,b=c+2);
		//逗号表达式,是从左向右依次计算的,整个表达式的结果是最后一个表达式的结果
		printf("%dn",d);  //结果为3
		return 0;
}
其他操作符

[3]:下标引用操作符,取数组的第三个参数

():函数调用操作符,调用函数的时候,函数后面的()就是函数调用的函数操作符

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997191.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号