找回密码
 register

QQ登录

只需一步,快速开始

查看: 19|回复: 0

[C语言] 请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换成大写(若该位置上不是字母,则不转换)

[复制链接]

[C语言] 请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换成大写(若该位置上不是字母,则不转换)

[复制链接]
  • 打卡等级:热心大叔
  • 打卡总天数:104
  • 打卡月天数:27
  • 打卡总奖励:103
  • 最近打卡:2025-01-31 22:23:22
Waylee

主题

0

回帖

1万

积分

仙帝

积分
13021
Waylee 2025-1-26 15:38 | 显示全部楼层 |阅读模式 | Google Chrome | Windows 10

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×

【题目要求】
请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换成大写(若该位置上不是字母,则不转换)。

例如,若输入"abc4EFG",则应输出"aBc4EFG"。

注意:部分源程序存在文件prog1.c中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include <stdio.h>
#include <string.h>
void fun( char *ss )
{
    int i;
    int len = strlen(ss);
    for(i=1;i<len;i+=2)
    {
        if(ss[i] >= 'A' && ss[i] <= 'z')
        {
            ss[i] = ss[i] & 0xDF;
        }
    }
}

void main( void )
{
   char tt[51];void NONO ();
   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 );
   NONO();
   getchar();
}

void NONO ()
{
/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,
   输出数据,关闭文件。 */
   char tt[51], ch;
   FILE *rf, *wf ;
   int len, i=0 ;

   rf = fopen("in.dat","r") ;
   wf = fopen("out.dat","w") ;
   while(i < 10) {
     fgets( tt, 50, rf );
     len = strlen(tt) - 1 ;
     ch = tt[len] ;
     if(ch == '\n' || ch == 0x1a) tt[len] = 0 ;
     fun(tt);
     fprintf( wf, "%s\n", tt );
     i++ ;
   }
   fclose(rf) ;
   fclose(wf) ;
}

您需要登录后才可以回帖 登录 | register

本版积分规则

雪舞知识库 | 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 |天天打卡

GMT+8, 2025-1-31 23:59 , Processed in 0.104142 second(s), 6 queries , Redis On.

Powered by XueWu Licensed

Copyright © Tencent Cloud.

快速回复 返回顶部 返回列表