53.从键盘输入任意一串字符串,程序输出同样的一串字符,要求输出字符串中大小写相互转化,其他符号不变。如输入“a123BxC”,则输出“A123bXc”

(1)我的错误程序:

#include<iostream>
#include<string.h>
using namespace std;
int ZhuanHuan(char);

int main()
{
    char a[100];
    cout<<"please input a string: "<<endl;
    cin>>a;

    for(int i=0;i<strlen(a);i++)
    {
        ZhuanHuan(a[i]);
    }
    for(int j=0;j<strlen(a);j++)
    {
        cout<<a[j];
    }
    return 0;
}

int ZhuanHuan(char index)
{
    int temp;
    if(index>=‘a‘&&index<=‘z‘)
    {
        temp=(int)index;
        temp=index+32;
        index=(char)temp;
    }else if(index>=‘A‘&&index<=‘Z‘)
    {
        temp=(int)index;
        index=index-32;
        index=(char)temp;
    }else
    {
        return 0;
    }
}

(2)修改后的程序:

#include<iostream>
#include<string.h>
using namespace std;
void ZhuanHuan(char &); //不需要返回值

int main()
{
    char a[100];
    cout<<"please input a string: "<<endl;
    cin>>a;

    for(int i=0;i<strlen(a);i++)
    {
        ZhuanHuan(a[i]);
    }
    for(int j=0;j<strlen(a);j++)
    {
        cout<<a[j];
    }
    return 0;
}

void ZhuanHuan(char &index) //1.不需要返回值,用void,  2.因为要带回数据,所以要用引用
{
    if(index>=‘a‘&&index<=‘z‘)
    {
        index += ‘A‘-‘a‘ ;
    }else if(index>=‘A‘&&index<=‘Z‘)
    {
        index += ‘a‘-‘A‘ ;
    }
}

53.从键盘输入任意一串字符串,程序输出同样的一串字符,要求输出字符串中大小写相互转化,其他符号不变。如输入“a123BxC”,则输出“A123bXc”

时间: 2024-10-17 23:24:48

53.从键盘输入任意一串字符串,程序输出同样的一串字符,要求输出字符串中大小写相互转化,其他符号不变。如输入“a123BxC”,则输出“A123bXc”的相关文章

《Python CookBook2》 第一章 文本 - 过滤字符串中不属于指定集合的字符 &amp;&amp; 检查一个字符串是文本还是二进制

过滤字符串中不属于指定集合的字符 任务: 给定一个需要保留的字符串的集合,构建一个过滤函数,并可将其应用于任何字符串s,函数返回一个s的拷贝,该拷贝只包含指定字符集合中的元素. 解决方案: import string allchars = string.maketrans('','') #all chars table def makefilter(keep): delchars = allchars.translate(allchars,keep) def thefilter(s): retu

java操作字符串,重点是记录一次使用replaceAll对字符串的操作

符串常用操作(String类) 字符串查找 String提供了两种查找字符串的方法,即indexOf与lastIndexOf方法. 1.indexOf(String s) 该方法用于返回参数字符串s在指定字符串中首次出现的索引位置,当调用字符串的indexOf()方法时,会从当前字符串的开始位置搜索s的位置:如果没有检索到字符串s,该方法返回-1 1 String str ="We are students"; 2 int size = str.indexOf("a"

最长不含有重复字符的子字符串

题目 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度.假设字符串中只包含'a'~'z'的字符.例如,在字符串"arabcacfr"中,最长的不含重复字符的子字符串是"acfr",长度为 4 思路 定义函数f(i)表示以第i个字符结尾的不包含重复字符的子字符串的最长长度,从左到右扫描,计算第i个字符串结尾的不包含重复的字符的子字符串的最长长度时f(i)时,已经知道f(i-1); 如果第i个字符之前没有出现过,那么f(i)=f(i-1)+1

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。 比如字符串“abacacde”过滤结果为“abcde”。

这是华为2013的一个机试题,会好半天才想出来,用了三个for循环,可能有点繁琐,但只要慢慢看还是好理解的, 题目: 通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉. 比如字符串"abacacde"过滤结果为"abcde". #include<stdio.h> #include<string.h> void main() { char a[]="aba

输入任意一个字符串,如:“abDEe23dJfd343dPOddfe4CdD5ccv!23rr”。 取出该字符串中所有的字母组成一个新的字符串。

#include <stdio.h>#include <string.h> /*输入任意一个字符串,如:“abDEe23dJfd343dPOddfe4CdD5ccv!23rr”. 取出该字符串中所有的字母组成一个新的字符串.*/ void main(){ char oldStr[100] = "abDEe23dJfd343dPOddfe4CdD5ccv!23rr"; char newStr[100]; int i = 0,j = 0; for(i = 0; i

C语言 输入任意字符串将其中的小写字母变大写字母

#include<stdio.h>void main() { char c[]={0}; char d[]={0}; int i,k,j=0; printf("请输入任意的字符串:"); scanf("%s",c) ; k=strlen(c); for(i=0;i<k;i++) { if(c[i]>='a'&&c[i]<='z') { d[j]=c[i]-32; j++; } if(d[i]>='A'&&a

51.从键盘上输入任意两个数和一个运算符(+、-、*、/),根据输入的运算符对两个数计算,并输出结果

?#include<iostream> using namespace std; int main() { int x,y; char a; cout<<"please input two numbers: "<<endl; cin>>x>>y; cout<<"please input an operational character:"<<endl; cin>>a; s

C语言-输入任意个字符串

来源网站: ==== http://bbs.csdn.net/topics/391045349?page=1#post-399279449 方法一: //输入任意个字符串 #include <stdio.h> #include <stdlib.h> #include <string.h> #define LINE 5 int main() { int i = 0, n = LINE; int l, len; char **str; char buf[256]; //每个

IT公司100题-25-求字符串中的最长数字串

问题描述: 实现一个函数,求出字符串中的连续最长数字串.例如输入”12345cbf3456″,输出”12345″. 函数原型为: void conti_num_max( const char * src, char * dest); dest保存最长数字串,返回void. 分析: 遍历一遍字符串,记录起始位置和长度即可. 代码实现: 1 // 25.cc 2 #include <iostream> 3 #include <cstring> 4 using namespace std