请各位高手纠正这段程序的错误

来源:百度知道 编辑:UC知道 时间:2024/07/02 01:48:10
//台湾身份证验证码生成器
#include<iostream.h>
#include<math.h>
void main()
{
int ii,jj;
int aa;
int bb;
int cc;
int dd;
int ee;
int ff;
int gg;
int hh;
int yy;
int zz;
int nn;
cout<<"请输入10位数字。注意:第一位不能是0且大于3"<<endl;
cout<<"第二位不能大于5,第三位只能是1或2:"<<endl;
cin>>ii>>jj>>aa>>bb>>cc>>dd>>ee>>ff>>gg>>hh;
if(ii==1||ii==2)
0<=jj<=9;
else if(ii==3)
0<=jj<=5;
else if(ii==0||ii>3)
cout<<"错误,输入的前两位数须小于35且不等于0"<<endl;
yy=(ii*1+jj*9+aa*8+bb*7+cc*6+dd*5+ee*4+ff*3+gg*2+hh*1);
zz=(yy%10);
int kk=fabs(zz);
if(kk==0)
nn=0;
else if(0<kk<=9)
nn=(10-kk);

cout<<"身份证验证码是:"<<nn<<endl;

}
//A=10 台北市 J=18 新

语法上并没有什么错误
可能是设计上的问题吧
if(ii==1||ii==2)
0<=jj<=9;
else if(ii==3)
0<=jj<=5;
else if(ii==0||ii>3) // 这样限制完ii只能是3了,不知道本次验证的实际实现,所以没有修改建议

程序编译只会出现警告,编译可以通过

语法上并没有什么错误
可能是设计上的问题吧
if(ii==1||ii==2)
0<=jj<=9;
else if(ii==3)
0<=jj<=5;
else if(ii==0||ii>3) // 这样限制完ii只能是3了,不知道本次验证的实际实现,所以没有修改建议.