C语言学习记录2

下面分享的是关于C语言学习的运算符,输入输出,控制语句,循环语句等这些,对于每个编程语言这些都是相对重要的部分。

运算符。

C语言中的运算符大致分为6种。算数运算符,关系运算符,逻辑运算符,位运算符,赋值运算符,特殊运算符。

具体每种运算符的符号和功能不一一列举,有一定的语言基础比较好理解,只在这记录一下我学习过程中注意到的点。

  1.首先注意到的是优先级,之前语言的学习中没有过多关注,但在程序执行中,这部分值得注意。

数字由小到大,代表优先级越来越低。

举个例子在这:

2.double和float类型不能取余。

3.逻辑运算符的”逻辑与(&)",短路特性,逢0截至。(如果第一个操作数为假(零值),则整个表达式的结果为假,且不再评估表达式的其余部分。)

4.逻辑运算符中的”逻辑或(||)“短路特性,逢1截至(如果第一个操作数为真(非零值),则整个表达式的结果为真,且不再评估表达式的其余部分。)

赋值运算符:

特殊运算符:

条件运算符,三目运算符。size of运算符。
include <stdio.h>

int main ()
{
    int x,y=23;

    x = 11;
    y = x++ > 11 ? 100 : 0 ;
printf("x = % d  y = % d  \n",x,y)

    return 0 ;
}

条件运算符:一般形式为        表达式一? 表达式二:表达式三 

                           其中如果条件满足就执行表达式二,不满足则执行表达式三

逗号运算符: 本质上就是从左往右依次计算,

size of 运算符:这种字符通常使用在计算数据类型的字节数,还有在申请储存空间的时候,也是             用于计算自己字节长度。

输入输出

数据输出:

C语言没有i/o语句,i/o操作由函数实现。,

        头文件<stdio.h>

字符输出函数

        格式:putchar(c)

        参数:c为字符常量,变量或者表达式

        功能:把字符c输出到显示器中

         返回值:正常,为显示的代码值

格式输出函数:

        格式:printf("格式控制符”输出表)

        功能就是按指定格式向显示器输出数据。(格式说明符之前有记录)。

附加格式说明符:

字符输入函数:

        字符输入函数getchar()

         功能是从键盘输入字符:

格式输入函数:

scanf函数支持的说明符可以带以下修饰符:

这里的scanf类C++的cin来学习。

#include <stdio.h>

int main()
{
int data1,data2;
scanf("%4d %2d ",&data1,data2);;
printf("data1=%d data2=%d" data1,data2);
return 0;
}

5.注意这里的 &运算符,用于获取变量的内存地址。

6.在使用%格式符的时候,空格和转义字符会作为有效字符输出,(空格,tab,回车,非法输入,宽度输出。)

7.垃圾数据清除,

                抑制符(* )使指定的输入项,读入后不赋值给变量,从而达到某一项或者指定项不输入。

                在%c之前使用getchar()吃掉空格.直接输入空格,使垃圾的空格字符清理掉。

字符串的输入函数gets:
         

                这个函数与scanf不同的是不以空格为字符串结束的标志,而是自动加\0.所以输出串的长度应该小于字符数组的维数。

字符串的输出函数puts:

        该函数输出字符串自动换行。

控制语句:

         

                下面将接介绍图中的分支,循环以及辅助控制语句,这应该是作为一个语言比较重要的一部分,

        if语句概述: 

if(表达式)  

         语句块1

else    

        语句块2

if语句常见形式有: 

       简化形式:

if(x>y) printf("%d",x);

阶梯形式;

if(表达式)    语句块1

  else    语句块2

        else if (表达式2) 语句块2

                 else if(表达式3) 语句块3

                        else if (表达式4) 语句块4

嵌套形式:

if()

          if()语句1

           else语句2

else

        if()语句3

        else () 语句4 

7.在语句块中如果有多条语句必须用{} ,区分if(x=1)和if(1==x)的不同。

与c++相似比较好理解不多举例。

switch语句:

与c++语法相同。

switch(表达式)

{    

   case 常量表达式1: 语句块1 ;break;  

   case 常量表达式2: 语句块2; break;  

   case 常量表达式n:  语句块n: break;              

     default : 语句块n+1

}

stitch语句使用注意:

                每个常量表达式的值必须各不相同,否则将出现矛盾。

                当与case常量表达式的值相同时,就会执行case 后面的语句。

                switch语句中的表达式可以是整形,字符型表达式和枚举类型,。

                case常量只起到了语句标号的作用

                break语句在这里用于强行跳出switch语句,一般每个cese之后都有一个break 语句,defalut分支后的break可以省略。

                多个case语句可以执行一条语句。

这里的程序举例和c++中的成绩分级一样,已经较熟悉,不再举例。

        循环语句:

循环需要关注的是:

                        变量初值;

                        终止条件;

                        变量变化;

goto:

        在C语言和c++ 中使用相同。

先在程序的某一位置定义标签,然后在需要跳转的时候使用。goto 标签,,跳转到标签处。

                goto语句的优点是:

                        当程序有多个出口时,使用goto将这些出口集中到一处比较方便,特别是函数中有很多重复的工作的时候。

                                        理由是:    无条件跳转易于理解

                                                                可以减少嵌套。

                                                                  可以避免那些忘记更新某一个出口点的问题。

while循环:

                基本形式:

while(表达式)

{  

 statements;

}

do while循环:

        基本形式:

do{  

statements;

    }while(表达式);

for循环:

                一般形式:

for(expression1;expressiojn2;expression3)

{  

 statements;

}

和c++的for循环一样,三条语句分别是,置循环初始值,判断循环条件,执行语句3.

        for循环中的三条语句都可以省略,        

                                        表达式1省略要在循环之前给循环变量赋初值,

                                        表达式2省略 将进入死循环。

                                        表达式3省略要在循环体中增加循环使变量的值改变的语句。

这里可以通过自己打印九九乘法表来熟悉一下循环的使用,同时可以练习注意细节的能力;

#include<stdio.h>

int main()
{
    int i, j;
     for(i=1;i<=9:i++)
        {
            for(j=1;j<=9;j++)
                {
                    printf("%d*%d=%d",j,i,j*i)
                }
            printf("\n")

        }
    return 0;
}

辅助控制语句:

这里的break,continue,return的用法值得注意。

      break:用于跳出循环内的一层循环体,即提前结束循环。

                                break语句只能使用在循环语句和switch语句中。

      continue:结束本次循环,接着判定是否执行下一次循环;

注意两者的区别,break直接结束了本层循环,而continue结束的是本次循环。还会接着判断下

        一次循环条件,                自己可以通过编写简单的程序来体会这两者的区别;

        return:

        return的一般形式为:return<表达式>

                         主要用于终止包含它的函数的执行。

                                               若终止的是主函数,则程序终止执行。

本次记录结束,下次将开始数组与指针部分。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值