24.08.01

day3

1.数据类型的转换

1.隐式转换   --> 操作系统
    
 (1)在表达式中
 	eg:
    	 5 / 2    =  2
         5 / 2.0  =  2.52)在赋值(=) , 等号右边的会自动转换为等号左边的数据类型     
    
    
    
2.显示转换(强制数据类型转换)   -->程序员 
    
    (强制数据类型)数据;  
    
    
    
注意转换有要求:
    		(1)低精度转高进度,没问题
            (2)高精度转低精度,需要判断    

在这里插入图片描述

2.数据类型补充 bool

#include <stdbool.h> 
 
bool   
    
true: 真
false:假    

在这里插入图片描述

3.常量

常量是指在程序运行期间其数值不发生变化的数据。
3.1整型常量
  整型常量通常简称为整数 
      
      
十进制数    3356
八进制数    06434  
十六进制数  0xd1c      
3.2浮点型常量
	小数
    3.14  5.22222   520.99   13.14   

        
        
指数常量  
        
     1.176e+10 表示 1.176×10^10
     - 3.5789e-8 表示 -3.5789×10^-8   

在这里插入图片描述

3.3字符型常量
所谓字符常量是指一个单一字符, 其表示形式是由两个单引号包括的一个字符。
    例如, 
		‘A’,  ‘a’,  ‘Q’,0,9,+,:,?,  ‘$’ 都是字符常量。            
3.4字符串常量
字符串常量是指用双引号括起来的一串字符来表示的数据。
    
"a"   "xxxx\0"   "123456\0"  "abc\0"  
  
    
"hello\0 world"    
    
    
字符串的结束标志: '\0'    

 字符串的有效字符:第一个 '\0'  前面的字符  
 字符串的长度:有效字符的个数     
3.5 标识常量

在这里插入图片描述

宏定义

4.变量

	在程序运行过程中,可以改变的一个量
        
一般形式:
        存储类型  数据类型  变量名;

变量名:
      变量名的命名规则和标识符命名规则一致。  
        
数据类型:
        char
        short
        int
        long
        long long
        
        float
        double
        
        
存储类型:
        1.auto  自动存储类型
        	由操作系统自动分配空间,自动回收空间	
        
        2.static  静态存储类型
        	(1)修饰局部变量
        			a、延长局部变量的生命周期,随程序结束而结束
                    b、只做一个初始化
					c、存储位置从栈区变为全局静态区
        
        	(2)修饰全局变量
        			a、限制变量只能在本文件中使用(限制变量作用域只能在本文件中)
        
        
        3.register 寄存器存储类型
            存在寄存器中,优点:快
            注意:寄存器资源非常有限,如果申请失败,自动转为 auto 
           
        		
         
        4.extern   外部存储类型   
        		   引入其他文件的变量
        
        1.c  2.c
        1.c
        extern int a;
		printf("%d\n", a);

        2.c
        int a = 1314520;

		gcc 1.c 2.c -o app
        ./app   ---------------------  1314520	
        			
        
        
        
局部变量:在函数、模块中定义的变量
       	(1)作用域:在函数内部、模块内部
        (2)栈区
        (3)生命周期:随函数、模块的结束而结束
        (4)未初始化,里面存的值是随机值   
        
全局变量:在main函数外定义 
        (1)作用域:整个文件
        (2)全局静态区(全局变量区)
        (3)生命周期:随main函数(程序)结束而结束	
        (4)未初始化,里面存的值是0   

在这里插入图片描述

4.1变量的 初始化 和 赋值
1.初始化
	int a = 10;


2.赋值
    int a;  //变量的定义
    a = 10; //变量的赋值 	    

练习

1.交换两个变量的值
int a = 10, b = 20;
    
int temp;
temp = a;
a = b;
b = temp;

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

5.输入输出函数

5.1 getchar
字符输入函数getchar
函数原型:  int getchar(void)
功能:从键盘读一字符
    
返值:正常,返回读取的ASCII 值;出错或结束键盘输入,返回-1
    
    
eg:
    char ch;
	ch = getchar();
5.2 putchar
函数原型: int putchar(int c);
参数: c为字符常量、变量或表达式
功能:把字符c输出到终端上
返值:正常,为显示的代码值;
    
    
    
eg:
    int ch = 'a';
    putchar(ch);     // a
  
    putchar('a' + 1);  //b

	putchar('a' - ' ');  //A
5.3 printf
格式:printf(“格式控制串”,输出表)
功能:按指定格式向显示器输出数据
输出表:要输出的数据
格式控制串:包含两种信息
格式说明:%[修饰符]格式字符,用于指定输出格式
普通字符:原样输出
    
    
int a=567;printf ( "%d",a);	//567
int a=255;printf("%x",a); 		//0xff
int a=65;printf("%o",a); 		//0101
int a=567;printf("%u",a); 		//567
char a=65;printf("%c",a);		//A
printf("%s","ABC"); 		//ABC
float a=567.789;printf("%e",a);	//5.677890e+02
float a=567.789;printf("%f",a);	// 567.789000
float a=567.789;printf("%g",a);	// 567.789
printf("%%");			 //%

在这里插入图片描述
在这里插入图片描述

5.4 scanf
格式: scanf(“格式控制串”,地址表)
功能:按指定格式从键盘读入数据,存入地址表指定
存储单元中,并按回车键结束
返值:正常,返回输入数据个数
地址表:变量的地址,常用取地址运算符&
          
          
          
结束标志:
         回车、空格、tab、超过域宽、错误输入   

在这里插入图片描述
在这里插入图片描述

5.5 gets
char *gets(char *s);


char str[32];
gets(str);
5.6 puts
int puts(const char *s);

char str[32] = "hello world";

puts(str);
脏字符
前面有一个scanf

有影响的情况
(1)获取字符
 (2)字符串输入  --- > gets   
    
解决方式:
    	(1getchar()
		 (2)抑制符  *   
  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值