关于C语言输入字符串后将首字母变大写~~~
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于C语言输入字符串后将首字母变大写~~~相关的知识,希望对你有一定的参考价值。
以下是我的程序:#include<stdio.h>
int main(void)
int i,j;
char s[101];
i=0;j=0;
while(scanf("%c",&s[0])!=EOF)
while(s[i]!='\n')
i++;
scanf("%c",&s[i]);
if(s[0]>='a'&&s[0]<='z')
s[0]=s[0]-32;
for(j=1;j<=i;j++)
if(s[j-1]==' ')
if((s[j]>='a'&&s[0]<='z'))
s[j]=s[j]-32;
for(j=0;j<=i;j++)
printf("%c",s[j]);
i=0;j=0;
return 0;
头文件为<ctype.h>
tolower()
toupper()
相信你能理解 第5个回答 2011-04-03 程序好像没有问题。
C语言截取字符串将大写字母转换为小写字母。
将被操作字符串中的指定大写字母后的所有字母截取出来,将截取出来的所有字母转换为小写字母,将此字符串写入原来被操作字符串的地址中。
函数原型
int trans(char *str, char ch);
参数说明
str 为被操作的字符串首地址,字符串的元素全为大写字母;最终将转换好的字符串写入此地址中。
ch 为指定的大写字母,此大写字母在str中只出现一次;
返回值
0 操作成功,正常返回;
1 str为空,即str==NULL
比如:字符串”WEIWENDATA” 在字符’N’之后的的字符串为” DATA”;转换后的字符串”data”。
#include<string.h>
#include<math.h>
int trans(char *str, char ch)
int lon,i;
lon=strlen(str);
for(i=0;i<lon;i++)
if(str[i]==ch)
break;
i++;
for(;i<lon;i++)
str[i]+=32;
return 0;
int main(int argc,char *argv)
char str[20];
char ch;
printf("请输入你要输入的字符串:\n");
scanf("%s",str);
getchar();
printf("请输入你要转换的字母:\n");
scanf("%c",&ch);
trans(str, ch);
printf("最终结果是:\n");
printf("%s\n",str);
return 0;
参考技术B int trans(char *str, char ch)
int i, j;
for(i=0;*(str+i)!='\0';i++)
if(*(str+i)==ch)
break;
if(*(str+i)=='\0')
*str='\0';
return 1;
for(j=0,i=i+1;*(str+i)!='\0';i++,j++)
str[j]=*(str+i)-('A'-'a');
return 0;
追问
第二个for循环就是第16行做出来说少一个)在;之前。实在不知道怎么改呀。。
追答你把我代码拷贝过去编的?
我这里可以啊。
对呀。直接拷贝过去的。不知道怎么回事。。
追答你再仔细检查一下,是不是少个括号分号什么的。
本回答被提问者和网友采纳 参考技术C 是要我们写程序吗?问题是什么?追问对呀,问题是题目哦,
以上是关于关于C语言输入字符串后将首字母变大写~~~的主要内容,如果未能解决你的问题,请参考以下文章
c语言 对任意输入的字符串,统计其中的大写字母和小写字母的个数