目录:

一、 注释

二、数据类型

三、 输入函数scanf

四、转义符\

五、char数据范围

六、int整形

七、float与double

八、进制转换

回到顶部

一、 注释

1 解释代码的意义,注意只是给程序员看的,不会编译。

2 通常使用”//”标识一行内容的注释

3 使用”/*…*/”注释多行

4 还可以用来调错,替换法或排除法

回到顶部

二、数据类型

1 分类:基本数据类型、引用数据类型

2 在C语言中,基本数据类型有四种:char、int、float、double

3 字符型char,底层存储的是整数,是字符表ASCII里面的编码。

常见字符编码:'A' = 65 、'a' = 97 、'0' = 48

4 char代表一个字符,用两个 '' 括起来,占位8位(二进制)内存,8位的     二进制数占用1个字节空间。中文占用2个字节

位bit:描述二进制的位数

字节byte:描述占用存储空间的大小

1KB千字节 = 1024B字节

1MB兆字节 = 1024KB

1GB吉字节 = 1024MB

1TB = 1024GB

1PB = 1024TB

输出函数printf输出char类型变量内容,所使用占位符为%f输出数据。

练习:

1 定义一个字符变量ch='A',使变量ch+4,输出结果%d,%c

2 定义一个字符变量ch='a',使变量ch+4,输出结果%d,%c

3 字符类型'5','6',有没有办法转换成相应的数值类型?

4 字符类型'f',有没有办法转换成'F'?

代码:

  1. #include <stdio.h>
  2.  
  3. //定义一个字符变量ch='A',使变量ch+4,输出结果%d,%c
  4. void test1()
  5. {
  6. char ch = 'A';
  7. char res;
  8. res = ch + ;
  9. printf("char:%c\n",res);
  10. printf("char:%d\n",res);
  11. }
  12.  
  13. //定义一个字符变量ch='a',使变量ch+4,输出结果%d,%c
  14. void test2()
  15. {
  16. char ch = 'a';
  17. char res;
  18. res = ch + ;
  19. printf("char:%c\n",res);
  20. printf("char:%d\n",res);
  21. }
  22.  
  23. //字符类型'5','6',有没有办法转换成相应的数值类型?
  24. void test3()
  25. {
  26. char a = '';
  27. char b = '';
  28. int num = a - b;
  29. printf("'5'->'%c'\n",a);
  30. printf("'5'->%d\n",num);
  31. }
  32.  
  33. //字符类型'f',有没有办法转换成'F'?
  34. void test4()
  35. {
  36. printf("请输入一个字符:");
  37. char ch;
  38. //输入函数 对应数据类型占位符
  39. scanf("%c",&ch);
  40. char res = ch - ('a' - 'A');
  41. printf("%c->'%c'\n",ch,res);
  42. }
  43.  
  44. //将26个小写字母转换为对应的大写字母。
  45.  
  46. //转义符'\'
  47. void test5()
  48. {
  49. char ch = '\"';
  50. printf("ch:%c\n",ch);
  51. printf(" a\n");
  52. printf(" a\n");
  53. }
  54.  
  55. //数据溢出
  56. void test6()
  57. {
  58. //无符号取值范围0~255
  59. //有符号(默认)范围-127~128
  60. char ch = ;
  61. //如果是最大值溢出从最小值开始算
  62. char ch2 = + ;
  63. //如果是最小值溢出从最大值开始算
  64. char ch3 = ch2 - ;
  65. printf("ch2:%d\n",ch2);
  66. printf("ch3:%d\n",ch3);
  67. }
  68. int main()
  69. {
  70. //test1();
  71. //test2();
  72. //test3();
  73. //test4();
  74. //test5();
  75. test6();
  76. return ;
  77. }

回到顶部

三、 输入函数scanf键盘->程序

1 通过键盘向程序传输数据,等待用户输入,直到用户输入完毕回车。

Ctrl+c 强制停止程序运行

2 语法scanf("%c",&ch);

参数1 对应数据类型占位符

参数2 取变量地址,将键盘输入的数据存在相应地址中

练习:将26个小写字母转换为对应的大写字母。

回到顶部

四、转义符\

在做字符类型数据处理时,一些特殊的符号,需要转义处理,(特殊符号:与系统定义的语法符合冲突),转义处理,就会用到\,这就是转义符 。

常用的转义符处理:

\n 换行字符

\r 回车字符

\t 制表符tab,一个制表符等于8个空格字符

\\ 反斜杠

\' 单引号字符

\" 双引号字符

回到顶部

五、char数据范围

unsiged(无符号)char 8位 1字节 0~255

有符号char 8位 1字节 -128~127,默认是有符号的

溢出:超出最大值,从最小开始算

超出最小值,从最大开始算

回到顶部

六、int整形

1 int代表16位或32位二进制数,short/long修饰

short(int)16位,

long(int)32位

signed int第一位就是符号位,long long long int代表64位整数。推荐int类型描述整数。

2 在c语言中,整数有二进制、八进制、十进制、十六进制。

3 二进制数,以值0标识开始,到1结束,当为2时会向前进一位。

十进制数,以值0标识开始,到9结束,当为10时会向前进一位。

八进制数,以值0标识开始,到7结束,当为8时会向前进一位。

十六进制数,以值0标识开始,到15结束,当为16时会向前进一位。

10 A  11 B  12 C  13 D  14 E  15 F

4 取值范围

short 16位 2字节 有符号 -32768~32767

unsigned short 16位 2字节 无符号 0~65535

long 32位 4字节 有符号 -2^31~2^31-1

unsigned long 32位 4字节 无符号 0~2^31-1

练习:

1从键盘输入两个数,求出和、差、积、商。

2 从键盘上输入工资,输入税点,求税值。

代码:

  1. #include <stdio.h>
  2.  
  3. //从键盘输入两个数,求出和、差、积、商。
  4. void test1(fuhao)
  5. {
  6. int num1;
  7. int num2;
  8. int he = ,cha = ,ji = ,shang = ;
  9. printf("请输入两个整数(以空格隔开):\n");
  10. scanf("%d %d",&num1,&num2);
  11. he = num1 + num2;
  12. cha = num1 - num2;
  13. ji = num1 * num2;
  14. shang = num1 / num2;
  15. printf("%d+%d=%d\n",num1,num2,he);
  16. printf("%d-%d=%d\n",num1,num2,cha);
  17. printf("%d*%d=%d\n",num1,num2,ji);
  18. printf("%d/%d=%d\n",num1,num2,shang);
  19. }
  20.  
  21. //从键盘上输入工资,输入税点,求税值。
  22. void test2()
  23. {
  24. float salary;
  25. float tax;
  26. printf("请输入工资和税点(以空格隔开):\n");
  27. scanf("%f %f",&salary,&tax);
  28. float shuizhi = salary * tax;
  29. printf("所交税值:%.2f\n",shuizhi);
  30. }
  31. int main()
  32. {
  33. test1();
  34. //test2();
  35. return ;
  36. }

回到顶部

七、float与double

1 有整形和小数两个部分组成

2 c中,浮点型包括float、double、long double。

float 32位 4字节 2^32

double 64位 8字节 2^64

long double 96位 12 字节 2^96

3 输出结果中,使用占位符

%f  float

%lf  double

%g(科学计数法)

练习:

1 从键盘上输入圆的半径,pi的值3.14,求圆的周长和面积。

2 从键盘上输入矩形的长和宽,求矩形的周长和面积。

  1. #include <stdio.h>
  2.  
  3. //从键盘上输入圆的半径,pi的值3.14,求圆的周长和面积。
  4. void test1()
  5. {
  6. float r;
  7. float pi = 3.14;
  8. printf("请输入圆的半径:\n");
  9. scanf("%f",&r);
  10. float mianji = pi * r * r;
  11. float zhouchang = * pi * r;
  12. printf("圆的面积是:%f,周长是:%f\n",mianji,zhouchang);
  13. }
  14.  
  15. //从键盘上输入矩形的长和宽,求矩形的周长和面积。
  16. void test2()
  17. {
  18. float chang;
  19. float kuan;
  20. printf("请输入矩形的长:\n");
  21. scanf("%f",&chang);
  22. printf("请输入矩形的宽:\n");
  23. scanf("%f",&kuan);
  24. float mianji = chang * kuan;
  25. float zhouchang = * (chang + kuan);
  26. printf("矩形长是:%f,宽是:%f,的面积是:%.2f,周长是:%.2f\n",chang,kuan,mianji,zhouchang);
  27. }
  28. int main()
  29. {
  30. //test1();
  31. test2();
  32. return ;
  33. }

回到顶部

八、进制转换

自动转换:%d十进制、%o八进制、%x十六进制

  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int i = ;//十进制 1*10+1*1=11
  6. int i2 = ;//0代表是八进制 1*8+1*1=9
  7. int i3 = 0x11;//0x代表是十六进制 1*16+1*1=17
  8. //转换自动转换 %o八进制 %x十六进制
  9. printf("i其本身十进制:%d,转换八进制为:%o,转换十六制为:%x\n",i,i,i);
  10. printf("i2转换十进制为:%d,转换十六制为:%x,其本身八进制:%o\n",i2,i2,i2);
  11. printf("i3转换十进制为:%d,转换八进制为:%o,其本身十六进制:%x\n",i3,i3,i3);
  12. return ;
  13. }

04-C语言数据类型的更多相关文章

  1. C语言数据类型的理解

    数据类型的定义: 作为一种语言,必然有所谓的语言组成要素,就像日常生活中人们之间的交流一样,首先会有字,字再成词组,再来就是句子,后来呢就是段落等等.当然不同的字,词,句这些在一起,就会有不同的表达效 ...

  2. R语言数据类型

    R语言数据类型[转!!]Zhao-Pace  https://www.cnblogs.com/zhao441354231/p/5970544.html   R语言用来存储数据的对象包括: 向量, 因子 ...

  3. Go语言 数据类型,流程控制

    Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...

  4. C语言数据类型_02

    C语言数据类型:

  5. R语言 数据类型

    R语言数据类型 通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息. 变量只是保留值的存储位置. 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们. 您可能想存储各种 ...

  6. C语言数据类型取值范围

    一.获取数据类型在系统中的位数 在不同的系统中,数据类型的字节数(bytes)不同,位数(bits)也有所不同,那么对应的取值范围也就有了很大的不同,那我们怎么知道你当前的系统中C语言的某个数据类型的 ...

  7. 一:c语言(数据类型和运算符)

    #include <stdio.h> /*就是一条预处理命令,它的作用是通知C语言编译系统在对C程序进行正式编译之前需做一些预处理工作.*/ int main() /*C程序就是执行主函数 ...

  8. -- c语言数据类型总结 --

    C语言中的数据类型总结

  9. 第三课,T语言数据类型(版本TC5.0)

    数据类型 TC综合开发工具里使用的是可变类型,就是在程序执行过程中,TC综合开发工具会自动把数据转换为需要的类型,转换失败会出现相应的提示但是在一些特殊的场景下,是需要做类型强制处理,那么这时就需要使 ...

  10. C语言数据类型

    1.概述 C 语言包含的数据类型如下图所示: 2.各种数据类型介绍 2.1整型 整形包括短整型.整形和长整形. 2.1.1短整形 short a=1; 2.1.2整形 一般占4个字节(32位),最高位 ...

随机推荐

  1. python自学笔记(八)python语句

    一.print语句 1.1 基本输出,自动分行 1.2 print的逗号,可以衔接前面的内容而不换行,在一行内 1.3 >>重定向,输出到文件 print >> 文件名,&qu ...

  2. Tomcat+redis+nginx配置

    为客户开发的一个绩效系统,采用了java web的开发方式,使用了一些spring mvc, mybatis之类的框架.相比于oracle ebs的二次开发,这种开发更加灵活,虽然和ebs集成的时候遇 ...

  3. libcurl post上传文件

    #include <stdio.h>#include <string.h> #include <curl/curl.h> int main(int argc, ch ...

  4. Hope

    透过希望的窗棂,在阴霾的罅隙里也可以寻找阳光,看到未来的春暖花开. ——forever97

  5. 【数位dp】【HDU 3555】【HDU 2089】数位DP入门题

    [HDU  3555]原题直通车: 代码: // 31MS 900K 909 B G++ #include<iostream> #include<cstdio> #includ ...

  6. android使用全局变量的两种方法

         在我们使用android编写程序的时候,少不了想利用全局变量,但是面向对象语言和过程语言区别很大,不再是include就可以的.这里我写了使用全局变量的两种方法: 1.使用applicati ...

  7. Scala函数---既存类型

    语法: Type ::= InfixType ExistentialClauses ExistentialClauses ::= „forSome‟ „{‟ ExistentialDcl {semi ...

  8. C++模板编程

    如何处理函数模板中的函数体? 预备知识补充: 按照c++的语言系统,普通函数及类的声明应该放在一个头文件中(通常是.h. .hpp..hh为扩展名)里: 而将其实现放在一个主代码文件中(通常以.c . ...

  9. SharePoint Secure Store Service(SSSS)的使用(一)

    SSS在案例中的应用: SSS介绍 SSS部署 SSS应用 http://www.cnblogs.com/renzh/archive/2013/03/31/2990280.html 创建.部署.应用S ...

  10. c#中使用log4net工具记录日志

    首先,去官网下载log4net工具 链接http://logging.apache.org/log4net/download_log4net.cgi 目前最新的版本 log4net-1.2.15-bi ...