C语言问题,求大神解决,谢谢啦,我是小白,最好能够解释下原因
//输入一个字符串,输出每个大写英文字母出现的次数。#include<stdio.h>voidmain(){chara[20],*p;inti=0;gets(a);whi...
//输入一个字符串,输出每个大写英文字母出现的次数。
#include<stdio.h>
void main()
{
char a[20],*p;
int i=0;
gets(a);
while(*p)
{
if(*p>='A'&&*p<='Z')
i++;
p++;
}
printf("%d\n",i);
}
不知道哪里错了 展开
#include<stdio.h>
void main()
{
char a[20],*p;
int i=0;
gets(a);
while(*p)
{
if(*p>='A'&&*p<='Z')
i++;
p++;
}
printf("%d\n",i);
}
不知道哪里错了 展开
5个回答
展开全部
int i=0;
gets(a);
p = a; //少了这个,p没指向a
while(*p)
gets(a);
p = a; //少了这个,p没指向a
while(*p)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
P指针没有指向a数组,P指针是空指针没数,在gets(a)前面加一句 p=a;
#include<stdio.h>
void main()
{
char a[20],*p;
int i=0;
p=a;
gets(a);
while(*p)
{
if(*p>='A'&&*p<='Z')
i++;
p++;
}
printf("%d\n",i);
}
#include<stdio.h>
void main()
{
char a[20],*p;
int i=0;
p=a;
gets(a);
while(*p)
{
if(*p>='A'&&*p<='Z')
i++;
p++;
}
printf("%d\n",i);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
p=a;忘记把p指向a数组了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
///////////
p=a;
p=a;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询