1
숫자 앞에 숫자 0
을 입력하고 싶지만 문제가 있습니다. 숫자 만 입력하면 문제가 없습니다. 예를 들어숫자 앞에 0을 입력 할 때 버그가 발생했습니다.
#include <iostream>
#include <stdio.h>
int main()
{
int input, output;
printf("Enter number : ");
scanf("%i",&input);
output = input % 7;
printf("%i", output);
return 0;
}
: 나 입력 8
줄 때
- 는 출력
1
이다. 그러나 내가08
을 입력 할 때, 출력은0
- 이고, 입력이
100
일 때, 출력은2
입니다. 그러나 내가 입력0100
, 출력이1
을 때 나는 수가 빠르게 전에 간단하게 0
를 입력하지 알고 있지만, 그것은 버그가없는 번호 앞에 0
를 입력 할 수 있는지 궁금하다.
Windows 10 x64에서 Code :: Blocks 16.01 (MinGW)을 사용합니다. 접두어 인 0
와 함께 %i
을 사용
선행 0을 입력하면 숫자의 8 진수 표현을 선택합니다 (예 : 8 진수의 0100은 10 진수 표현의 64와 동일합니다. 64 % 7 = 1. 따라서 버그가 아닙니다. – camelCase
@camelCase 알 겠어.하지만 8 진수로 변경하지 않고 숫자 앞에 "0"을 입력 할 수 있는지 궁금하다. (10 진수/10 진수로 유지) –
@sandyKhosasi '% d'을 (를) 사용하십시오. –