我做了一个基本程序,用于计算输入中有多少偶数。对于小于20的数字,它可以工作。但是当我为n键入一个大于20位的值时,它显示数字9.我知道20位数字比长数字大,但为什么不显示前20位数字的结果字符?有什么方法可以让它适用于大于20位的数字吗?
#include <iostream>
using namespace std;
int main()
{
int n, p=0;
cout<<"n=";
cin>>n;
for( int i=1; i<n; n=(n/10))
if ((n%10)%2==0)
p=(p+1);
cout<<p ;
return 0;
}