for(i=0; i p=(struct node *)malloc( sizeof(struct node) ); p->info= a[i] ; if (q!=NULL) q->next=p; else { h=p; } q= p ; } p->next=NULL; /* 以下程序段为:判别h所指向的链表数据是否成递增序列 */ q=h; if (q==NULL || q->next==NULL) return 1; p=q->next; while ((p!=NULL) && (p->info > q->info)) { q=p; p= p->next ; } if (p==NULL) return 1; else return 0 ; } 《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 16 / 8 2. 下面的程序通过命令行参数方式比较两个文本文件是否完全相同,比较方式prog file1 file2。 #include char c1, c2; if (argc!= 3 ) { printf(\ file1 file2\\n\ exit(0); } if ((fp1=fopen(argv[1], \ == NULL fp2=fopen(argv[2],”r”)==NULL ) { printf(\ exit(0); } c1=fgetc(fp1); c2=fgetc(fp2); while ( c1!=EOF && c1==c2) { c1=fgetc(fp1); 《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 || 17 / 8 c2=fgetc(fp2); } if ( c1!=c2 ) printf(\else printf(\fclose(fp1); fclose(fp2); return 0; } 7. 若输入 -6+15*3/5=<回车> , 以下程序的输出结果是_______。 #include int m=0, sum=0; char c, oldc='+'; do { c=getchar(); 《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 18 / 8 if(c<='9'&&c>='0') m=10*m+c - '0'; else { if(oldc=='+') sum += m; else sum -= m; m=0; oldc=c; printf(\ } } while(c!='='); } 8. 运行下列程序的输出结果是__________。#include if( b<=1 ) return; if(n>b){ fun(n/b, b); 《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 19 / 8 printf(\ }else printf(\} main() { fun(13, 2); 1101 putchar(','); fun(33, 5); } , 2009年1月15日20 / 8 《程序设计基础及实验》课程期末考试试卷
C08试卷A(4)
2025-08-14
C08试卷A(4).doc
将本文的Word文档下载到电脑
下载失败或者文档不完整,请联系客服人员解决!