19주 OJ 간단한 인코딩.바늘로 문제를 칠하다

1502 단어
질문 및 코드:
/*
    
         ,      :                  ,             ,         :
0——>9
1——>8
2——>7
3——>6
4——>5
5——>4
6——>3
7——>2
8——>1
9——>0
            。
  
      ,         100。
  
        。
    
china
    
ANIHC
  
*/
#include <iostream>
#include <cstdio>
using namespace std;
void change(char *str,int n)
{
    int i=0;
    char t;
  for(i=0;i<(n+1)/2;i++)
  {
      t=str[i];
      str[i]=str[n-i];
      str[n-i]=t;
  }
  for(i=0;i<=n;i++)
  {
     if(str[i]>='a'&&str[i]<='z')
    {
        str[i]=str[i]-32;
    }
    else if (str[i]>='A'&&str[i]<='Z')
    {
        str[i]=str[i]+32;
    }
    else if(str[i]>='0'&&str[i]<='9')
    {
        str[i]=105-str[i];
    }
  }
}
int main()
{
    char str1[100];
    gets(str1);
    int i=0,j=0;
    while (str1[i]!='\0')
    {
        i++;
    }
    change(str1,i-1);
    for(j=0;j<i;j++)
    {

     cout<<*(str1+j);
    }
    return 0;
}


소감: 숫자의 변환에 주의하여 처리하고 복잡하게 생각하기 시작한다...나중에 몇 번을 고쳐서 정리한 거예요.

좋은 웹페이지 즐겨찾기