输入一个字符串,将其中小写字母改成大写字母,把大写字母改成小写字母,其余字符不变,输出该字符串。

题目

输入一个字符串,将其中小写字母改成大写字母,把大写字母改成小写字母,其余字符不变,输出该字符串。


相似考题
更多“输入一个字符串,将其中小写字母改成大写字母,把大写字母改成小写字母,其余字符不变,输出该字符串。”相关问题
  • 第1题:

    下列程序的功能是:把s字符串中的所有字母改成该字母的下一个字母,字母2改成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符不做改变。请编写函数chg(char*s)实现程序要求,最后调用函数readwriteDAT(),读取in36.dat中的字符串,并把结果输出到文件out36.dat中。

    例如:s字符串中原有的内容为Mn 123Zxy,则调用该函数后,结果为No 123Ayz。

    注意;部分源程序已给出。

    请勿改动主函数脚main()和输入输出函数readwriteDAT()的内容。

    试题程序:

    include<stdio.h>

    include<string.h>

    include<conio.h>

    include<ctype.h>

    define N 81

    void readwriteDAT();

    void chg(char *s)

    {

    }

    main()

    {

    char a[N];

    clrscr();

    printf("Enter a string:");

    gets(a);

    printf("The original string is :");

    puts(a);

    chg(a);

    printf("The string after modified :");

    puts(a);

    readwriteDAT();

    }

    void readwriteDAT()

    {

    int i;

    char a[N];

    FILE *rf,*wf;

    rf=fopen("in36.dat","r");

    wf=fopen("out36.dat","w");

    for(i=0;i<10;i++)

    {

    fgets(a,81,rf);

    chg(a);

    fprintf(wf,"%s",a);

    }

    fclose(rf);

    fclose(wf);

    }


    正确答案:void chg(char *s) { while(*s) if(*s=='z'||*s=='Z') /*字母z改成字母a 字母Z改成字母A*/ { *s-=25; s++; /*取下一个字母*/ } else if(*s>'a'&& *s='y') /*把小写字母改成该字母的下一个字母*/ { *s+=1; s++; /*取下一个字母*/ } else if(*s>='A'&& *s='Y') /*~把大写字母改成字母的下一个字母*/ { *s+=1; s++; /*取下一个字母*/ } else s++; /*取下一个字母*/ }
    void chg(char *s) { while(*s) if(*s=='z'||*s=='Z') /*字母z改成字母a, 字母Z改成字母A*/ { *s-=25; s++; /*取下一个字母*/ } else if(*s>'a'&& *s='y') /*把小写字母改成该字母的下一个字母*/ { *s+=1; s++; /*取下一个字母*/ } else if(*s>='A'&& *s='Y') /*~把大写字母改成字母的下一个字母*/ { *s+=1; s++; /*取下一个字母*/ } else s++; /*取下一个字母*/ } 解析:本题考查的知识点如下:
    (1) 英文字母对应的ASCII码的排列规律。
    (2) 指针的操作。
    (3) 选择结构中多个条件的布尔运算。
    在ASCH码中,大、小写字母的ASCII码是连贯的,a~z对应97~122,A~Z对应65~90。z的ASCII码减去25即得到a的ASCII码,对Z同样适合。所以我们要对字符串中的字符依次进行判断,若是大(小)写字母,则按照ASCII码的规律和题意要求对字符进行转换。在这里,使用指针完成对字符的依次访问,每次将指针的地址加1直至指针为空即可。在选择结构的多个条件中,若需同时满足,则用“与”运算,否则,用“或”运算。

  • 第2题:

    下列程序的功能是:把s字符串中的所有字母改成该字母的下一个字母,字母z改成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符不做改变。请编写函数chg(char*s)实现程序要求,最后调用函数readwriteDAT(),读取in36.dat中的字符串,并把结果输出到文件out36.dat中。

    例如:s字符串中原有的内容为Mn 123Zxy,则调用该函数后,结果为No 123Ayz。

    注意:部分源程序已给出。

    请勿改动主函数main()和输入输出函数readwriteDAT()的内容。

    试题程序:

    include<stdio. h>

    include<string. h>

    include<conio, h>

    include<ctype, h>

    define N 81

    void readwriteDAT ();

    void chg(char as)

    {

    }

    main ( )

    {

    char a [N];

    clrscr ();

    printf("Enter a string:");

    gets (a);

    printf ("The original string is :");

    puts (a);

    chg (a);

    printf("The string after modified :");

    puts (a);

    readwriteDAT ();

    }

    void readwriteDAT ()

    {

    int i;

    char a [N];

    FILE *rf, *wf;

    r f=fopen ("in36. dat", "r" );

    wf=fopen ("out36. dat", "w" );

    for (i=0;i<10; i++)

    {

    fgets (a, 81, rf);

    chg (a);

    fprintf (wf, "%s", a);

    }

    fclose (rf);

    fclose (wf);

    }


    正确答案:void chg(char *s) { while (*s) if(*s=='z' | |*s=='z') /*字母z改成字母a字母z改成字母A*/ { *s-=25; s++; /*取下一个字母* / } else if(*s>='a'&& *s='y') /*把小写字母改成该字母的下一个字母*/ { *s+=l; s++; /*取下一个字母*/ } else if (*s>='A'&& *s='Y') /*把大写字母改成该字母的下一个字母*/ { *s+=l; s++; /*取下一个字母*/ } else s++; /*取下一个字母* / }
    void chg(char *s) { while (*s) if(*s=='z' | |*s=='z') /*字母z改成字母a,字母z改成字母A*/ { *s-=25; s++; /*取下一个字母* / } else if(*s>='a'&& *s='y') /*把小写字母改成该字母的下一个字母*/ { *s+=l; s++; /*取下一个字母*/ } else if (*s>='A'&& *s='Y') /*把大写字母改成该字母的下一个字母*/ { *s+=l; s++; /*取下一个字母*/ } else s++; /*取下一个字母* / } 解析:本题考查的知识点如下:
    (1)英文字母对应的ASCII码的排列规律。
    (2)指针的操作。
    (3)选择结构中多个条件的布尔运算。
    在ASCII码中,大、小写字母的ASCII码是连贯的,a~z对应97~122,A~Z对应65~90。z的ASCII码减去25即得到a的ASCII码,对Z同样适合。所以我们要对字符串中的字符依次进行判断,若是大(小)写字母,则按照ASCII码的规律和题意要求对字符进行转换。在这里,使用指针完成对字符的依次访问,每次将指针的地址加1直至指针为空即可。在选择结构的多个条件中,若需同时满足,则用“与”运算,否则,用“或”运算。

  • 第3题:

    函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组xx中,请编制函数ConvertCharA,其函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母Z,则改写成字母a,大写字母和其他字符保持不变。把已处理的字符串仍按行重新存入字符串数组xx中。最后main函数调用函数WriteDat把结果xx输出到文件out.dat中。原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。 注意:部分源程序存放在test.c文件中。 请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。


    正确答案:
    【审题关键句】以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,大小写不变,其他字符不变。
    【解题思路】
    ①定义整型循环变量i、j。

    【参考答案】

  • 第4题:

    下列给定程序中,函数proc()的作用是:将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。

    例如,若输入“I,anl,A,Student”,则输出“i,am,a,student”。

    请修改程序中的错误。使它能得到正确结果。

    注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。

    试题程序:


    正确答案:

  • 第5题:

    下列函数的功能是()。includeusing namespace std;void main(){ char a;int i; cin>>a

    下列函数的功能是( )。 #include<iostream> using namespace std; void main() { char a;int i; cin>>a; for(i=1;i<=10;i++) { if((a>= 'a')&&(a<= 'z')) a=a-i; cout<<a; } }

    A.把a中的小写字母变成大写字母

    B.把a中的大写字母变成小写字母

    C.把a中的所有字母变成小写字母

    D.把a中的字符变成它前面i个的字符


    正确答案:D
    解析:该题考查程序的功能,用举例法可显见其功能,不妨设a='d',结果为ca^^^^^^,该程序仅对在小写字母a~2之间的字母起作用。

  • 第6题:

    编一个程序,从键盘输入一个字符串,用foreach循环语句,统计其中大写字母的个数和小写字母的个数。


    正确答案: strings;
    intn1=0,n2=0;
    Console.WriteLine("请输入一个字符串");
    s=Console.ReadLine();
    foreach(charcins)
    {
    if(c>=’A’&&c<=’Z’)
    n1++;
    elseif(c>=’a’&&c<=’z’)
    n2++;
    else
    continue;
    }
    Console.WriteLine("大写字母有{0}个,小写字母有{1}个",n1,n2);

  • 第7题:

    下面哪个函数是用来将字符串中的大写字母转换为小写字母?()

    • A、ucase()
    • B、lcase()
    • C、dcase()
    • D、left()

    正确答案:A

  • 第8题:

    strtoupper()函数的功能是:()

    • A、将给定字符串全部转换为大写字母
    • B、将给定字符串全部转换为小写字母
    • C、将给定字符串首字母转换为大写字母
    • D、将给定字符串首字母转换为小写字母

    正确答案:A

  • 第9题:

    问答题
    编一个程序,从键盘输入一个字符串,用foreach循环语句,统计其中大写字母的个数和小写字母的个数。

    正确答案: strings;
    intn1=0,n2=0;
    Console.WriteLine("请输入一个字符串");
    s=Console.ReadLine();
    foreach(charcins)
    {
    if(c>=’A’&&c<=’Z’)
    n1++;
    elseif(c>=’a’&&c<=’z’)
    n2++;
    else
    continue;
    }
    Console.WriteLine("大写字母有{0}个,小写字母有{1}个",n1,n2);
    解析: 暂无解析

  • 第10题:

    问答题
    编一个程序,输入一个字符,如果输入的字符是大写字母,则转换为小写字母;如果输入的字符是小写字母,则转换为大写字母,否则不转换。

    正确答案: charch,c;
    Console.WriteLine("请输入一个字符");
    ch=char.Parse(Console.ReadLine());
    if(ch>=’A’&&ch<=’Z’)
    {
    c=(char)(ch+32);
    Console.WriteLine("字符{0}为大写字母,转换为小写字母为{1}",ch,c);
    }
    elseif(ch>=’a’&&ch<=’z’)
    {
    c=(char)(ch-32);
    Console.WriteLine("字符{0}为小写字母,转换为大写字母为{1}",ch,c);
    }
    else
    Console.WriteLine("{0}既不是大写字母也不是小写字母",ch);
    解析: 暂无解析

  • 第11题:

    问答题
    输入一个字符,判定它是什么类型的字符(大写字母,小写字母,数字或者其它字符)

    正确答案: charch;
    Console.WriteLine("请输入一个字符");
    ch=char.Parse(Console.ReadLine());
    if(ch>=’A’&&ch<=’Z’)
    Console.WriteLine("大写字母");
    elseif(ch>=’a’&&ch<=’z’)
    Console.WriteLine("小写字母");
    elseif(ch>=’0’&&ch<=’9’)
    Console.WriteLine("数字");
    else
    Console.WriteLine("其他字母");
    解析: 暂无解析

  • 第12题:

    填空题
    当在字符串前加上小写字母()或大写字母()表示原始字符串,不对其中的任何字符进行转义。

    正确答案: r,R
    解析: 暂无解析

  • 第13题:

    tolower()函数用来()。

    A、小写字母转换为大写字母

    B、大写字母转换为小写字母

    C、小写字母转换为大写字母,同时大写字母转换为小写字母

    D、判断大小写


    参考答案:B

  • 第14题:

    以下函数实现的功能是void fun (char *s){ char *p,*q,temp; p=s; q=s+ strlen(s)-1; while (p<q) { temp=*p; *p=*q; *p=temp; p++; q--; }}

    A.将一个字符串首尾颠倒

    B.计算字符串的长度

    C.统计字符串中的空格个数

    D.将字符串中的小写字母变成大写字母


    正确答案:A
    解析:本题考核while循环语句和指针的使用。在该函数中,循环开始时,指针p指向字符串的第1个字符,指针q指向字符串的最后一个字符,首先交换这两个字符;然后,指针p前进一个字符位置(指向下一个字符),指针q后退一个字符位置(指向前一个字符);经过若干次循环,条件pq将为假(即指针p和指针q相遇),循环结束。从而实现了将一个字符串首尾颠倒的功能。

  • 第15题:

    下列给定程序中函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其他字符不变。

    例如,若输入“Ab,cD”,则输出“AB,CD”。

    请改正程序中的错误,使它能得出正确的结果。

    注意:部分源程序在文件MODIl.C中,不得增行或删行,也不得更改程序的结构!


    正确答案:
    (1)if((tt[i]>=’a’)&&(tt[i]<=‘z’))(2)tt[i]一=32;【考点分析】本题考查:if语句条件表达式;小写字母转大写字母的方法。【解题思路】(1)分析本题可知,要判断字符是否为小写字母,即判断其是否在a—z之间,所以这里需要进行连续的比较,用&&。(2)从ASCIl码表中可以看出,小写字母的ASCIl码值比对应大写字母的ASCIl值大32。将字符串中的小写字母改为大写字母的方法是:从字符串第一个字符开始,根据ASCIl码值判断该字母是不是小写字母,若是,则ASCIl码值减32即可。

  • 第16题:

    函数ReadDat()的功能是实现从文件IN5.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数ConvertCharA(),该函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母z,则改写成字母a。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件OUT5.DAT中。

    例如,原文:Adb.Bcdza

    abck.LLhj

    结果:Aec.Bdeab

    bcdl.LLik

    原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。

    注意:部分源程序已给出。

    请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。


    #include
    #include
    #include
    char xx[50][80] ;
    int maxline = 0 ;/* 文章的总行数 */
    int ReadDat(void) ;
    void WriteDat(void) ;
    void ConvertCharA(void)
    {
    int i,j; /*定义循环控制变量*/
    int str; /*存储字符串的长度*/
    for(i=0;i
    {
    str=strlen(xx[i]); /*求得当前行的字符串的长度*/
    for(j=0;j
    if(xx[i][j]>='a' && xx[i][j]<='z') /*如果是小写字母*/
    if(xx[i][j]=='z')
    xx[i][j]='a'; /*如果是小写字母z,则改写成字母a*/
    else
    xx[i][j]+=1; /*其他的小写字母则改写为该字母的下一个字母*/
    }
    }
    void main()
    {
    system("CLS");
    if(ReadDat())
    {
    printf("数据文件IN5.DAT不能打开!\n\007") ;
    return ;
    }
    ConvertCharA() ;
    WriteDat() ;
    }
    int ReadDat(void)
    {
    FILE *fp ;
    int i =0 ;
    char *p ;
    if((fp = fopen("IN5.DAT", "r")) == NULL) return 1 ;
    while(fgets(xx[i], 80, fp) !=NULL)
    {
    p = strchr(xx[i], '\n') ;
    if(p) *p = 0 ;
    i++;
    }
    maxline = i ;
    fclose(fp) ;
    return 0 ;
    }
    void WriteDat(void)
    {
    FILE *fp ;
    int i ;
    system("CLS");
    fp = fopen("OUT5.DAT", "w") ;
    for(i = 0 ; i < maxline ; i++)
    {
    printf("%s\n", xx[i]) ;
    fprintf(fp, "%s\n", xx[i]) ;
    }
    fclose(fp) ;
    }

  • 第17题:

    编一个程序,输入一个字符,如果输入的字符是大写字母,则转换为小写字母;如果输入的字符是小写字母,则转换为大写字母,否则不转换。


    正确答案: charch,c;
    Console.WriteLine("请输入一个字符");
    ch=char.Parse(Console.ReadLine());
    if(ch>=’A’&&ch<=’Z’)
    {
    c=(char)(ch+32);
    Console.WriteLine("字符{0}为大写字母,转换为小写字母为{1}",ch,c);
    }
    elseif(ch>=’a’&&ch<=’z’)
    {
    c=(char)(ch-32);
    Console.WriteLine("字符{0}为小写字母,转换为大写字母为{1}",ch,c);
    }
    else
    Console.WriteLine("{0}既不是大写字母也不是小写字母",ch);

  • 第18题:

    各种计算机中,字符的ASCII码不完全相同。但是对英文26个字母而言,其大写字母与小写字母的序号的相对位置是不变的。下面的说法正确的是()。

    • A、大写字母A的序号比小写字母a的序号小32
    • B、小写字母a的序号比写大字母A的序号小32
    • C、大写字母A的序号紧跟在小写字母a的序号后面
    • D、小写字母a的序号紧跟在大写字母A的序号后面

    正确答案:A

  • 第19题:

    输入一个字符,判定它是什么类型的字符(大写字母,小写字母,数字或者其它字符)


    正确答案: charch;
    Console.WriteLine("请输入一个字符");
    ch=char.Parse(Console.ReadLine());
    if(ch>=’A’&&ch<=’Z’)
    Console.WriteLine("大写字母");
    elseif(ch>=’a’&&ch<=’z’)
    Console.WriteLine("小写字母");
    elseif(ch>=’0’&&ch<=’9’)
    Console.WriteLine("数字");
    else
    Console.WriteLine("其他字母");

  • 第20题:

    在ASCII码表中,按照ASCII码值从小到大排列顺序是()。

    • A、数字、英文大写字母、英文小写字母
    • B、数字、英文小写字母、英文大写字母
    • C、英文大写字母、英文小写字母、数字
    • D、英文小写字母、英文大写字母、数字

    正确答案:A

  • 第21题:

    单选题
    strtolower()函数的功能是()
    A

    将给定的字符串全部转换为小写字母

    B

    将给定的字符串全部转换为大写字母

    C

    将给定的字符串首字母转换为小写字母

    D

    将给定的字符串首字母转换为大写字母


    正确答案: A
    解析: 暂无解析

  • 第22题:

    问答题
    输入一个字符串,将其中小写字母改成大写字母,把大写字母改成小写字母,其余字符不变,输出该字符串。

    正确答案: strings;
    Console.WriteLine("请输入一个字符串:");
    s=Console.ReadLine();
    foreach(charchins)
    if(’a’<=ch&&ch<=’z’)Console.Write((char)((int)ch-32));
    elseif(’A’<=ch&&ch<=’Z’)Console.Write((char)((int)ch+32));
    elseConsole.Write(ch);
    Console.WriteLine();
    解析: 暂无解析

  • 第23题:

    单选题
    下面哪个函数是用来将字符串中的大写字母转换为小写字母?()
    A

    ucase()

    B

    lcase()

    C

    dcase()

    D

    left()


    正确答案: C
    解析: 暂无解析