嵌入式C语言补习4

一、常用的输入输出的函数

1.1 putchar/getchar

1.1.1 putchar

         #include

        int putchar(int c);

        功能:向终端输出一个字符

        参数:就是我们要输出的字符

例:

1.1.2 getchat

        #include

        int getchar(void);

        功能:在终端获取一个字符

        参数:没有

        返回值:就是获取的字符

1.2 puts/gets

1.2.1 puts

       #include

       int puts(const char *s);

       功能:向终端输出一个字符串,自带换行符

       参数:要输出的字符串的首地址

   

 

1.2.2 gets

        #include

        char *gets(char *s);

        功能:在终端获取一个字符串,要保证用来存放字符串的缓冲区足够大!

        参数:保存获取的字符串的缓冲区的首地址

1.3 printf/scanf

1.3.1 printf

     格式化输出

         #include

         int printf(const char *format, ...);

         功能:向终端输出一个字符串(可以是自己格式化的)

         参数:

                format

                    格式说明:

                                   %c       字符

                                  %d        有符号十进制

                                  %u        无符号十进制

                                  %o        八进制

                                  %x        十六进制

                                  %s        字符串

                                  %f        浮点型

                                  %e        指数形式

                                  %%       %

           附加格式说明:

                                 l        小写的L,输出long 和long long 及double时会用到

                                #         输出八进制和十六进制的前导符

                              .nf         n是一个数字,指定输出n位小数

                               m        m是一个数字,表示指定输出的位宽,如果数据比指定的位宽多

                                          以实际数据为准

                               0          如果指定了位宽 不足的高位,会补0

                               -          左对齐

                              +           输出正数时,会显示+号,负数时会被忽略

         ...       :可变参 个数和类型取决于格式中的占位符

 

执行结果:

1.3.2 scanf

       格式化输入

           #include

           int scanf(const char *format, ...);

          功能:在终端获取数据

         参数:

                   format    格式,注意,输入的内容要和写的格式保持一致

                   ...         :    可变参

例1:

例2:

scanf垃圾字符的处理

二、分支控制语句

      C语言程序的结构有三种:顺序结构、分支结构(选择结构)、循环结构。

2.1 if..else 语句

2.1.1 格式

2.1.2 if..else语句注意事项

       1.如果if..else语句的代码块只有一行,那么{}可以不用写

       2.else 之前必须要有if与之对应 否则会报错

      3.else 与同一层次的前面与之最近的 if 结合

      4.if..else语句的表达式一般情况下是个由关系运算符和逻辑运算符组成的

                如果是异常情况,需要注意下面的写法

                if(a=b)         //这种写法 表达式的结果取决于b的值,b为0 则为假 b为非0 则为真

                if(a=10)       //这种写法条件恒为真 所以一般常量和变量比较相等时

                                   //建议将常量写在左边 这样写,少写等号的时候 编译器会报错

                if(a)           //表达式的结果取决于a的值 a为0 则为假 a为非0 则为真

                                 //等价与 if(a!=0)

                if(!a)         //表达式的结果取决于a的值 a为0 则为真 a为非0 则为假

                                //等价于 if(a == 0)

      5.在同一层次中同时出现两个 if 时

               if(){}

               if(){}

               //这两个if是独立的 相互之间不影响

例:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值