对下面程序描述正确的是( )。 #include <stdio.h> #include <stdlib.h> void main() {FILE *in,*out; if((in=fopen("file1.txt","a+"))==NULL) {printf("cannot open file1\n"); exit(0); } if((out=fopen("file2.txt","a+"))==NULL) {printf("cannot open file2\n"); exit(0); } while(!feof(out)) fputc(fgetc(out),in); fclose(in); fclose(out); }
对于以下程序,说法正确的是( )。 #include <stdio.h> main() { FILE *fp; fp=fopen("quiz.txt", "w"); if(fp!=NULL) { fprintf(fp,"%s\n", "success!"); fclose(fp); printf("ok!"); } }
对下面程序描述错误的是( )。 #include <stdio.h> main() { int c; FILE *fp; if((fp=fopen("file.dat","rb+"))!=NULL) { c=fgetc(fp); c=c+1;} fseek(fp,0,SEEK_SET); fputc(i,fp); fclose(fp); }
以下程序的输出结果是( )。 #include <stdio.h> #include <stdlib.h> typedef struct node {int data; struct node *next; }Node; Node list[4]={{4,&list[1]},{3,&list[2]},{2,&list[3]},{1,0}}; void output(Node *head) { Node *p=head; while(p!=NULL) { printf("%d ",p->data); p=p->next; } } void main() {output(list); }
阅读下面算法。说明该算法的功能。Typedef char DataType;typedef struct node{DataType data;struct node *next;}ListNode;typedef ListNode *Linklist;Linklist what(Linklist h){/*h是无头结点的单链表的头指针*/{if(h&&h->next){q=h;h=h->next;p=h;while(p->next)p=p->next;p->next=q;q->next=NULL;h=q;}return(h);}
若按如下定义,函数link的功能是( )。其中head指向链表首结点,整个链表结构如下图: ┌──┬─┐ ┌──┬─┐ ┌──┬──┐ head →│data│ ┼→│data│ ┼→…→│data│NULL│ └──┴─┘ └──┴─┘ └──┴──┘ struct node {int data; struct node *next; }; void link(struct node* head) {struct node *p=head; while(p!=NULL) { if(p->data%2==1) printf("%d ",p->data); p=p->next; } }
对下面程序描述正确的是( )。 #include <stdio.h> #include <stdlib.h> void main() {FILE *in,*out; if((in=fopen("file1.txt","a+"))==NULL) {printf("cannot open file1\n"); exit(0); } if((out=fopen("file2.txt","a+"))==NULL) {printf("cannot open file2\n"); exit(0); } while(!feof(out)) fputc(fgetc(out),in); fclose(in); fclose(out); }
文本文件quiz.txt的内容为"Programming" (不包含引号),以下程序段的运行结果是( )。 FILE *fp; char *str; if((fp=fopen("quiz.txt","r"))!=NULL) str=fgets(str,7,fp); printf("%s",str);
对下面程序描述错误的是( )。 #include <stdio.h> main() { int c; FILE *fp; if((fp=fopen("file.dat","rb+"))!=NULL) { c=fgetc(fp); c=c+1;} fseek(fp,0,SEEK_SET); fputc(i,fp); fclose(fp); }