将ss所指字符串中所有下标为奇数位置上的字母转换为大写

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/XiaoCaiDaYong/article/details/65443124

题目:
请编写一个函数fun, 其功能是: 将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母, 则不转换)。
例如, 若输入”abc4EFg”,则应输出”aBc4EFg”。
注意:部分原程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

代码如下:

/*

请编写一个函数fun, 其功能是: 将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母, 则不转换)。 
例如, 若输入"abc4EFg",则应输出"aBc4EFg"。 
注意:部分原程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

*/
#include <stdio.h> 
#include <string.h> 
void fun( char *ss ) 
{ 
    int i;
    int len;
    len=strlen(ss);
    for(i=0;i<len;i++)
    {
        if(1 == i%2) // 判断下标是否为奇数
        {
            if(ss[i]>='a' && ss[i]<='z')  // 若为奇数,再判断是否为a-z之间的字母
            {
                        ss[i]=ss[i]-32;  // 进行小写向大写转换
            }
        }
    }
} 
void main( void ) 
{ 
    char tt[51]; 
    printf( "\nPlease enter an character string within 50 characters:\n" ); 
    gets( tt ); 
    printf( "\n\nAfter changing, the string\n \"%s\"", tt ); 
    fun(tt) ; 
    printf( "\nbecomes\n \"%s\"", tt ); 
} 

结果为:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/XiaoCaiDaYong/article/details/65443124
今日推荐