编写函数fun,其功能是:将SS所指字符串中所有下标为奇数位上的字母转换为大写 (若该位置上不是字母,则不转换)。 例如,若输入“abc4EFg”,则应输出“aBc4EFg”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任

admin2018-03-28  39

问题 编写函数fun,其功能是:将SS所指字符串中所有下标为奇数位上的字母转换为大写 (若该位置上不是字母,则不转换)。
  例如,若输入“abc4EFg”,则应输出“aBc4EFg”。
  注意:部分源程序给出如下。
  请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
  试题程序:
#include<conio.h>
#include<stdio.h>
#include<string.h>
void fun(char*ss)
{
}
void main(void)
{
  char tt[51];
  printf("\nPlease enter an
character string within 50
characters:\n");
    gets(tt);
    printf("\n\nAfter chan-
ging,the string\n%s",tt);
    fun(tt);
    printf("\nbecomes\n%s",
tt);
}

选项

答案void fun(char*ss) { int i; for(i=0;ss[i]!=’\0’;i++) /*将ss所指字符串中所有下标为奇数位置的字母转换为大写*/ if(i%2==1&&ss[i]>=’a’ &&ss[i]<=’z’) ss[i]=ss[i]一32; }

解析 将指定字符串中奇数位置的字母转换为大写,首先需要判断奇数位置,再判断该位置字符是不是小写字母,如果是小写字母,则将小写字母转换为大写字母。字母大小写转换操作中,只要将小写字母减去32即可转换为大写字母。
转载请注明原文地址:https://kaotiyun.com/show/tJxp777K
0

最新回复(0)