| 网站首页 | 业界新闻 | 群组 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
雷速体育发帖软件开发QQ118000023C语言培训|一对一辅导|零基础学编程LightningChart 快速先进的.Net图表控件
共有 386 人关注过本帖
标题:有几道题目老是想不出来,急需大神解答,谢谢。
只看楼主 收藏
学C中爱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-4-14
结帖率:50%
  已结贴   问题点数:10  回复次数:5   
有几道题目老是想不出来,急需大神解答,谢谢。
感谢上个帖子帮我解答的几位大神,十分感谢,重开一贴再问几道题,还麻烦大神们再劳心解答一番,谢谢哈。
第一题:(请不要用函数调用,谢谢。)
给输出加上标签,在显示电话号码之前,程序需要将其(以原始格式或数值格式)存储在一个字符数组中,可以假定电话号码长度不超过15个字符。
(2=ABC,3=DEF,4=GHI,5=JKL,6=MNO,7=PQRS,8=TUV,9=WXYZ)
Enter phone number:1-800-COL-LECT
In numeric from:1-800-265-5328

第二题:(请不要用函数调用,谢谢。)
Enter a first and last name: Lloyd Fosdick
You enered the name:Fosdick,L
在显示姓氏(不是名字)之前,程序需要将其存储在一个字符数组中,可以假定姓氏的长度不超过20个字符。

第三题:(请不要用函数调用,谢谢。)
凯撒加密,该方法把一条消息中的每个字母用字母表中固定距离之后的那个字母代替。(如果越过了字母Z,会绕回到字母表的起始位置。)
用户输入待加密的消息和移位计数(字母移动的位置数目),切记,不是字母的字符不要移动。
Enter message to be encrypted:  Go ahead,make my day.   
Enter shift amount:3
Encrypted message:  Jr dkhdg,pdnh pb gdb.

Enter message to be encrypted:  Jr dkhdg,pdnh pb gdb.
Enter shift amount: 23
Encrypted message:  Go ahead,make my day.



[此贴子已经被作者于2018-4-16 12:36编辑过]

2018-04-15 19:53
学C中爱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-4-14
  得分:0 
请问有大神解答一下吗。呜呜呜,拜托拉,谢谢辣
2018-04-16 12:15
dzy123
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:355
专家分:800
注 册:2013-4-18
  得分:1 
char ydh[15],xdh[15];
    printf("输入一个电话号码\n");
    scanf("%s",ydh);
    int i,k=0;
    for(i=0;ydh[i]!='\0';i++)
       switch(ydh[i])
       {
         case 'A':
         case 'B':
         case 'C':
              xdh[k]='2';  
              k++;
              break;
         case 'D':
         case 'E':
         case 'F':
              xdh[k]='3';
              k++;
              break;
         case 'G':
         case 'H':
         case 'I':
              xdh[k]='4';  
              k++;
              break;
         case 'J':
         case 'K':
         case 'L':
              xdh[k]='5';  
              k++;
              break;
         case 'M':
         case 'N':
         case 'O':
              xdh[k]='6';  
              k++;
              break;
         case 'P':
         case 'Q':
         case 'R':
         case 'S':
              xdh[k]='7';  
              k++;
              break;  
         case 'T':
         case 'U':
         case 'V':
              xdh[k]='8';  
              k++;
              break;   
         case 'W':
         case 'X':
         case 'Y':
         case 'Z':
              xdh[k]='9';     
              k++;
              break;
         default :
              xdh[k]=ydh[i];     
              k++;
              break;
        }                           
          xdh[k]='\0';
    printf("%s\n",xdh);
第一题
2018-04-16 17:28
学C中爱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-4-14
  得分:0 
回复 3楼 dzy123
十分感谢您的解答。
2018-04-16 17:32
暗黑键盘
Rank: 1
等 级:新手上路
帖 子:3
专家分:9
注 册:2017-4-27
  得分:9 
第一题
#include <stdio.h>
#include <ctype.h>//用来把小写字母转换成大写字母的库函数
#include <string.h>

int main(void)
{   
    char str1[15];//存储的数组最大容量
    int i, len;
   
    printf ("Enter phone number: ");
    gets(str1);//输入一串字符
      
    len = strlen(str1);//测试字符长度   
    for (i = 0; i < len; i++)   
    {   
        str1[i] = toupper(str1[i]);//把小写字母转换成大写字母
        
        switch (str1[i])        
        {               
            case 'A':     case 'B':     case 'C':
            str1[i] = '2';                break;            
            case 'D':     case 'E':     case 'F':
            str1[i] = '3';                break;            
            case 'G':     case 'H':     case 'I':
            str1[i] = '4';                break;           
             case 'J':     case 'K':     case 'L':
            str1[i] = '5';                break;            
             case 'M':     case 'N':     case 'O':
            str1[i] = '6';                break;            
             case 'P':     case 'Q':     case 'R':      case 'S':
            str1[i] = '7';                break;            
             case 'T':     case 'U':     case 'V':
            str1[i] = '8';                break;            
             case 'W':     case 'X':     case 'Y' :    case 'Z':
            str1[i] = '9';                break;        
            default :                 str1[i] = str1[i]; break;        
        }   
    }   
    str1[i] = '\0';
   
    printf("In numeric form: %s", str1);
        
    return 0;
}
第二题
#include <stdio.h>
#include <string.h>

int main(void)
{
    char str[20];
    int i, j;
    int len, index = 0;
   
    printf ("Enter a first and last name: ");
    gets (str);//输入一段字符
   
    len = strlen (str);//测试字符串长度
   
    printf ("You enerad the name: ");
    for (i = len - 1; i >= 0; i--)//遍历逆序输出字符
    {
        if (str[i] == 32)//当输入的字符等于空格的时候就输出空格后面的字符
        {
            for (j = i + 1; j <= index + i; j++)
            {
                printf ("%c", str[j]);
            }
        }
        else   
        index++;//记录索引   
    }
    printf (", %c.", str[0]);//输出第一个字符
    printf ("\n");
   
    return 0;
   
 }
第三题
#include <stdio.h>
#include <string.h>

int main(void)
{
    char str[80], str1[80];
    int i, n, len;
   
    printf ("Enter message to be encryted: ");
    gets (str);
   
    len = strlen (str);
   
    printf ("Enter shift amount (1-25): ");
    scanf ("%d", &n);
   
    for (i = 0; i < len; i++)
    {
        if (str[i] >= 'A' && str[i] <= 'Z')
        {
            str1[i] = ((str[i] - 'A') + n) % 26 + 'A';
        }
        else if (str[i] >= 'a' && str[i] <= 'z')
        {
            str1[i] = ((str[i] - 'a') + n) % 26 + 'a';
        }
        else
        {
            str1[i] = str[i];
        }
    }
   
    printf ("Encrypted message: ");
    for (i = 0; i < len; i++)
    {
        printf ("%c", str1[i]);
    }
   
    return 0;
}
2018-04-16 18:46
学C中爱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-4-14
  得分:0 
回复 5楼 暗黑键盘
十分感谢您的解答
2018-04-16 19:51







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042707 second(s), 9 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved