1 条题解
-
0
C :
#include<stdio.h> int main() { char ch[100]={0}; int sum,i; while(scanf("%s",ch)!=EOF) { i=0; sum=0; sum=sum+(ch[i]-'0'); for(i=2;i<5;i++) { sum=sum+((ch[i]-'0')*i); } for(i=6;i<11;i++) { sum=sum+((ch[i]-'0')*(i-1)); } sum=sum%11; if(sum==10) { if(ch[12]=='X') printf("Right\n"); else{ ch[12]='X'; printf("%s\n",ch) ; } } else if(sum==(ch[12]-'0')) printf("Right\n"); else { ch[12]=(char)(sum+'0'); printf("%s\n",ch); } }return 0; }
C++ :
#include<iostream> #include<cstdio> using namespace std; char a[14],b[14],t1,t2; int t22=0; int main() { // freopen("isbn.in","r",stdin); // freopen("isbn.ans","w",stdout); scanf("%c-%c%c%c-%c%c%c%c%c-%c",&a[1],&a[2],&a[3],&a[4],&a[5],&a[6],&a[7],&a[8],&a[9],&t1);//暴力读入 //注意,利用了scanf的特性,可以读入指定的字符,具体可以自己查找资料。因此读入的都是有用字符 for(int i=1;i<=9;++i) t22+=(a[i]-'0')*i;//暴力地安题目要求把有用的自负处理求和 t2=t22%11+'0';//求出末位的标准值 if(t2=='0'+10)t2='X';//特殊处理 if(t1==t2)//判断,如果符合,输出Right { cout<<"Right"; return 0; } cout<<a[1]<<'-'<<a[2]<<a[3]<<a[4]<<'-'<<a[5]<<a[6]<<a[7]<<a[8]<<a[9]<<'-'<<t2;//暴力地输出 return 0;//程序完美结束 }
- 1
信息
- ID
- 2673
- 时间
- 1000ms
- 内存
- 50MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者