第一次發佈,這個代碼有問題。 我想讓它在超過1個點的情況下打印否,例如'2..5'。 試圖把下面的if語句:雙點打印的情況下應該打印否?
if(num[i] == '..'){
printf("no \n);}
但是沒有成功。 編程新手!
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[])
{
char *num = argv[1];
if (num[0] == '+' && strlen(num) >= 2 || num[0] == '-' && strlen(num) >= 2 || num[0] == '.' || (num[0] >= '0' && num[0] <= '9'))
{
for (int i = 1; i < strlen(num); i++) {
if (!(num[i] == '.' || (num[i] >= '0' && num[i] <= '9'))) {
printf("no \n");
}
}
printf("yes \n");
} else {
printf("no \n");
}
}
}
使用大括號'('和')'你如果。目前還不清楚條件必須執行的順序(查找運算符的優先級)。 –
'printf(「yes \ n」)後面沒有大括號;' –