先向各位論壇的老師和師兄們拜個年,祝諸位闔家安康,團團圓圓,萬事如意。
在下是正在通過閱讀譚浩強老師的《C程式設計》(第五版)來自學c語言編程,書中的例1.3“求兩個整數中的較大者”,我在win10作業系統中visual studio 2019的編譯環境下嘗試了以下代碼,相較于教材,僅僅把scanf替換為了“scanf_s”,其他沒有主觀上做過改動,但現在輸入兩個整數,比如99,100之后,程式給出的較大值居然99;如果輸入100,99,輸出結果是100,應該是只把輸入的2個整數的第一個作為結果輸出了,但我檢查了好幾遍,沒有找到原因,所以到這里請教諸位老師,還請耐心指導下我這個初學者吧,非常感謝!
代碼如下:
#include<stdio.h>
int main()
{
int max(int x, int y);
int a, b, c;
scanf_s("%d,%d", &a, &b);
c = max(a, b);
printf("max=%d\n", c);
return 0;
}
int max(int x, int y)
{
int z;
if (x > y)z = x;
else z = y;
return(z);
}
uj5u.com熱心網友回復:
極有可能你輸入時用了中文逗號,scanf_s("%d,%d", &a, &b);%d逗號%d,需要你輸入半角逗號uj5u.com熱心網友回復:
比如你輸入3 全角逗號 1,那么第二個數字的接收就會出現問題,所以始終是第一個大uj5u.com熱心網友回復:
感謝樓上的及時且耐心細致的答復,我剛剛試了下,確實如此,問題解決了,非常感謝您!轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/156890.html
標籤:C語言
