ايران ويج

نسخه‌ی کامل: یک سوال در باره رشته ها در C
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوستان

من برنامه ای در TC داشتم که میتوانست تعداد کلمات یک فایل متنی را شمارش کند . خواستم آن را طوری تغییر بدهم که یک کلمه خواص را که در متن وجود دارد شمارش کند اما نتوانستم .
من قبلا بارها این برنامه را با VB نوشته بودم و به خیال اینکه میتوان کارکتر ها را با هم چمع کرد تا به یک کلمه رسید ، اینکار را کردم ولی TC و C جواب نداند .


متن برنامه ای که میخوام آن را برای شمارش یک کلمه خواص تغییر بدهم به این صورت است :

کد:
/*----- Finder program ---------*/
#include <stdlib.h>;
#include <string.h>;
#include <stdio.h>;
#include <conio.h>;
main()

      {
        char *filename;
        char userword[80];
        char horuf[80];
        char *empty;
        char *s1;
        printf("Enter .TXT filename : ");
        gets(filename);
        RepeatSearchWord:
        printf("Enter word to search in %s file :");
        gets(userword);
        printf("%s\n",userword);
        if(userword==NULL)exit(0);
        FILE *fptr;
        int ch;
        char *chr;
        int white=1;
        int count=0;
        if(filename==NULL)
            {
                printf("ERROR : please enter a text file name.");
            }
        if((fptr=fopen(filename,"r"))==NULL)
            {
                printf("Can't open file %s.",filename);
            }
        printf("\n YOUR FILE : %s\n",filename);
        printf(" SEARCH FOR : %s\n",userword);

        while ((ch=getc(fptr))!=EOF)
          {
             /*chr=char(ch);*/
             switch(ch)
             {
                case ' ':
                case '\t':
                case '\n':white++;break;
                default:if(white){white=0;count++;}
             }
          }
        fclose(fptr);
        printf("File %s contains %d words.",filename,count);
        gets(s1);
    }
    /* END OF PROGRAM ! */

ممنون میشم اگر اینبار هم کمکم کنید .

قربان شما : ستاره Confused


دوست عزيز ، چرا بصورت بازگشتي نمي نويسيد ، مي تونه اون كلمه رو از ورودي بگيره و تابع بازگشتي اونو صدا بزنه.