小白必看, 从0开始C语言(学好c, 一切皆有可能)

1.注释
# c语言中有两种注释
  //  c语言中有两种注释   单行注释
  /*c语言中有两种注释*/   多行注释
  
  
  # 从写到运行有四步
  gcc -E test.c -o test.i
  gcc -S test.i -o test.s
  gcc -C test.s -o test.o
  gcc test.o
2. 数据的类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2CsHuurq-1599623165612)(en-resource://database/622:1)]

1. 基本的数据类型 
        1. 字母:  char
        2. 数字;   
                1. 整数  : short int long
                2. 浮点类型: (带有小数的) float (单精度) double(双精度)
        3. 占用字节数的大小的测量方法:
                sizef()
                1. sizef(int) =====> 4
                            char ==>1
                            short ==>1
                            int ==>4
                            long ==>8
                            float ==>4
                            double ==>8
3. c 程序结构

C Hello World
实例C 程序主要包括以下部分:

  • 预处理器指令
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释

#include <stdio.h>
int main() 
{
    /* 我的第一个 C 程序 */ 
    printf("Hello, World! \n"); 
    return 0; 
}
  1. 程序的第一行 #include <stdio.h> 是预处理器指令,告诉 C 编译器在实际编译之前要包含 stdio.h 文件。

  2. 下一行 int main() 是主函数,程序从这里开始执行。

  3. 下一行 // 将会被编译器忽略,这里放置程序的注释内容。它们被称为程序的注释。

  4. 下一行 printf(…) 是 C 中另一个可用的函数,会在屏幕上显示消息 “Hello, World!”。

  5. 下一行 return 0; 终止 main() 函数,并返回值 0。

4. c 语言 常量和变量
1. 常量: 在程序的运行过程中, 不能发生变化的量, 就叫做常量
        'm'
        123
        3.14
        3.14f
2. 可以发生变量的量
        用之前一定要先进行定义
        
        数据类型 变量的名字;
        int age;
        int a;
        int b;
        int c;
        
        
        int a,b,c;
//  数据类型:
// char ---- > 存放字母
'a'
// 整数
// int
// short 
// long

// 小数
// float 
3.14f;
// double
3.45;

scanf 从键盘中获取数据

int num1;
int num2;
char sex;
scanf("/%d%d", &num1, &num2);
# scanf  变量,必须加 &

printf 输出数据


	int a,b,c;
	char sex;
	printf("%d  %d  %d   %c",a,b,c,sex);
5. 运算符
    + - *  /  %
    int num;
    num = 10/3; 结果 3.333333
    
    4%10; //4
    3%10;// 3
    
    赋值运算符
	=  通俗的讲: 把右边的结果先计算出来,然后赋值给左边的变量
	100=200+3543;


	复合赋值运算符
	num+=3;// 等价于 num=num+3;
	num+=1;// 等价于 num=num+1;

	自增/自减
	++
	num++;
	++num;// 完成对变量本身+1的有: num++/++num/num+=1/num=num+1

	num=3;
	//result = ++num;// num=result=4
	result = num++;//num=4,result = 3




	逗号运算符
	,

	a=11,b=22+a,c=33+b;


	关系运算符
	> < >= <= == !=

	200<=200;


	逻辑运算符

	&&   ||   !
	a>b   &&   b>c;


	10 && 0;// 结果 0


6.类型转换
  1. 强制类型转换
    在这里插入图片描述

  2. 自动类型转换
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SE4fi0fC-1599623165619)(en-resource://database/619:1)]

自增

#include <stdio.h>

int main(int argc, const char * argv[]) {
    int num=2;

    // num = num+1;
    // num+=1;
    // num++;
    // ++num;

        int result;

        result = num++; //num=3, result = 2
        result = ++num; //num=3, result = 3    // 因为++ 在 age 的前面, 所以 先把 age 的值加一 , 再赋值给 result
        
    return 0;
}

    
7.sizeof运算符

计算这个类型,在数据内存的大小
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yM8RQz60-1599623165623)(en-resource://database/621:1)]

8.c语言中提供了3种逻辑运算符:

在这里插入图片描述

9.位运算

在这里插入图片描述

左移
在这里插入图片描述

在这里插入图片描述

<< 右移
在这里插入图片描述
在这里插入图片描述

10.三目运算符
//    三目运算符     表达式1 ? 表达式2  : 表达式3;
int age=30;

age>30 ? printf("你老了") : printf("你还年轻");

11.if循环
基本的 if 方法
	if(){
		

	}


	if(表达式1){
		
		表达式1 结果为真的情况下,执行的语句

	} else {
		
		表达式1 结果为假的情况下,执行的语句

	}


if 嵌套
		if(表达式1){
			
			if(){

			} else {

			}

		}



		if(表达式1){
			


		} else {
			
			if(){

			} else {
			
			}

		}

 if 的高级用法
	if(表达式1){
		
		表达式1 结果为真的时候,执行的代码

	} else if(表达式2){
		
		表达式2 结果为真的时候,执行的代码

	} else if(表达式3){
		
		表达式3 结果为真的时候,执行的代码
	} else {
		
		表达式1/2/3 都不满足条件的情况下,才会执行的代码
	}


switch 的用法:
	switch(num) {
		case 1:printf();break;
		case 2:printf();break;
		case 3:printf();break;
		default:printf();
	}
    
// case 穿透


unsigned 只能存正数

unsigned int num1 = 11000   // 只能存正数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BnoW2nt2-1599623165633)(en-resource://database/630:1)]

rewind(stdin) // 解决 连续 输入 sanf()的问题
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dGvGzzeu-1599623165633)(en-resource://database/631:1)]

课堂笔记

02-【掌握】while 循环的介绍和基本格式

while(表达式1){
	
	表达式2;

}

当 条件满足后,才会执行 循环体中的语句

04-【掌握】do-while循环介绍及语法格式

do{
	表达式1

}while(表达式2);

如果说 while 循环是先判断在执行的话,那么 do-while 循环这是 先执行,然后再判断;注意一下,即时条件不满足,那么 do-while 也会执行一次

06-【掌握】for循环结构及执行过程

for( 表达式1 ; 表达式2;  表达式3 ){
	
 	表达式4;

}

先执行一次 表达式1,然后 判断表达式2的结果是否为真,如果为真,那么久执行 循环体中的语句,然后 再执行 表达式3

当表达式3执行完后 会执行表达式2--->表达式4--->表达式3

当执行表达式3时,如果结果为假,那么就代表着 for 循环结束

07-【掌握】for循环嵌套

类似于 if 的嵌套, for 循环也是可以嵌套的

for( 表达式1 ; 表达式2;  表达式3 ){
	
 	for( 表达式11 ; 表达式12;  表达式13 ){
	
 		表达式14;

	}

}


注意:除了 for 循环可以嵌套以外, while/do-while 循环都可以嵌套

10-【掌握】break与continue

都可以用来结束循环,但是方式是不一样的

break 是 结束整个循环
continue 是 结束本次循环体中 continue 接下来的代码,从而执行下一次的循环

如果在有以下 嵌套的 for 循环,则 break 会仅仅对 挨着近的那个 for 循环提作用

// for 循环1
for(){

	// for 循环2
	for(){
		break;//只会对 for 循环2起作用
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值