HDOJ 1048

一個細節:

1. C語言中的  char c = getchar();

    可以用於接收換行,即 '\n',如利用語句  

              if(c == '\n') ...    則可以是否輸入了回車符

2.C++中若定義了  char arr[100];

   並接收字符  cin>>arr[0];   並不可以接收 '\n'

 

本題代碼如下

#include <iostream>
#include <string>
#include <stdio.h>
using namespace std;

int main()
{
    string start,end;
    char str[1001],temp;
    int i;
    while(cin>>start)
    {
        for(i = 0;i < 1001;i++)
            str[i] = 0;

        if(start == "ENDOFINPUT")
            break;
        getchar();    //接收回車鍵
        for(i = 0;i < 1001;i ++)
        {
            str[i] = getchar();
            if(str[i] == '\n')   //輸入完畢
                break;
            else if((str[i] >= 65) && (str[i] <= 90))  //進行轉化
            {
                if(str[i] - 5 < 65)
                    temp = str[i] - 5 + 26; 
                else
                    temp = str[i] - 5;
                cout<<temp;
            }
            else           //直接輸出
                cout<<str[i];
        }
        cin>>end;
        cout<<endl;
    }
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章