注册 登录
编程论坛 C语言论坛

关于字符串大小写的转换

何以为孤 发布于 2017-11-23 23:31, 1402 次点击
后面有错误提示的附件:没搞懂怎么出现错误了?
#include<stdio.h>
#include<string.h>
int main()
{
    char left[20], right[20];
    int num=0;

    while (1)
    {
        printf("输入转换大小写的方式:1 表示大写,2 表示小写,0 表示结束\n");
        scanf_s("%d", &num);
        if (num == 1)
        {
            printf("输入一个字符\n");
            scanf_s("%s",&right);
            strcpy_s(left,right);
            _strupr_s(left);
            printf("转换成大写字母的字符串为:%s\n", left);
        }
        else if (num == 2)
        {
            printf("输入一个字符:\n");
            scanf_s("%s", &right);
            strcpy_s(left, right);
            _strlwr_s(left);
            printf("转换成小写字母的字符串为:%s", left);
        }
        else  if (num==0)
        {
            break;
        }
        
    }
    getchar();
    getchar();
    return 0;
}
只有本站会员才能查看附件,请 登录
3 回复
#2
吹水佬2017-11-24 05:51
#include<stdio.h>
#include<string.h>
int main()
{
    char left[20], right[20];
    int num=0;

    while (1)
    {
        printf("输入转换大小写的方式:1 表示大写,2 表示小写,0 表示结束\n");
        scanf_s("%d", &num);
        if (num==0)
            break;
        printf("输入一个字符串\n");
        scanf_s("%s", left, 20);
        if (num == 1)
        {
            _strupr_s(left);
            printf("转换成大写字母的字符串为:%s\n", left);
        }
        else if (num == 2)
        {
            _strlwr_s(left);
            printf("转换成小写字母的字符串为:%s\n", left);
        }
    }
    return 0;
}
#3
何以为孤2017-11-24 07:33
回复 2楼 吹水佬
谢谢大佬的指点,,不过为什么在scanf(“%s”,left,20);中加个20就行了??,我看了你的程序 我感觉我的代码可读性太差,很多多余的地方

[此贴子已经被作者于2017-11-24 07:34编辑过]

#4
吹水佬2017-11-24 09:29
以下是引用何以为孤在2017-11-24 07:33:15的发言:

谢谢大佬的指点,,不过为什么在scanf(“%s”,left,20);中加个20就行了??,我看了你的程序 我感觉我的代码可读性太差,很多多余的地方

是scanf_s,不是scanf
1