|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码1,输入时无法处理第一个字符,如输入:ASDasd,打印结果:AsdASD
- #include <stdio.h>
- int main()
- {
- char name[25];
- int i=0,count=32;
-
- printf("请输入一行英文句子:\n");
- scanf("%s",name);
-
- while(name[i++]!='\0')
- {
- if(name[i]>='A'&&name[i]<='Z')
- {
- name[i]=name[i]+32;
- }
- else if(name[i]>='a'&&name[i]<='z')
- {
- name[i]=name[i]-32;
- }
- }
-
- printf("%s\n",name);
- return 0;
- }
复制代码
代码2:无法处理第一个字符,如输入A,结果为0,但输入aA时,结果为1.
- #include <stdio.h>
- int main()
- {
- char name[25];
- int i=0,count=0;
-
- printf("请输入一行英文句子:\n");
- scanf("%s",name);
-
- while(name[i++]!='\0')//字符串以\0结尾,当name[i]=='\0'字符串结束
- {
- if(name[i]>='A'&&name[i]<='Z')
- {
- count++;
- }
- }
- printf("有%d个大写字母!\n",count);
-
- return 0;
- }
复制代码
求助:程序错误的原因是什么?如何解决?
本帖最后由 baige 于 2020-8-3 14:20 编辑
- #include <stdio.h>
- int main()
- {
- char name[25];
- int i=-1,count=32;
-
- printf("请输入一行英文句子:\n");
- scanf("%s",name);
-
- while(name[++i]!='\0')
- {
- if(name[i]>='A'&&name[i]<='Z')
- {
- name[i] = name[i]+32;
- }
- else if(name[i]>='a'&&name[i]<='z')
- {
- name[i]=name[i]-32;
- }
- }
-
- printf("%s\n",name);
- return 0;
- }
复制代码
- #include <stdio.h>
- int main()
- {
- char name[25];
- int i=0,count=0;
-
- printf("请输入一行英文句子:\n");
- scanf("%s",name);
-
- while(name[i]!='\0')//字符串以\0结尾,当name[i]=='\0'字符串结束
- {
- if(name[i]>='A'&&name[i]<='Z')
- {
- count++;
- }
- i++;
- }
- printf("有%d个大写字母!\n",count);
-
- return 0;
- }
复制代码
- #include <stdio.h>
- int main()
- {
- char name[25];
- int i=0,count=32;
-
- printf("请输入一行英文句子:\n");
- scanf("%s",name);
-
- while(name[i]!='\0')
- {
- if(name[i]>='A'&&name[i]<='Z')
- {
- name[i] = name[i]+32;
- }
- else if(name[i]>='a'&&name[i]<='z')
- {
- name[i]=name[i]-32;
- }
- ++i;
- }
-
- printf("%s\n",name);
- return 0;
- }
复制代码
|
|