Пример #1
0
void results_of_competition(){

    FILE* f;
    char str[40];
    int results [3];
    short int i, max;

    struct Competitors participant, first, second, third;

    first.res = -1;
    second.res = -1;
    third.res = -1;
    f = fopen("competition.txt", "r");

    while (fgets(str, 40, f) != NULL) {
        i = parse_name(str, &participant);
        parse_results(i, str, results);

        max = -1;
        for (i = 0; i < 3; ++i){
            if (results[i] > max)  max = results[i];
        }
        participant.res = max;

        place_participants(first, third, second, participant);
    }

    fclose(f);

    if (first.res != -1) printf("I место: %s, результат: %d\n", first.name, first.res);
    if (second.res != -1) printf("II место: %s, результат: %d\n", second.name, second.res);
    if (third.res != -1) printf("III место: %s, результат: %d\n", third.name, third.res);

}
Пример #2
0
long google_query(char *gooflag, char *type, char *value ) {
  extern char pretty_query[1024]; //a human-readable version
  extern char mid_query[1024];//a version for the web server
  extern char *site;
  extern char *xtra_stuff;
  extern char total_string[256];
  extern int sflag;
  extern int vflag;
  extern long results;

  char scratch[1024];

  if (strlen(total_string) ==0) {
	//printf("null total string");
        sprintf(total_string,"%s:%s",type,value);
  }


  if (vflag) printf("(verbose) command line query => %s\n",value);

  if (strcmp(gooflag,"indexof") ==0 ) {
     sprintf(pretty_query, "intitle:index.of+%s",value); 
  }
  else if (strcmp(gooflag,"inurl") ==0 ) {
     sprintf(pretty_query, "inurl:%s",value); 
  }
  else if (strcmp(gooflag,"intitle") ==0 ) {
     sprintf(pretty_query, "intitle:%s",value); 
  }
  else if (strcmp(gooflag,"raw") ==0 ) sprintf(pretty_query,"%s",value); 
  else if (strcmp(gooflag,"filetype") ==0) {
	sprintf(pretty_query,"filetype:%s",value);
  }
  else return(-1);

  // pretty_query will not have any of the below ugliness
  sprintf(mid_query,"&q=%s",pretty_query);
  
  if (sflag) {
	sprintf(scratch,"%s+site:%s",mid_query,site); 
	strncpy(mid_query,scratch,1024);
	if (vflag)
	   printf("(verbose) site added. query is now: %s\n",mid_query);
  }
  
  if (xflag) {
	sprintf(scratch,"%s&%s",mid_query,xtra_stuff); 
	strncpy(mid_query,scratch,1024);
	if (vflag)
	   printf("(verbose) extra stuff added. query is now: %s\n",mid_query);
  }

  if (vflag) printf("(verbose) Sending query => %s\n",mid_query);


  if (inet_send(mid_query) == 1) { 
 	printf("Error sending query.\n");
	return(0);
   }
  else {  results=parse_results(recvbuf); }
  sprintf(scratch,"%s %s:%ld ",total_string,gooflag,results);
  strncpy(total_string,scratch,256);
  total+=results;
  return(results);

}