语言之争

成绩 100 开启时间 2016年05月19日 星期四 18:35
折扣 0.8 折扣时间 2016年05月19日 星期四 18:35
允许迟交 关闭时间 2016年05月19日 星期四 18:35
输入文件 language.in 输出文件 language.out

  【题目描述】语言之争(language.cpp/c/pas)

  Java与C++语言的优、缺点一直都是大家所争论的焦点,但它们之间最大的区别无非是在标志符命名上。由多个单词组成的Java 标志符命名规则如下:第一个单词的首字符都是小写字母,接下来的其他单词都是大写字母开头,单词之间没有其他分隔符,例如longAndMnemonicIdentifer,name,nEERC都是符合规则的Java标志。

    C++标志符只用小写字母,单词之间用下划线“_”分隔开,例如:c_identifier,long_and_mnemonic_identifier,name,n_e_e_r_c,都是符合C++的标志符。

  【输入格式】

  输入文件为language.in,一行不超过100个字符的只含有英文和下划线的一个标志符。

  【输出格式】

  输出文件为language.out,如果输入的是Java标志符,输出对应的C++标志符,如果输入的标志符是C++格式的,输出对应的Java格式的标志符,如果都不是(或者都是),输出“Error!”

  【输入样例】

   whenIFirstMeetU

  【输出样例】

  when_i_first_meet_u

  【注意事项】

  对于C++标志符:

  ①必须都是小写字母;

  ②注意“_”的位置;

  ③单词之间只能用一个“_”分隔开单词。

  对于Java标志符:

  ①一个单词首字符小写;

  ②单词之间没有“_”分隔。

  两种语言规则混在一起的输出“Error!”(不包括引号):

  ①又有大写字母又有“_”的;

  ②符合两种规则情况。

  在符合语言规则的情况下,一定要注意正确转换。