C语言复合语句的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言复合语句的使用相关的知识,希望对你有一定的参考价值。

在什么时候使用复合语句??

当出现语法上某处需要一条语句,但程序却需要执行多条语句时,就可以用到语句块。例如,可以在 if 语句中使用语句块,或者当循环体需要执行多条语句时,也可以使用语句块。

复合语句(compound statement)简称为语句块,它使用大括号把许多语句和声明组合到一起,形成单条语句。语句块与简单的语句不同,语句块不用分号当作结尾。

扩展资料:

复合语句的结构:

用括号括起来组成的一个语句称复合语句。 在程序中应把复合语句看成是单条语句,而不是多条语句,例如:

x=y+z;

a=b+c;

printf(“%d%d”,x,a);

就是一条复合语句。

复合语句的作用:

1、作为分支和循环的块;

2、作为标识符的作用域。

参考资料来源:百度百科-C语言基础语句

参考技术A 复合语句一般用在函数的定义,或局部变量的定义。——在C中是有不少的括号,如,[],()等,确实会让一些初入门的朋友不解。——在VB等一些语言中同一个()号会有不同的作用,它可以用于组合若干条语句形成功能块,可以用做数组的下标等,而在C中括号的分工较为明显。——号是用于将若干条语句组合在一起形成一种功能块,这种由若干条语句组合而成的语句就叫复合语句。——复合语句之间用分隔,而它内部的各条语句还是需要以分号";"结束。——复合语句是允许嵌套的,也是就是在中的也是复合语句。——复合语句在程序运行时,中的各行单语句是依次顺序执行的。——C语言中可以将复合语句视为一条单语句,也就是说在语法上等同于一条单语句。——对于一个函数而言,函数体就是一个复合语句,也许大家会因此知道复合语句中不单可以用可执行语句组成,还可以用变量定义语句组成。——要注意的是在复合语句中所定义的变量,称为局部变量,所谓局部变量就是指它的有效范围只在复合语句中,而函数也算是复合语句,所以函数内定义的变量有效范围也只在函数内部。举个例子吧#include <stdio.h>
void pp(void)

printf(" 里是函数体的定义,这里是复合语句,执行顺序是按条执行\n ");
void main(void) //main的两个中也算复合语句,中定义的变量,只能在当前的中起作用
pp();
//复合语句嵌套使用

unsigned int a=0,b=3;
printf("a= %d, b= %d \n",a,b);

unsigned int a=5,b=4; //因为前面定义过的,只在其自己的中起作用,所以不会影响到后面其之外的定义了。
printf("a= %d, b= %d \n",a,b);
参考技术B 这是复合语句的定义
把多个语句用括号括起来组成的一个语句称复合语句。 在程序中应把复合语句看成是单条语句,而不是多条语句,例如
  
  x=y+z;
  a=b+c;
  printf("%d%d",x,a);
  
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾;此外,在括号“”外不能加分号。

所以一般复合语句用于 要执行某段特殊功能的程序
比如for语句 if语句 while 语句 甚至 某些函数等

Java开发知识之Java控制语句

          Java开发知识之Java控制语句

一丶复合语句

  不管任何语言都有控制语句 if else if else whie do  while  for .... 首先讲解的是java的复合语句

  1.什么是复合语句

  复合语句简称为块语句,C 语言以及其它语言都有的块语句

{
    int nValue = 10;  
}

块语句有一个作用就是限制作用域.  比如我们的变量nValue 在块语句当中.如果出了块语句那么就不能使用了.

二丶条件语句

  条件语句   if else if  else

跟其它语言一样. 或者相似. 如果为真执行xxx代码. 否则如果 为真 执行代码 否则  执行什么代码.

if (nValue == 10) {
   nNumber = 11;
}else if(nValue == 11){
  nNumber = 12;
}else {
  nNumber = 13;
}

if 语句可以使用三元运算符来表示 b= a>0 ? a : b 

三丶循环语句

   循环语句 for while  do while

for语句

for(起始条件,判断条件,改变条件)
{
   number +=10;
}
例如:
    for (int i = 10; i < 11; i++)
{
    number +=11;  
}
int i = 10 只会执行一次.
然后判断i < 11 如果成立,则执行 number +=11.否则循环不执行
执行完一次 i递增1, 继续比较 i <11 

for(;;){....} 无限循环.

while语句

int i = 0;
while(条件)
{
  为真则执行代码
}

while(i < 10)
{
  number +=1;  
  i++;  //控制条件代码
}
while(true){...} 无限循环

do while  do while 的特点是先执行一遍代码,在判断条件.

int i = 10;
do
{
  number +=10;
  i++;
}while (i <10);

foreatch语句

for语句的简化版本.用来遍历集合.或者对象的.

for(变量 : 对象) {
    变量.方法.或者值.
}
后面会使用.
遍历数组:
int arr[] = {1,2,3};
for (int x : arr)
{
  System.out.println(x); x是一个引用变量.相当于arr的下标.
}

循环控制语句

  break 跳出循环. 或者跳出 switch选择结构. 或者跟if配套使用.

1.用法1 if配套使用

while(true)
{
   if (x < 10)
      {
       break;  //当x  < 10条件成立跳出循环.break用于if中.必须是循环中才可以.
    }  
}
for do while 一样.

2.用法2, 当标签使用.跟C++ goto语句类似. 只能从内层跳转到外层.

标号: 循环体 {
       break  标号;
    }
标号可以是任意标识符
循环体. 可以是任意一种循环结构 while for ....
break 标号: 跳出指定的循环体
例如:
    Loop:for(int i = 0; i <3;i++) {
                for(int j = 0; j <3;j++){
                if(j == 2){
                  break Loop; //当内层条件j==2也就是循环两边了,则跳转到外层结束外层循环. 注意是结束外层的循环了.跟Continue不同.break跳转到外层.那么整个循环都不在执行.跳转到循环下面的代码去了.
        }
    }
}    

continue 关键字.  跳过本次进行下次.

当条件满足.本次不在执行下面代码了.进行跳过

while(x < 10)
{
    if (x == 3)
    {
      number +=10;
     continue;
    }  
     number +=1;
}    
上面代码意思就是 当 x== 3的时候.我的number直接加10. 并且跳过当前循环.继续下次. 意思就是number+1不执行了.

continue 也有标号功能

标号 : 循环体 {

          continue 标号;

}

作用就是跳出指定循环体. 就是跳过本次循环体所有代码.也就是跳过内层循环.去外层循环继续执行.执行的时候内层循环体还是会执行.










以上是关于C语言复合语句的使用的主要内容,如果未能解决你的问题,请参考以下文章

在C语言中,if和else if是否在不加花括号的情况下也是一个复合语句

c语言入门问题 第一张第五题D选项为啥错,第二张不明白,求详解

求C语言中循环的具体用法

C语言表达式和语句

C语言中的赋值语句

C语言带参数的宏定义后面的字符串可以使复合语句或者干脆一个函数算法么?如下题该怎么写?