C语言集训—谢思静—第二次作业

336 阅读5分钟

1.使用Ubuntu Pastebin分享纯文本

1.适用场景

  • 双方(发送方和接收方)都能联网
  • 单个文本内容较多,且不想通过QQ或微信的聊天框复制发送/接收文本。

2.网站介绍

1.Ubuntu Pastebin网址paste.ubuntu.com/

2.当你打开网站时,该网站会显示得很详细:

image.png

译文:本网站旨在用作各方之间粘贴信息的短期交换。所有提交的数据都被视为公开信息。提交的数据不保证是永久性的,并且可能随时被删除。请不要设置程序以自动方式向本网站发送数据;它旨在供人类直接使用。

注意: 该网站提交的数据均为公开数据,建议不要将个人隐私传送到网站内哦。

3.优缺点简要分析

  • 优点

  • 网站信息免费,无论信息量多少均不用付费

  • 操作简单,轻松搞定

  • 缺点

  • 无论是登录还是分享信息都需要联网

  • 分享的信息均为公开信息,只要有链接就可以查看,个人建议不要分享个人隐私信息(同上的“注意”所谈)

  • 一次只可分享一个文件信息,若要分享整个项目,可将文件压缩成一个压缩包再上传

4.使用方法

1.登录注册Ubuntu Pastebinpaste.ubuntu.com/

2.按照提示填完信息,选择需要添加的内容,如图所示:

image.png

提交之后:

image.png

如上图所示,可将代码直接复制,或者直接将链接发送给接收者即可。

这是图中我提交的代码信息链接:paste.ubuntu.com/p/dg8NmtVDf…

同时,注意有效期限

2.名词翻译

image.png

3.学习内容整理:

  1. C编程预备计算机知识:

1.基本数据类型

  • 整数

1.整形——int 4个字节

2.短整型——short int 2个字节

3.长整型——long int 8个字节

  • 浮点数【实数】 1.单精度浮点数——float 4个字节

2.双精度浮点数——double 8个字节

举例:

float x= 3.2;1/传统科学计数法

float = 3.2e3;11x的值是3200

float x = 123.45e-2;1l1x的值是1.2345

(e = 10)

*以下以float x = 123.45-5为例运行代码


 #include

int main ()
{
    float x = 123.45e-5;

    printf("%f\n", x);

    return 0;

}

以下是代码实操:

image.png

  • 字符

char 1个字节

'A'是正确的,

'AB'是不对的,单引号对应一个字符,

''AB''是正确的

2.变量

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

3.变量为什么初始化

这个地方我不是特别明白,可参照郝斌老师的视频讲解:

www.bilibili.com/video/BV1os…

4.什么是进制

  • 进制转化

1.进制就是逢几进一

2.生活中应用举例:一天24小时,一周七天,一年12个月......

3.人类最习惯使用的是十进制,计算机只能识别二进制,我们也建立了八进制和十六进制。

4.C语言规定八进制前要加数字0十六进制前要加0x或者0X,十进制前什么都不加。(0均是数字0)

5.代码规范化

代码的可读性更强,可以让自己和别人更清楚地看懂程序,使程序不容易出错。

6.字节

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

1字节=8位
1K=1024字节
1M=1024k
1G = 1024M

7.什么是ASCII

ASCII不是一个值,而是一种规定
ASCII规定了不同的字符是使用哪个整数值去表示它规定了
'A’-- 65’
'B’-- 66
'a’ -- 97
'b’-- 98
'o’--48

2.基本的输入和输出函数的用法

1.printf()——将变量地内容输出到显示屏上

我在课程学习截了两个图,大家可以参考一下:

XY9_}DK$~DVCBS_(P(}O7GJ.png 第一张(如上图所示)是printf()的一个实际操作用法

NZN0C2LYNWLUUB}47BUH)XL.png 第二张图(如上图所示)是pintf()用法的总体概述,也就是(如下图):

WEJ22(ME[SA)CK@UJJ]8TKA.png 这里补充一下:

image.png

2.scanf()

两种用法:

用法一: scanf("输入控制符",输入参数);

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

用法二:scanf("非输入控制符输入控制符",输入参数);

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

非输入控制符必须原样输入

  • scanf对用户非法输入的处理

#include

int main(void)
{
    int i;
    char ch;

    scanf("%d",&i);
    printf("i = %d\n",i);
     //.......
    while ( (ch=getchar() ) != '\n')
       continue;
    int j;
    scanf("%d", &j);
    printf("j = %d\n", j);

    return 0;
}

代码运行实操:

image.png

4.课后习题:

1. 3.10课后习题

1.'b/'是退格符

2.1066是十进制的一个整形常量

3.99.44是双精度浮点数

4.0XAA就是十六进制表示的数

5.2.0e30表示2.0×10的30次方

3.10第八题

12——十进制 pintf(''%d\n'')

0X3——十六进制 pintf(''%#X\n'')

  • printf("The odds aganist the %d were %ld to 1.\n",imate,shot);
  • printf("A score of %f is not an%cgrade.\n",log, grade);

3.11第一题

整数上溢

image.png

浮点数上溢

image.png

浮点数下溢

image.png

4.8第四题

(这个地方和最后一个地方我是借鉴的一个大佬车蒙蒙的嘿嘿嘿)


#include
int main(void)
{   
    char name;
    float inch;
    printf("请输入你的身高:");
    scanf("%f",&inch);
    printf("请输入你的姓名:");
    scanf("%s",&name);
    printf(" %s, you are %f feet tall",&name,&inch);

    return 0;
}

运行如下:

image.png

4.8第七题


#include
#include

int main(void)
{
    double a = 1.0/3.0;
    float b = 1.0/3.0;
    printf("double a = 1.0/3.0:\n");
    printf("%.4e\n",a);
    printf("%.12e\n",a);
    printf("%.16e\n\n",a);
    printf("float  b = 1.0/3.0:\n");
    printf("%.4f\n",b);
    printf("%.12f\n",b);
    printf("%.16f\n\n",b);
    printf("FLT_DIG: %d\n",FLT_DIG);
    printf("DBL_DIG: %d\n",DBL_DIG);

    return (0);

}

运行如下:

image.png