C语言第三章
来源:互联网 发布:大数据 潜在顾客 编辑:程序博客网 时间:2024/05/16 15:30
所以C语言中没有二进制表达式,C语言中最主要的两种常数表达式是:10进制和16进制(0x开头)表达式。
十六进制可以看作是对二进制的提炼,因为4位二进制刚好是一个16进制(2的4次方)
1、常量的种类:
a)整数常量(字符常量):单个字符
b)浮点数常量;
c)字符串常量:双引号包含的文字就是字符串常量,是在内存中连续多个字符常量的内存地址。
2、变量类型:
a)整数变量:char short long(int) __int64
b)浮点数:float double
c)指针变量:带个*符号。例如:char*,
d)自定义变量类型:例如:结构体对象
3、字节的概念
1位只能表达0和1
2个位只能表达:0,1,2,3
3个位只能表达:0,1,2,3,4,5,6,7
4个位只能表达:0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
5个位只能表达:0到31
6个位只能表达:0到63
7个位只能表达:0到127
8个位只能表达:0到255
4、单字节变量:
a)unsigned char类型:范围:从0到255
b)char类型:0-127与unsigned char没有区别,128以后是负数(-128..-1)
c)char类型:从-128到-1 0到127
5、双字节变量:
a)unsigned short类型:范围:从0到64K
b)short类型:0-32K-1与unsigned short没有区别,32K以后是负数(-??????..-1)
c)short类型:从-32K到-1 0到32K
5、双字节变量:
a)unsigned short类型:范围:从0到64K
b)short类型:0-32K-1与unsigned short没有区别,32K以后是负数(-??????..-1)
c)short类型:从-32K到-1 0到32K
6、四字节变量:
a)unsigned long类型:范围:从0到4G
b)long类型:0-2G与unsigned long没有区别,2G以后是负数(-??????..-1)
c)long类型:从-2G到-1 0到2G
代码区:
Test01:
#include "stdafx.h"
#include <stdio.h>
/*
double d1 = 321.1234567890f;
double d2 = 123.1234567890;
char *p = "a";
printf("Hello c world\n!");
*/
int main(int argc, char* argv[])
{
unsigned char c = 0;//10 0xA '\n'
char c1 = 0;
c=c1=100;
c=c1= 127;
c1=c=130;
c1=c=0x9A;
c1=c= 0xFF;
int i = 0;
c1 = 0;
while(i<512)
{
printf("%d ",c1);
++c1;
++i;
}
printf("\n");
return 0;
}
Test02: 十进制转为二进制输出
#include "stdafx.h"
#include <stdio.h>//Standard IO(Input/Output)
#include <math.h>
/*
printf("%d",c/2/2/2/2/2/2/2%2);
printf("%d",c/2/2/2/2/2/2%2);
printf("%d",c/2/2/2/2/2%2);
printf("%d",c/2/2/2/2%2);
printf("%d",c/2/2/2%2);
printf("%d",c/2/2%2);
printf("%d",c/2%2);
printf("%d",c%2);
*/
int main(int argc, char* argv[])
{
printf("请输入一个十进制的数字");
unsigned char c ;//0-255 //char -128 - 0 +127
scanf("%d",&c);
int i = 7;
while(i>=0)
{
int n = pow(2,i);
printf("%d",c/n%2);
--i;
}
printf("\n");
return 0;
}
/*
printf("%d",c/2/2/2/2/2/2/2%2);
int i = 0;
while(i<8)
{
printf("%d",c%2);
c/=2; // c = c/2;
++i;
}
*/
Test03: 十进制转为十六进制
#include "stdafx.h"
#include <stdio.h>
int main(int argc, char* argv[])
{
printf("请输入一个十进制的数字");
unsigned char c ;//0-255 //char -128 - 0 +127
scanf("%d",&c);
// printf("%d的十六进制是:0x%x\n",c,c);
printf("0x");
switch(c/16%16) //0-15
{
case 10:
printf("A");
break;
case 11:
printf("B");
break;
case 12:
printf("C");
break;
case 13:
printf("D");
break;
case 14:
printf("E");
break;
case 15:
printf("F");
break;
default:
printf("%d",c/16%16);
}
switch(c%16) //0-15
{
case 10:
printf("A");
break;
case 11:
printf("B");
break;
case 12:
printf("C");
break;
case 13:
printf("D");
break;
case 14:
printf("E");
break;
case 15:
printf("F");
break;
default:
printf("%d\n",c%16);
}
printf("\n");
return 0;
}
- C语言第三章
- 【C语言基础】C语言第三章
- 第三章:C语言特性
- C语言 :第三章 变量
- C语言第三章:C语言和程序结构
- 第三章: Objective-C 语言 -- 上
- C语言——第三章
- C语言——第三章
- 深入理解c语言指针-第三章
- C语言第三课
- C语言第三课
- C语言第三讲
- (C语言教程)第三章: C语言程序设计初步
- C语言教程---第三章: C语言程序设计初步
- C语言教程第三章: C语言程序设计初步
- C语言教程第三章: C语言程序设计初步
- C语言02(c primer plus第三章)
- 【Linux C】第三章 C语言中的函数
- POJ 2406 Power Strings(KMP循环节)
- hadoop2.2.0集群搭建(四)终结篇
- Springmock
- html与控制器的关联
- Java学习小知识点
- C语言第三章
- QtChart 初体验
- 给容器快速赋值
- JAVA渣渣感悟——J132LJC猜数字游戏
- 使用requirejs编写模块化代码
- RSA、DSA和ECDSA三者的签名
- "reload maven project' has encountered a proble" 问题
- 用友uap nc65 如何实现一个下拉框(枚举类型实体)
- python 向上取整ceil 向下取整floor 四舍五入round