服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C/C++ - C语言菜鸟基础教程之判断

C语言菜鸟基础教程之判断

2021-06-04 15:33翡翠森林Z C/C++

C语言判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)

(一)

先动手编写一个程序:

?
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
 
int main()
{
  if(1)
  {
    printf("The condition is true!\n");
  }
 
  return 0;
}

运行结果:

The condition is true!

再把1依次改为,2,5,100,-10,发现运行结果完全一样。
再改成if(0),此时发现没有运行结果,说明printf()语句没被执行。

C语言把判断语句中的任何非0或非空的值当作真。所以if(1), if(2), if(5), if(100), if(-10)的效果是一样的。

(二)

再编写一个程序:

?
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
 
int main()
{
  int a = 100;
  if(a > 0)
  {
    printf("The condition value is %d\n", (a > 0));
  }
 
  return 0;
}

运行结果:

The condition value is 1

分析:
a = 100,a > 0成立 ,所以if( a > 0)等价于if(1)。
在C语言中,判断语句是有值的,要么为1,要么为0。比如本程序中a > 0的值就是1。

(三)

最后编写一个程序:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <stdio.h>
 
int main()
{
  char c1 = '\0';
  if(c1)
  {
    printf("The condition is true!\n");
  }
  else
  {
    printf("The condition is false!\n");
  }
  
  char c2 = ' ';
  if(c2)
  {
    printf("The condition is true!\n");
  }
  else
  {
    printf("The condition is false!\n");
  }
  
  char c3 = 'A';
  if(c3)
  {
    printf("The condition is true!\n");
  }
  else
  {
    printf("The condition is false!\n");
  }
  
  return 0;
}

运行结果:

?
1
2
3
The condition is false!
The condition is true!
The condition is true!

说明:C语言中用'\0'来表示空字符。空格' ‘也是一个字符,这从if(c2)条件为真就可以看出来。

原文链接:http://www.jianshu.com/p/f3e04955d987

延伸 · 阅读

精彩推荐