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

admin2016-12-06  27

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

选项

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

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

最新回复(0)