C语言集训-李明航-第二次作业

152 阅读6分钟

课堂笔记

1> C编程预备计算机专业知识

1.cup 内存条 硬盘 显卡 主板 显示器 之间的关系

答.一般存放在电脑上的数据都存在硬盘之中,在双击之后,电脑会把相关数据拉到内存条上,cpu无法直接处理硬盘上的数据,所以数据调到内存条上之后,cpu再对文件进行处理,处理之后可能会把数据处理为图像或声音等等,然后传送到显卡(数据)声卡(声音)上进行展示出来。主板作为一个中间的传输设备,所有东西都插在主板上,显示器主要是呈现的作用。

2.helloworld的程序如何运行起来

答.代码:


    int main(void)
{
    printf("欢迎来到C世界\n");
}  
    return 0;

在运行过程中软件会请求操作系统进行执行,然后cpu会对其运行。

3.数据类型的相关介绍

基本数据类型 整数

 整型 - int       -4
 短整型 - short   -2
 长整型 - long    -8
 

浮点数(实数)

单精度浮点型 - float   -4
双精度浮点型 - double  -8

字符 char -1

复合类型数据(基础类型拼凑在一起) 结构体 枚举

4.什么是变量

答.变量的本质就是内存条中的一段储存空间

5.cpu 内存条 vc++6.0 造作系统之间的关系

答.软件请求操作系统在内存条之中产生空间,把空闲的空间与字母i产生关联,程序是软件编写,操作系统给vc++6.0软件分配空间,与内存条之间的编号产生一一对应的关系,然后cpu对其进行运行。

*6.变量问什么要进行初始化

答.所谓初始化就是赋值的意思,以下方的代码为例,就是将其进行赋值。


int main(void)
{
  int i;
  
  printf("i = %d\n", i);
  
  return i;
}
7.如何定义变量

数据类型 变量名 = 要赋的值

等价于 数据类型 变量名 变量名 = 要赋的值

举例子:

  • int i = 3;等价于int i ; i = 3;
  • int i ,j;等价于int i ; int j;
  • int i,j=3;等价于int i; int j;j = 3;
  • int i = 3;等价于int i; int j;i = 3;j = 5;
8.什么是进制

答.进制就是逢几进几

  • b表示二进制
  • o表示八进制
  • d表示十进制
  • h表示十六进制 百分号后边的字母表示以什么样的形式输出
9.常量在C语言中是如何让表示的

答.整数

  •  十进制:传统的写法
    
  •  十六进制:要加上%x
    
  •  八进制:要加上%o
    
    浮点数
  •  传统的写法 float x = 3.2;//传统
    
  •  科学计数法 float x = 3.2e3//x的值是3200
    
  •            float x = 123.45e-2//x的值是1.2345
    
    字符 单个字符用单括号括起来'a' 字符串用双括号括起来"ab"
10.常量以什么样的二进制代码储存在计算机中

答.整形是以补码的形式转化为二进制代码储存在计算机中,史书是以IEEE754标准化为二进制代码储存在计算机中的,字符的本质实际也是与整数的储存方式相同。

11.代码的规范化

答.代码的可读性更强【容易让自己和别人更清楚地看清程序】使程序更不容易出错

12.什么是字节

答.字节就是储存数据的单位,并且是硬件所能访问的最小单位

  • 1字节=8位
  • 1K=1024字节
  • 1M=1024K
  • 1G=1024M
13.不同数据之间相互赋值的问题
  • 答.int i =45;
  • long j=102345;
  • i=j;
  • printf("%ld%d\n",i,j);
  • float x=6.6;
  • double y=8.8;
  • printf("%f%lf\n,x,y")
14.什么是ASCII

答.ASCII不是一个值,而是一种规定, ASCII规定不同的字符是使用哪个整数值去表示 它规定了

  • ‘A’——65
  • ‘B’——66
  • ‘a’——97
  • ‘b’——98
  • ‘o’——48

2>基础的输入和输出函数的用法

1.printf()将变量的内容输出到显示器上

四种用法:

  • printf(“字符串\n”);

  • printf(“输出控制符\n”,输出参数);

  • printf(“输出控制符1 输出控制符2。。。”,输出参数1,输出参数2。。。);输出控制符和输出参数必须一一对应。

  • printf(“输出控制符 非输出控制符”,输出参数); 输出控制符包含如下:

  • %d -- int

  • ld -- long int

  • %c -- char

  • %f -- float

  • %lf -- double

  • %x(或者%X或者%#X) -- int / long int / short int

  • %o(用的很少) -- int / long int / short int

  • %s -- 字符串 为什么需要输出控制符

  • 01组成的代码可以表示数据也可以表示指令

  • 如果01组成的代码表示数据的话,那么同样的01代码组合以不同的格式输出就会有不同的输出结果 2.scanf()通过键盘将数据输入到变量中 用法一

scanf("输入控制符”,输入参数); 功能:将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中

用法二

scanf(“非输入控制符 输入控制符”,输入参数); 功能:将从键盘输入控制符所规定的格式的数据,然后存入以输入参数的值为地址的变量中,非输入控制符必须原样输入

如何使用scanf编写出高质量代码

  • 使用scanf之前最好先使用printf提示用户以什么样的方式来输入
  • scanf中尽量不要使用非输入控制符,尤其是不要用\n
  • 应该编写代码对用户的非法输入做适当的处理【非重点】

课后作业

3.10第四题

  • a.字符常量,将转义序列退格赋给字符常量
  • b.整数常量
  • c.浮点数常量
  • d.整数常量,代表一个十六进制的整数常量
  • e.浮点数常量,是以指数计数法的方式进行的表示

3.10第六题

类型 转换说明符

  • 整型 %d
  • 十六进制整型 %0x
  • 字符型 %c
  • 浮点型 %E
  • 字符型 %c
  • 浮点型 %f

3.10 第八题

  • d,ld
  • f,c

3.11 第一题

QQ截图20211121234314.png

QQ截图20211121234359.png

QQ截图20211121234431.png

QQ截图20211121234500.png

3.11 第二题

{
 int a=67;
 printf("%c",a);
    return 0;
}

QQ截图20211121234705.png

4.8第一题

{
    char a[5];

   printf("请输入你的名和姓");
  scanf("%s",&a);
  printf("%s",a);
    return 0;
}

4.8第四题

{
    char a[3];
    float b;
   printf("输入你的身高和姓名");
   scanf("%s%f",&a,&b);
   printf("%s,you are %f feet tall",a,b);
    return 0;
}

4.8第七题

QQ截图20211121235415.png

int main()
{
  float a=1.0/3.0;
  double b=1.0/3.0;
   printf("%.6f\n",a);
   printf("%.6lf\n",b);
     printf("%.12f\n",a);
   printf("%.12lf\n",b);
    printf("%.16f\n",a);
   printf("%.16lf\n",b);
  printf("%d\n",FLT_DIG);
   printf("%d",DBL_DIG);
}