C言語で文字列(数字、アルファベット(大文字、小文字)、その他)を入力し、ポインタを利用した関数で、文字列より種類別の文字列を抽出し表示する。
例:
入力:0a!C1%
出力:
数字:01
英字:aC
他:!%
#include<stdio.h>
#include <string.h>
#define NUM 201
int extnum(const char *s, char *m);
int main(void){
char str[NUM],num[NUM];
int num_cnt;
printf("文字列:"); scanf("%s",str);
num_cnt=extnum(str,num);
printf("数字文字数:%d\n",num_cnt);
return(0);
}
int extnum(const char *s,char *m){
int cnt=0;
int c;
while((c=*s++)){
if('0'<=c&&c <='9'){
if('a'<=c&&c<='z'){
if('A'<=c&&c<='Z'){
if((0x00<=c&&c<=0x2f) ||
(0x3a<=c&&c<=0x40)||
(0x56<=c&&c<=0x60) ||
(0x7b<=c)){
cnt++;
} } } }
}
printf("\n");
return(cnt);
}