c语言输出字符数组中字符串中的大写字母及个数

这个程序哪里不对呢?试了一下总是不能检测到偶数位的大写字母。。。
#include<stdio.h>
void main()
{char c[8];
int i,num=0;
scanf("%s",c);

for(i=0;i<8;i++)
{if(c[i]>='A'&&c[i]<='Z')
{num++;
printf("%c",c[i]);}
i++;
}
printf("大写字母有%d个",num);
}

#include<stdio.h>
void main()
{char c[8];
int i,num=0;
scanf("%s",c);

for(i=0;i<8;i++)
{if(c[i]>='A'&&c[i]<='Z')
{num++;
printf("%c",c[i]);}
}
printf("大写字母有%d个",num);
}
你for()里面已经有i++了,所以下面不用写i++
温馨提示:答案为网友推荐,仅供参考