英文句子单词首字母大写c语言函数
答案:4 悬赏:70 手机版
解决时间 2021-03-06 05:28
- 提问者网友:贪了杯
- 2021-03-05 06:13
#include
main()
{
char a[100],;
gets(a);
g(a);
printf("%s",a);
system("pause");
}
char g(char a[])
{
int i,m=0;
a[0]=a[0]-32;
for(i=0;a[i]!='\0';i++)
{
if(a[i]==' ')
a[i+1]=a[i+1]-32;
}
return a;
}
程序要调用函数,哪一句错了?
最佳答案
- 五星知识达人网友:一秋
- 2021-03-05 06:48
#include
main( )
{
char a[100],;
gets(a);
g(a);
printf("%s",a);
system("pause");
}
char g(char a[])
{
int i,m=0;
a[0]=a[0]-32;
for(i=0;a[i]!='\0';i++)
{
if(a[i]==' ')
a[i+1]=a[i+1]-32;
}
return a;
}
全部回答
- 1楼网友:三千妖杀
- 2021-03-05 09:59
应用sscanf函数的选择性读取功能和当前读取字符计数功能可方便地解决问题。举例如下:
//#include "stdafx.h"//if the vc++6.0, with this line.
#include "stdio.h"
int main(void){
char sent[200],tmp[21];
int i=0,x;
printf("please enter an english sentence...sent:\n");
gets(sent);
while(!((x=sent[i]|0x20)>='a' && x<='z'))//跳过前导非字母
i++;
for(;sent[i];i++){
sscanf(sent+i,"%[a-za-z]%*[^a-za-z]%n",tmp,&x);//选择性读取并计数
if(*tmp>='a' && *tmp<='z')//只输出首字母大写的单词
printf("%s\n",tmp);
i+=x-1;//根据刚刚读取的单词长度调整下标
}
printf("\n");
return 0;
}
- 2楼网友:污到你湿
- 2021-03-05 08:22
#include
#include
main()
{
void g(char a[]);
char a[100];
gets(a);
g(a);
printf("%s", a);
system("pause");
}
void g(char a[])
{
int i;
a[0] = a[0] - 32;
for (i = 0; a[i] != '\0'; i++)
{
if (a[i] == ' ')
a[i + 1] = a[i + 1] - 32;
}
}
这是我修改后的,改了很多,不好意思哦!
- 3楼网友:拾荒鲤
- 2021-03-05 06:58
#include
void g(char a[]);
main()
{
char a[100];
gets(a);
g(a);
printf("%s",a);
// system("pause");
}
void g(char a[])
{
int i,m=0;
a[0]=a[0]-32;
for(i=0;a[i]!='\0';i++)
{
if(a[i]==' ')
a[i+1]=a[i+1]-32;
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯