Maison  >  Article  >  développement back-end  >  Quelles sont les six instructions de base du langage C ?

Quelles sont les six instructions de base du langage C ?

coldplay.xixi
coldplay.xixioriginal
2020-07-06 10:47:3516120parcourir

Les six instructions de base du langage C sont : 1. Les opérateurs arithmétiques et les expressions arithmétiques ; 2. Les opérateurs d'affectation et les expressions d'affectation ; 3. Les opérateurs relationnels et les expressions relationnelles ; opérateurs et expressions conditionnelles ; 6. Opérateurs virgules et expressions virgules.

Quelles sont les six instructions de base du langage C ?

Les six instructions de base du langage C sont :

1. 🎜>

1. Opérateurs arithmétiques de base

(addition), + (soustraction), -(multiplication), * ( division) et / (reste) %

Les cinq opérateurs ont la priorité : + et - élevé. Autrement dit, multipliez et divisez d'abord, puis additionnez et soustrayez.

 *Lorsque deux entiers sont divisés, le résultat est un entier ; si le numérateur est inférieur au dénominateur, le résultat est zéro. / % Par exemple : 5/2 Le résultat est 2

2/5 Le résultat est 0

Les cinq opérateurs L'associativité est : de gauche à droite.

Par exemple : 10+6- 4*2

Dans la première étape, calculez 10+6 et obtenez le résultat 16. Dans la deuxième étape, calculez 4*2 et obtenez le résultat 8. Utilisez ensuite la première étape. Le résultat de la première étape du calcul est soustrait du résultat de la deuxième étape du calcul, et le résultat est 8.

Méthode de calcul du reste :

5%3 Le reste est de 2

5%8 Le reste est de 5

-5%3 nombres restants soit -2 (Remarque : symboles de position symbolique & lt; fonctionnement 1 & gt; symboles)

5%-3 pour le chiffre 2 (remarque : position symbolique & lt; nombre d'opérations 1 & gt; symbole)

2. Expression arithmétique

L'expression arithmétique est une expression composée d'opérateurs et d'opérandes arithmétiques . La valeur d'une expression est une valeur numérique et le type de l'expression est déterminé par l'opérateur et les opérandes.

Par exemple : 5+3*(6-2) Le type d'expression est de type int.

3+4.0-3/2.0 Le type d'expression est double.

3. Conversion des types de données

Habituellement, les types de données impliqués dans l'opération ne sont pas complètement cohérents. Pendant le fonctionnement, ils doivent d'abord être convertis dans le même type de données, puis utilisés.

2.1 Conversion de type forcée, convertit directement certaines données dans le type de données spécifié

Conversion de type forcée, la valeur de la variable elle-même ne change pas

           (double)a;  
       (int)(x+y);注意区别:(int)x+y 先把x的值转换成int型,然后再加y
       (float)(5%3)    
        int  i;
        …
        i=i+(int)9.801;

2.2 Lors de la compilation, le compilateur la complétera automatiquement selon certaines règles sans intervention humaine

Les conversions suivantes doivent être effectuées avant que les données participent à l'opération :

char , short→int→ float→double

Pendant le fonctionnement mixte, le type de données passe de bas niveau → haut niveau

non signé → int → long → double

et ci-dessus Cela ne signifie pas que unsigned doit être converti en int puis en long dans l'ordre, mais la conversion est effectuée par le niveau le plus élevé du calcul.

2. Opérateurs d'affectation et expressions d'affectation

1. Opérateur d'affectation

Symbole d'affectation : Attribue la valeur de l'expression sur le côté droit de l'opérateur d'affectation à une variable sur le côté gauche de l'opérateur d'affectation.

Si les types de données de l'opérateur d'affectation sont incohérents, une conversion de type est requise. La méthode de conversion est la suivante :

Lors de l'attribution de données réelles à une variable entière, supprimez la partie décimale du nombre réel. = 

Par exemple : int i;=5.65; La valeur de i est 5.

Lors de l'attribution de données entières à une variable réelle, la valeur reste inchangée.

 float f  ;  f=23;

(D'abord 23→23.00000 puis stockez-le dans f)

  double  d;  d=23;

(D'abord 23→23.0000000000000000 puis stockez-le dans d)

Changer les caractères Lors de l'attribution de données à une variable entière, placez les données de caractères dans les 8 bits inférieurs de la variable entière

          int i;char ch = '0';        i = ch;   // i = 48

Lors de l'attribution de la variable entière aux données de caractères, placez les 8 bits inférieurs de la variable entière dans les données de caractères

        int i = 4656;char ch;        ch = i;   // ch = 48


2. Opérateur d'affectation composé

Opérateur d'affectation composé : (dix au total)

 

 += ,  -= ,  *= ,  /=  ,   %= , Par exemple :   

                             a += 3        等价于     a=a+3
                    x *= y+8    等价于     x=x*(y+8)
                    x %= 3       等价于     x=x%3

Une expression qui connecte une variable et une expression par l'opérateur d'affectation.   639770e382bf3731d804014418c1bbd1>= ,  &= ,  ^= ,  |=

Le format est : 68187049abec0c7dd53c11bf3b729d87 9fd2987884acf3f37ff2f12013422dde ffbeece48539e6983ff3249db04f27c9

Par exemple :

int x,y,z;
      x=y=z=5+6;
 
              int  x=3,y=4;
              x*=y+1;    
              ( x=等价与  x*(y+1);)
 
             int x;
             x='a';

Opérateur d'affectation Le taux de combinaison est : "de droite à gauche".

Par exemple :

                         a=b=c=5       a=(b=(c=5))   a,b,c值都是5
            a=5+(c=6)      c值为6, a值为5+6 (即11)
            a=(b=4)+(c=6)    b值为4,c值为6,a值为4+6 (即10)
            a=(b=10)/(c=2)    a值为5

三、关系运算符和关系表达式

  1.关系运算符

   关系运算符用于两个数值之间的比较运算。C语言提供6种关系运算符:

d2714fbb0e49a95306c2048bc19e4f2b、>=、  优先级相同高

==、!=  优先级相同低

 

关系运算符的结合率为:“自左而右”。

(即当优先级相同时按自左而右结合a>b>c,当优先级不同时按优先级高低结合a=b+c)

关系运算符、算术运算符和赋值运算符的优先级为:

 

  例如:  1、c>a+b          等效于     c>(a+b)

  2.关系表达式

   由关系运算符和操作数组成的表达式称为关系表达式。

关系表达式的值是一个逻辑型的值,即只有两个值(真和假)。

C语言是用1作为真,用0作为假。但是进行运算时,非0即认为真,0才认为假。而表达式的结果为真时,给出真值1。为假时,给出假值0。

 例1:

有int x=2,y=3,z=5;
则:x>y     结果为0。
z>=y    结果为1。 
z==y    结果为0。

例2: 

若  a=3,b=2,c=1
     f=a>b>c 
    f=?

四、逻辑运算符和逻辑表达式

  1.逻辑运算符

   

  2.逻辑表达式

用逻辑运算符将关系表达式或逻辑量连接起来的式子。

运算结果为:“真”或“假”值。

系统在运算时以非0即为真,以0为假。

 

 

例如:  4  && 0 || 2   的值为1

                 5  && !0     的值为1

 

例如:

                   (a>b)&&(x>y)           可以写成  a>b&&x>y
              (a==b)||(x==y)          可以写成    a==b||x==y
              (!a)||(a>b)             可以写成   !a||a>b
              5>3&&2||8<4-!0          的值为     1
              &#39;c&#39;&&&#39;d&#39;              的值为      1

 

#include <stdio.h>
int main()
{
    int a = 10;
    int b = 10;
    if (++a > 100 || ++b >0)
    {
    }
    printf("a = %d, b = %d\n", a, b); 
    a = 10;
    b = 10;
    if (++a > 100 && ++b >0)
    {
    }
    printf("a = %d, b = %d\n", a, b);
    return 0;
}

五、条件运算符和条件表达式

  1.条件运算符

   条件运算符:  ? : 它是唯一的一个三目运算符

  2.条件表达式

    条件表达式的一般格式为:表达式1  ?  表达式2  :    表达式3       

运算过程:表达式1的结果为真(非0)时,表达式2的计算结果作为条件表达式的值;否则,取表达式3的计算结果为条件表达式的值。

 

如: a>b?a:b  

 

条件运算符的优先级低于逻辑、关系、算术运算符高于赋值运算符。

如: a>b?a:b+1     相当于     (a>b)?a:(b+1)  

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

逗号运算符:  ,

格式: 表达式1, 表达式2, 表达式3, LL, 表达式n

优先级: 最低

从左向右计算每个表达式的值,逗号表达式的值为表达式n的值。

例如:

                     y=(x=3,5+6,x+5) 逗号表达式的值为?

相关学习推荐:C视频教程

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn