-4
void searchcontact()
{
    int l,i;
    char query[20];
    system("cls");
    do
    {
        find=0;
        printf("Contact Search\n Name of the Contact:\n");
        fflush(stdout);
        scanf("%[^\n]",&query);
        l=strlen(query);
        f=fopen("contact.txt","r");

        system("cls");
        printf("Search the result for %s\n",query);
        while(fread(&add,sizeof(add),3,f)==1)
        {
            for(i=0;i<=3;i++)
            name[i]=add.name[i];
            name[l]='\0';
            if(stricmp(name,query)==0)
            {
                printf("Name\t:%s\nPhone\t:%d\nE-mail\t:%s\n",add.name,add.hpnum,add.email);
                find++;
                if(find%4==0)
                {
                    printf("Press any key to continue");
                    getch();
                }
            }
        }
        if(find==0)
        printf("\nNo match found!");
        else
        printf("\n %d match(s) found",find);
        fclose(f);
        printf("\nTry again?\t[1] Yes\t[2] No\n");
        scanf("%d",&choice);
    }while(choice==1);
}

これは私のコンタクトシステムプロジェクトです...誰か知っていfind%4==0ますか? コーディングのこの部分が他の場所で参照されているため、わかりません。したがって、 find%4==0 が何を意味するのか理解できません。誰か助けてもらえますか?

4

3 に答える 3

2

一般に、x % y == zはに等しい剰余を持つTrueときです。x / yz

この場合、find % 4 == 0True変数findが割り切れる4(剰余がない) 場合です。

于 2013-02-28T22:49:49.770 に答える
1

これはモジュロ演算子です: http://en.wikipedia.org/wiki/Modulo_operation

基本的に、x を 4 で割った余りを返します。

于 2013-02-28T22:49:27.923 に答える
1

モジュロ演算子です。これは、 に対してテストすると0、 がfind4 で割り切れることを意味します。

于 2013-02-28T22:49:46.410 に答える