御笔剑客 发表于 2017-12-9 14:38:44

这段代码里面的if i%7==6是神马意思?

#include <stdio.h>
#include <stdlib.h>
int main()
{
    double *ptd;
    int max;
    int number;
    int i=0;

    puts("What is the maximum number of tpye double entries?\n");
    if(scanf("%d",&max)!=1)
    {
      puts("Number not correctly enterd --bye.");
      exit(EXIT_FAILURE);
    }
    ptd=(double *)malloc(max * sizeof(double));
    if(ptd==NULL)
    {
      puts("Memory alocation faliled.Goodbye.");
      exit(EXIT_FAILURE);
    }
    /*ptd 现在是指向有max元素的数组*/
    puts("Enter the values(q to quit)");
    while(i<max&&scanf("%lf",&ptd)==1)
      ++i;
    printf("Here are your %d entries:\n",number=i);
    for(i=0;i<number;i++)
    {
      printf("%7.2f",ptd);
      if(i%7==6)
            putchar('\n');
    }
      if(i%7!=0)
      putchar('\n');
    puts("Done.");
    free(ptd);

    return 0;


}



这段代码里面的if i%7==6是神马意思?

BngThea 发表于 2017-12-9 17:14:06

每六个元素换一行

Phoebe_Ma 发表于 2017-12-9 18:42:54

if i%7==6:
%是取余符号,这句代码意思是:如果i除7余数为6

Phoebe_Ma 发表于 2017-12-9 18:43:34

Phoebe_Ma 发表于 2017-12-9 18:42
if i%7==6:
%是取余符号,这句代码意思是:如果i除7余数为6

条件就为真,执行if语句

御笔剑客 发表于 2017-12-9 22:40:35

Phoebe_Ma 发表于 2017-12-9 18:43
条件就为真,执行if语句

不是,我是说在代码里起什么作用,感觉没用啊

wjp 发表于 2017-12-11 20:41:06

御笔剑客 发表于 2017-12-9 22:40
不是,我是说在代码里起什么作用,感觉没用啊

判断是否输出换行啊{:10_250:}
页: [1]
查看完整版本: 这段代码里面的if i%7==6是神马意思?