输入一行文字,找(题目有错别字还行)出其中大写字母、小写字母、空格、数字以及其他字符各有多小(用指针方法)
这种题就是为了用上指针而用指针,没办法
gets(a)可以很方便的读入一串字符,但是有点小危险(总之洛谷一类刷题别用)
用一个*k指向数组a的第一位,之后就是遍历数组并判断元素,看代码。
纯C的把头文件改成#include<stdio.h>即可
#include <bits/stdc++.h>
using namespace std;
int main()
{
char a[80];
char *k=a;
int m=0, x=0, n=0, p=0, q=0;
gets(a);
while (*k != '\0'){
if(*k>='A' && *k<='Z') m++;
else if (*k>='a' && *k<='z') x++;
else if (*k==' ') n++;
else if (*k>='0' && *k<='9') p++;
else q++;
k++;
}
printf("%d %d %d %d %d", m, x, n, p, q);
return 0;
}