回复 2楼 peng880610
											感谢你的代码
  我改了一下又问了一下老师
这是改后能运行的:
#include<stdio.h>
#include<stdlib.h>
void sort(char s[],int *a,int *b,int *c,int *d)
{
    int i;
    char *p=s;
    for(i=0;*(p+i)!='\0';i++)
    {
        if(p[i]>='A' && p[i]<='Z'||p[i]>='a'&& p[i]<='z')
            (*a)++;
        else if(p[i]>='0' && p[i]<='9')
            (*b)++;
        else if(p[i]==' '||*p=='\t'||*p=='tab')
            (*c)++;
        else (*d)++;
    }
}
int main()
{
    FILE *fp;
    char s[1000]={0};
    int i=0, alpha=0, digit=0, brk=0, other=0;
    if ((fp=fopen("d:\\text.txt","rb"))==NULL)
    {
        printf("无法打开此文件\n");
        exit(0);
    }
    while(!feof(fp))
    {
        s[i++]=fgetc(fp);
    }
    sort(s, &alpha, &digit, &brk, &other);
    printf("字母:%d\n数字:%d\n空格键:%d\n其他字符:%d\n",alpha,digit,brk,other);
    fclose(fp);
    return 0;
}