嵌入式开发学习日志Day4

一、逗号运算符和逗号表达式

1、逗号运算是自左向右进行运算的;

2、逗号表达式的运算的结果为最后一个表达式的值;

3、函数调用时的逗号和逗号表达式中的逗号表示的意义不一样;

eg:【printf ("%d\n",1 + 2, 2 + 3,3 + 4);】

        在这个语句中,输出的最终结果就为3 + 4的值为7;

二、数据输入和输出的概念在C语言中的实现

   一个c程序包含若干源程序文件,每个源程序文件包括预处理指令、数据声明和若干函数,每个函数包括函数首部和函数体,函数体包括数据声明和执行部分。
    输入输出是相对于而言的的,参照对象不同,则表示的行为不同,例:从计算机向外部输出数据称输出(如打印机、显示器),输入设备指向计算机输入数据(如鼠标、键盘、扫描仪)。

三、字符数据的输入和输出

1、【putchar】:作用是从终端输出一个字符;

     【man putchar】:可以调用关于putchar的程序员手册进行查询putchar的使用方法;

2、【getchar】:字符输入函数,作用是输入一个单字符;

        【man getchar】:可以调用关于getchar的程序员手册进行查询getchar的使用方法;

eg:输入三个小写字母,将其转换为大写字母;

程序为:

嵌入式开发学习日志Day4_第1张图片

结果为:

嵌入式开发学习日志Day4_第2张图片

四、格式的输入与输出

占位符:

占位符 作用 备注
%d 代表有符号、十进制的整型输出
%10d 其中的10表示输出值的宽度 如果输出值大于指定宽度,则按原来值输出,输出值小于指定宽度,则在输出值前补空格;
%010d 其中010表示其中的10表示输出值的宽度 如果输出值大于指定宽度,则按原来值输出,输出值小于指定宽度,则在输出值前补0
%#o 输出为八进制数;eg:075
%#x 输出为十六进制数

当输入为%#X时输出十六进制前为“X”;

当输入为%#x时输出十六进制前为“x”;

%u

表示输出为无符号十进制整型;
%e、%E 浮点型双精度用科学计数法输出

%f、%F 浮点型以小数形式输出;
%m.nf 输出浮点型,其中m表示输出的宽度(包括小数点),n表示小数点后保留的有效数字(会进行四舍五入)
%g、%G 输出浮点型会转换为科学计数法和小数形式中较短的进行输出;
%c 输出字符;
% 输出字符串;
%p 用于输出地址(万能地址输出)
%lld 用于输出long long型;
%lu 用于输出为unsigned long 型
%% 用于输出%;

注:%d输出时,只能在宽度前补“0”或者“空格”;

        printf会默认输出的值为4个字节;

        printf 的返回值为实际输出值的字符个数;

五、scanf函数

【scanf ("%d",&a);】此处为a的地址;

注意事项:

1、scanf函数中,函数后面必须取地址;

2、scanf中,占位符中不要加其他的字符或者\n;

3、用scanf函数时,占位符必须和其定义的变量数据类型一直;

4、short 型的定位符为【%hd】;

eg:输入一个圆的半径,计算其面积和周长;

程序:

嵌入式开发学习日志Day4_第3张图片

scanf函数的底层逻辑为存在缓冲区,其值输入和输出的次序一至;

【sqrt】——平方根函数,编译时末尾加 【 -lm】;

六、练习题

1、从终端获得两个2位数,将第一个数个位作为新数的千位,将第二个数个位作为新数的百位,将第二个数的十位作为新数的十位,将第一个数的十位作为新数的个位,打印该新数。

程序:

嵌入式开发学习日志Day4_第4张图片

运行结果:

嵌入式开发学习日志Day4_第5张图片

你可能感兴趣的:(学习)