⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 morse_code.cpp

📁 C/C++程序设计导论(第二版)》程序源文件
💻 CPP
字号:
// test of morse code converter#include <iostream.h>const char DOT='.';const char DASH='-';const char COMMA=',';char MC (char, char, char, char);char MC1 (char);char MC2 (char, char);char MC3 (char, char, char);char MC4 (char, char, char, char);void main(){  char c1, c2, c3, c4, c5;   while (1)   {	cin >> c1 >> c2;         if (c2 != COMMA)        {   cin >> c3;	    if (c3 != COMMA)   	    {    cin >> c4;   	         if (c4 != COMMA)   	             cin >> c5;   	     }   	}   	cout << MC(c1, c2, c3, c4) << endl;   }}char MC (char c1, char c2, char c3, char c4){  if (c2 == COMMA)	return MC1(c1);			// 1 symbol code   else    	if (c3 == COMMA)	   return MC2(c1, c2);		// 2 symbol code        else            if (c4 == COMMA)   	       return MC3(c1, c2, c3);	// 3 symbol code   	   else    	       return MC4(c1, c2, c3, c4);	// 4 symbol code }   	char MC1 (char c1)	// all 1 symbol codes (e, t){  if (c1 == DOT) 	return 'E';   else return 'T';}char MC2 (char c1, char c2)	// all 2 symbol codes (a, m, n, i){  if (c1 == DOT)		// (a, i)	if (c2 == DOT)	   return ('I');	else	   return ('A');   else				// (m, n)    	if (c2 == DOT)		    	   return ('N');    	else    	   return ('M');}char MC3 (char c1, char c2, char c3)	// all 3 symbol codes (d, g, s, k, w, o, r, u){   if (c1 == DOT)			// (s, w, r, u)	if (c2 == DOT)			// (s, u)	    if (c3 == DOT)	    	return ('S');	    else 	    	return ('U');	else				// (w, r)	    if (c3 == DOT)	    	return ('R');	    else 	    	return ('W');    else				// (d, g, k, o)    	if (c2 == DOT)			// (d, k)    	    if (c3 == DOT)    	    	return ('D');    	    else    	    	return ('K');    	else				// (g, o)    	    if (c3 == DOT)    	    	return ('G');    	    else    	    	return ('O');}char MC4 (char c1, char c2, char c3, char c4)	// all 4 symbol codes{   if (c1 == DOT)			// j, p, v, y, b, h, q, z, c, f, l, x   	if (c2 == DOT)			// v, h, f      	    if (c3 == DOT)		// v, h      	        if (c4 == DOT)      	            return ('H');      	        else      	            return ('V');      	    else	      	        return ('F');   	else				// j, p, l   	    if (c3 == DOT)   	        return ('L');   	    else   	    	if (c4 == DOT)		// j, p   	    	    return ('P');   	    	else   	    	    return ('J');   	    	       else					// y, b, q, z, c, x   	if (c2 == DOT)			// y, b, c, x   	    if (c3 == DOT)		// b, x   	    	if (c4 == DOT)   	    	    return ('B');   	    	 else   	    	    return ('X');   	    else			// y, c   	    	if (c4 == DOT)   	    	    return ('C');   	    	else   	    	    return ('Y');   	else				// q, z   	    if (c3 == DOT)   	    	if (c4 == DOT)   	    	    return ('Z');   	        else   	    	    return ('Q');   	    else    	        return ('?');		// no character }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -