⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 l44.1g

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 1G
字号:
#printOf course, you can also search for lines thatcontain backslashes; again, it's simply a matterof doubling the backslash in the search pattern.That is,   /\\/finds the next line with a backslash.Find the second occurrence of "\n\n" in the file"prog.c", and type "answer N", where N is itsline number.#create prog.cint  nsave  = 0;selunit(){  char fnam[20], s[50];  static char dobuff[50];  char posslev[20][20];  int diff[20], i, k, m, n, best, alts, statb[20];  FILE *f;  char zb[200];  static char saved[20];  while (ask) {    printf("What lesson? ");    fflush(stdout);    gets(dobuff);    if (strcmp(dobuff, "bye") == 0)      wrapup(0);    level = todo = dobuff;    sprintf(s, "../L%s", dobuff);    if (access(s, 04) == 0)      return;    printf("no such lesson\n");  }  alts = 0;retry:  f=scrin;  if (f==NULL) {    sprintf(fnam, "../L%s", level);    f = fopen(fnam, "r");    if (f==NULL) {      fprintf(stderr, "No script for lesson %s.\n", level);      wrapup(1);    }    while (fgets(zb, 200, f)) {      trim(zb);      if (strcmp(zb, "#next")==0)        break;    }  }  if (feof(f)) {    printf("Congratulations\n\n.You have finished this sequence.\n");    fflush(stdout);    todo = 0;    return;  }  for(i=0; fgets(s, 50, f); i++) {    sscanf(s, "%s %d", &posslev[i], &diff[i]);  }  best = -1;  /* cycle through lessons from random start */  /* first try the current place, failing that back up to       last place there are untried alternatives (but only one backup) */  n = grand()%i;  for(k=0; k<i; k++) {    m = (n+k)%i;    if (already(posslev[m])) continue;    if (best<0) best=m;    /* real alternatives */    alts++;    if (abs(diff[m]-speed) < abs(diff[best]-speed))      best=m;  }  if (best < 0 && nsave) {    nsave--;    strcpy(level, saved);    goto retry;  }  if (best <0) {    /* lessons exhausted or missing */    printf("Sorry, there are no alternative lessons at this stage.\n");    printf("See someone for help.\n\n");    fflush(stdout);    todo = 0;    return;  }  strcpy (dobuff, posslev[best]);  if (alts>1) {    nsave=1;    strcpy (saved, level);  }  todo = dobuff;  fclose(f);}abs(x){  return(x>=0? x: -x);}grand(){  static int garbage;  int a[2], b;  time(a);  b = a[1]+10*garbage++;  return(b&077777);}#copyin#user#uncopyin#match 73#bad 43The second______ one.#log#next44.1h 10

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -