实验9 指针1

/*  判断是否为回文  */
#include<stdio.h>
int main(void)
{
    int i,n,m;
    char s[10];
      

    printf("Enter a string:");   /*  输入提示  */
    i=0;
    while((s[i]=getchar())!='\n')
        i++;
    s[i]='\0';



    for(n=0,m=i-1;n<m;n++,m--)    /*  n,m分别指向指向首尾两个字符  */
        if(s[n]!=s[m])       /*  判断守卫两个字符是否相等,若不等则不需要继续  */
            break;
    if(n>=m)          /*   for循环是否正常结束,若是则说明字符串是回文  */
        printf("It is a plalindrome\n");
    else
        printf("It is not a plalindrome\n");



    return 0;
}

 

/* 输入一行字符,统计并输出其中数字字符,英文字符和其他字符的个数 */
#include<stdio.h>
void count(char *s,int *digit,int *letter,int *other)
{
    *digit=*letter=*other=0;
    while(*s!='\0'){
        if(*s>='0'&&*s<='9')
            (*digit)++;
        else if((*s>='a'&&*s<='z')||(*s>='A'&&*s<='Z'))
            (*letter)++;
        else
            (*other)++;
        s++;
    }
}
int main()
{
    int i=0,digit,letter,other;
    char ch,str[80];
    printf("Enter charaters:");
    ch=getchar();
    while(ch!='\n'){
        str[i]=ch;
        i++;
        ch=getchar();
    }
    str[i]='\0';
    count(str,&digit,&letter,&other);
    printf("digit=%d  letter=%d  other=%d\n",digit,letter,other);



    return 0;
}

posted @ 2013-11-10 22:08  mo77  阅读(190)  评论(0)    收藏  举报