C言語の課題がわからないです。
Q&A
大学の課題でプログラム作成の課題を出されたのですが、わからず進んでいません。
ご教授いただけると幸いです。
課題内容
添付のプログラムをもとに,
以下の仕様のプログラムを作成せよ.
入力した文字列を以下の4種類に分けた文字列を作成する関数を作成し,
実行結果とともに提出せよ.
種類
1.アルファベット大文字
2.アルファベット小文字
3.数字文字
4.それ以外の文字
添付資料
//内容:文字列から,アルファベットを分離する関数と
// その使用方法など.
#include <stdio.h>
#include <string.h>
#define LEN 101
int Alp(const char str[], char alp[]);
int main(void) {
char str[LEN], alp[LEN];
int len;
printf("文字列:");
scanf("%s", str);
len = Alp(str, alp);
printf("%s[%d] -> %s[%lu]\n", str, len, alp, strlen(alp));
return (0);
}
//関数名 Alp
//ヘッダ なし(stdio.h)
//形 式 int Alp(const char s[], char a[]);
//引 数 文字列,アルファベットだけの文字列
//返却値 文字列sの長さ(整数方)
//解 説 文字列sのアルファベットだけを,文字列aへコピーする.
int Alp(const char s[], char a[]) {
int i, j = 0;
for (i = 0; s[i] != '\0'; i++) {
if (('a' <= s[i] && s[i] <= 'z') || ('A' <= s[i] && s[i] <= 'Z')) {
a[j++] = s[i];
}
}
a[j] = '\0';
return (i);
}
/* 実行結果
*/