有一個函數 有人編寫了以下兩個程序,請分析它們是否能實現題目要求。不要急於上機運行程序,先分析兩個程序的邏輯,畫出它們的流程圖,分析它們的運行情況。然后,上機運行程序,觀察和分析結果


有一個函數,

\[y= \begin {cases} -1\qquad(x<0) \\ 0\qquad\ \ \ (x=0) \\ 1\qquad\ \ \ (x>0) \end{cases} \]

有人編寫了以下兩個程序,請分析它們是否能實現題目要求。不要急於上機運行程序,先分析兩個程序的邏輯,畫出它們的流程圖,分析它們的運行情況。然后,上機運行程序,觀察和分析結果。

#include <stdio.h>

int main()
{
	int x, y;
    printf("enter x:");
    scanf("%d", &x);
    y=-1;
    if (x != 0)
		if (x > 0)
            y=1;
    	else
        	y=0;
    printf("x=%d,y=%d\n", x, y);
    return 0;
}

解題思路: if語句使用過程中,else總是匹配距離自己最近的且沒有配對的if,因此x!=0具有兩種情況x>0和x<0;因此x==0時y保持-1;x!=0&&x>0時y=1;x!=0&&x<0時y=0。

流程圖:

答案:

有一個函數 有人編寫了以下兩個程序,請分析它們是否能實現題目要求。不要急於上機運行程序,先分析兩個程序的邏輯,畫出它們的流程圖,分析它們的運行情況。然后,上機運行程序,觀察和分析結果

#include <stdio.h>

int main()
{
	int x, y;
    printf("enter x:");
    scanf("%d", &x);
    y=0;
    if (x >= 0)
		if (x > 0) y=1;
    	else y=-1;
    printf("x=%d,y=%d\n", x, y);
    return 0;
}

解題思路: if語句使用過程中,else總是匹配距離自己最近的且沒有配對的if,因此x>=0具有兩種情況x>0和x0;因此x<0時y保持0;x>=0&&x>0時y=1;x>=0&&x0時y=-1。

流程圖:

答案:

有一個函數 有人編寫了以下兩個程序,請分析它們是否能實現題目要求。不要急於上機運行程序,先分析兩個程序的邏輯,畫出它們的流程圖,分析它們的運行情況。然后,上機運行程序,觀察和分析結果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM