输入1个四位数,将其让唯加密后输出。
方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将第坦冲培1位和第3位上的数字互换,第2位和第4位上的数字互换,组成加密后的新数。
例:括号内是说明
输入
1257
输出
The encrypted number is 4621(每一位上的数字加9除以10取余后,得0146,交换后得到4601)
*/
#include <stdio.h>
int main( )
{
int number, digit1, digit2, digit3, digit4, newnum
scanf("%d", &number)
digit1 = number/1000
digit2 = (number - 1000 * digit1)/100
digit3 = (number - 1000 * digit1 - 100 * digit2)/10
digit4 = number - 1000 * digit1 - 100 * digit2 - 10 * digit3
digit1 += 9
digit1 %= 10
digit2 += 9
digit2 %= 10
digit3 += 9
digit3 %= 10
digit4 += 9
digit4 %= 10
//第三位数是判昌1的情况不做考虑
newnum = digit3 * 1000 + digit4 * 100 + digit1 * 10 +digit2
printf("The encrypted number is %d\n", newnum)
return 0
}
#include<stdio.h>void passwordnum(long a)
int main(void)
{
long num
while(!scanf("%d",&num))
{
while(getchar()!='\n')//缓坦把数字后面的扰拍桐不纯净输入吸收掉
printf("Input Error! please retry anain.\n")
}
passwordnum(num)
printf("\n")
return 0
}
void passwordnum(long a)
{
if(a>0)
{
passwordnum(a/10)
printf("贺搏%d",(a+2)%10)
}
else if(a<0)
{
printf("-")
a=-a
passwordnum(a)
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)