| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1762 人关注过本帖
标题:c语言,求大神解答
只看楼主 加入收藏
清风萨克斯
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2020-10-28
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:6 
c语言,求大神解答
编程实现:从键盘输入4位的验证码(大写字母,小写字母或数字),将其全部转换为大写或小写字母的方式进行输出。如输入Eg3A,转换为EG3A或eg3a输出
搜索更多相关主题的帖子: 小写 字母 输出 c语言 转换 
2020-11-02 16:53
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
收藏
得分:10 
回复 楼主 清风萨克斯
下面的程序存在的问题是:由于验证码是由数字与字母组合而成,混合存放于字符数组中,输入完成后,可能需要多按一两次回车键
程序代码:
// 从键盘输入4位的验证码(大写字母,小写字母或数字),将其全部转换为大写或小写字母的方式进行输出。如输入Eg3A,转换为EG3A或eg3a输出
#include<stdio.h>
void main()
{
    int i,y = 1;
    char yzm[18];
    while(y)
    {
        printf("请输入四位验证码(字母或数字):");
        scanf_s("%s",&yzm,16);

        for (i = 0;i < 4;i++)
        {
            if (yzm[i] < '0' && (yzm[i] > '9' && yzm[i] < 'A') && (yzm[i] > 'Z' && yzm[i] < 'a') && yzm[i] > 'z')
            {
                printf("输入了非法字符,请重新输入!");
                y = 1;
                break;
            }
            else
            {
                y = 0;                      // 跳出 while 循环
            }
        }

    }

    for (i = 0;i < 4;i++)                   // 转换为小写字母
    {
        if (yzm[i] >= 'A' && yzm[i] <= 'Z')
            yzm[i] += 32;
    }

/*    for (i = 0;i < 4;i++)                   // 转换为大写字母,此段程序与上一段程序任取一段
    {
        if (yzm[i] >= 'a' && yzm[i] <= 'z')
            yzm[i] -= 32;
    }*/

    printf("%s",yzm);
    printf("\n");

}


[此贴子已经被作者于2020-11-2 20:27编辑过]

2020-11-02 19:54
清风萨克斯
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2020-10-28
收藏
得分:0 
回复 2楼 风过无痕1989

y = 1,yzm[18] 什么意思
2020-11-02 20:08
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
收藏
得分:5 
回复 3楼 清风萨克斯
这两个类型错了,应该是整形的,我这就改

 i,是为for循环准备的,y = 1 是为了让 while 循环无休止的进行下去,直到所输入的字符要求,y 就等于 0 了,循环也就终止了
 数组资金积累了是18个单元,是为了防止四位全是数字时溢出,本来有16就够了,第17个存字符串终止符,再富余一个
2020-11-02 20:22
清风萨克斯
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2020-10-28
收藏
得分:0 
回复 4楼 风过无痕1989
用for循环 怎么写,while 不懂
2020-11-02 20:51
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
收藏
得分:0 
以下是引用清风萨克斯在2020-11-2 20:51:48的发言:
用for循环 怎么写,while 不懂


让我说什么呢?我的百度网盘里有几本书,你先下载下来看看吧

C Primer Plus 第6版:https://pan.baidu.com/s/17TzjiGxOYJOVPgLqUK7vkA,提取码:2kof

谭浩强《C语言程序设计》第五版及学习指导:https://pan.baidu.com/s/1rWu0lnsBxWOCx6vN6n_MnA  提取码:yzv0
2020-11-02 22:18
清风萨克斯
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2020-10-28
收藏
得分:0 
回复 5楼 清风萨克斯
谢谢
2020-11-02 22:29
快速回复:c语言,求大神解答
数据加载中...
 
   



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

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