有一段程序如下。 int func(int a,b,c) { int k=1; if ( (a>0) || (b<0) || (a+c>0) ) k=k+a; else k=k+b; if (c>0) k=k+c; return k; } 根据下列问题进行作答: 绘制出程序流程图 绘制出控制流图,并计算环形复杂度
时间: 2023-12-25 07:03:22 浏览: 28
以下是程序流程图和控制流图:
程序流程图:
```
START
|
|__ int func(int a,b,c)
|
|__ int k=1;
|__ if((a>0) || (b<0) || (a+c>0))
| |
| |__ k=k+a;
|__ else
| |
| |__ k=k+b;
|__ if(c>0)
|
|__ k=k+c;
|
|__ return k;
|
END
```
控制流图:
```
START
|
|__ int func(int a,b,c)
|
|__ int k=1;
| |
| |
| V
|__ if((a>0) || (b<0) || (a+c>0))
| |
| |__ k=k+a;
| |
| V
|__ else
| |
| |__ k=k+b;
| |
| V
|__ if(c>0)
|
|__ k=k+c;
|
V
|
|__ return k;
|
END
```
环形复杂度为3,因为有3个回路,分别是if语句、else语句和第二个if语句。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)