“find%4 == 0”是什么意思?

时间:2013-02-28 22:47:09

标签: if-statement while-loop fwrite fread

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是什么意思吗?我不知道由于这部分编码,我指的是其他地方。因此,我无法理解发现%4 == 0的意思,有人可以帮助我吗?

3 个答案:

答案 0 :(得分:2)

一般情况下,当x % y == z的余数等于True时,x / yz

在这种情况下,find % 4 == 0变量True可以被find整除(没有余数)。{/ p>

答案 1 :(得分:1)

这是一个模运算符:http://en.wikipedia.org/wiki/Modulo_operation

基本上,当x除以4时,它返回余数。

答案 2 :(得分:1)

它是模运算符。这意味着,当您针对0进行测试时,find可以被4整除。