none
C++新手 学生党求助 RRS feed

  • 问题

  • 1.有一种加密方法是用原来字母的第n个字母代替原来的宁母。例如把A用其后第4个字母E来替代。编程实现:由键盘输入密文(一行字符),屏幕输出其原文。(提示:可根据上述加密原理,使用循环输入若干字符来实现)。

    2. 键盘输入一行字符,统计字符总个数,以及其中的英文字母个数,如果是数字,则统计它们所构成的数据中,奇数个数和偶数个数分别是多少。

    提示:可使用以下程序段,连续输入若干字符直到输入'\n'时停止。

    while(1) {  ch=getchar();  if(ch=='\n')break; 

    。。。。。。

    }

    2016年3月22日 15:00

全部回复

  • 写了一个简单易懂的sample给你,你可以参考一下。

    char cPrint = “”;
    char cArray[26] = “a,b,c,d,e…”;
    
    If ( true == Char.IsLetter(ch))
    {
    	for ( int i = 0; i <26; i++)
    	{
    		if ( ch == cArray[i] )
    		{
    			nNum = (i + 4)%26 ;
    			cPrint = cArray[nNum];
    			break;
    		}	
    	}
    	nLetterCount ++;
    }
    else ( true == Char.IsNumber(ch))
    {
    	int nNumber = ToInt32(ch);
    	if ( nNumber % 2 == 0)
    	{
    		nEvenNumCount ++;
    	}
    	else
    	{
    		nOddNumCount ++;
    	}
    }
    nCount++;
    printf(“原文%s”,ch);
    

    Notes:如果这个是你的作业的话,建议你下次去MSDN的函数库里寻找你需要的。

    https://msdn.microsoft.com/zh-cn/library/ms123401.aspx

    • 已建议为答案 Baron Bi 2016年3月23日 1:50
    2016年3月23日 1:50