fun是将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母则不换)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fun是将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母则不换)相关的知识,希望对你有一定的参考价值。
帮我看看 ,我哪里错了
#include <stdio.h>
#include <string.h>
void fun(char *ss)
int i;
for(i=1;i<strlen(ss);i=i+2)
if((ss[i]>='a') && (ss[i]<='z'))ss[i]=ss[i]-'32';
return ss;
char *p = ss ;
int i = 0 ;
while(*p)
if((i % 2) && (*p >= 'a' && *p <= 'z')) *p -= 32 ;
p++ ;
i++ ;
return ss ;
这是正确答案,可以return啊
额 。。。。void型函数即使return、也是return空值。。。。。这个程序要在vc里运行时不通过编译的。。。
参考技术A i=0;ss[i]=ss[i]-32;
也可以这么写
ss[i]=ss[i]-('a'-'A');本回答被提问者和网友采纳 参考技术B i初值应该是0
函数是void类型,所以不应该有return语句 参考技术C void fun(char *ss)
int i;
int k=0;
char a[100];
while(*ss)
a[k++]=*ss++;
a[k]=0;
printf("%s\n",a);
for(i=1;i<k;i=i+2)
if((a[i]>='a') && (a[i]<='z'))
a[i]=a[i]-32;
printf("%s\n",a);
追问
运行了一下,你的结构运行出来是错误的
追答报什么错呢?
c语言程序设计请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为
c语言程序设计请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为大写
#include<stdio.h>#include <stdlib.h>
#include <string.h>
void fun(char a[])
int i;
int t=strlen(a);
for(i=0;i<t;i++)
if(i%2!=0)
if(toascii(a[i])>=97&&toascii(a[i])<=122)
a[i]=(char)(toascii(a[i])-32);
puts(a);
int main()
char a[100];
gets(a);
fun(a);
return 0;
参考技术A #include <stdio.h>
void fun( char *ss )
int i;
for( i=0;ss[i];i++ )
if ( i%2 )
if ( ss[i]>='a' && ss[i]<='z' )
ss[i] += 'A'-'a' ;
void main()
char s[]="hello world" ;
printf("%s\\n", s );
fun(s);
printf("%s\\n", s );
参考技术B void fun(char* str)
for (int i=1; i<strlen(str); i++)
if (i%2==1&&str[i]<122&&str[i]>96)
str[i]=str[i]-32;
以上是关于fun是将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母则不换)的主要内容,如果未能解决你的问题,请参考以下文章
请编写一个程序将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。
C语言试题三十六之将s所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。
C语言试题三十六之将s所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。
C语言试题五十之请编写一个函数void function(char *ss),其功能时:将字符串ss中所有下标为奇数位置上的字母转换为大写(若位置上不是字母,则不转换)。
C语言试题五十之请编写一个函数void function(char *ss),其功能时:将字符串ss中所有下标为奇数位置上的字母转换为大写(若位置上不是字母,则不转换)。