填空题以下程序的输出结果是______。 #include<stdio.h> int fun(int x,int y) static int m=0,i=2; i=i+1: m+=i+x+y; return m main() int j=4,m=1,k; k=fun(j,m);printf("%d,",k); k=fun(j,m);printf("%d/n",k)
填空题以下程序运行后的输出结果是【 】。
void fun(int x,int y)
{ x=x+y;y=x-y;x=x-y;
printf("%d,%d,",x,y);}
main( )
{ int x=2,y=3;
fun(x,y);
printf("%d,%d/n",x,y);
}
填空题下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun()的功能是:
删除链表中数据域值相同的结点,使之只保留一个。 请在标号处填入正确的内容,使程序得出正确的结果。
注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构。
试题程序 #include
<stdio.h> #include <stdlib.h> #define N
8 typedef struct list { int data;
struct list *next; } SLIST; void
fun(SLIST *h) { SLIST *p, *q;
p=h->next; if(p!=NULL) { q=p->next;
while(q!=NULL) { if(p->data==q->data) {
p->next=q->next; free(______);
q=p->______; } else {
p=q; q=q->______; }
} } } SLIST *creatlist(int
*a) { SLIST *h, *p, *q; int i;
h=p=(SLIST *) malloc (sizeof(SLIST)); for(i=0; i<N;
i++) { q=(SLIST *) malloc (sizeof(SLIST));
q->data=a[i]; p->next=q; p=q; }
p->next=0; return h; } void
outlist(SLIST *h) { SLIST *p;
p=h->next; if(p==NULL) printf("/nThe list is
NULL! /n"); else { printf("/nHead");
do { printf("->% d", p->data); p=p->next;
} while(p!=NULL); printf("->End/n");
} } main() { SLIST
*head; int a[N]={1,2,2,3,4,4,4,5};
head=creatlist(a); printf("/nThe list before
deleting:/n"); outlist(head);
fun(head); printf("/nThe list after deleting:/n");
outlist(head); }
填空题以下程序的运行结果是______。 #include <stdio.h> main() FILE *fp; int a[10]=1,2,3,0,0,i; fp=fopen("d2.dat","wb"); fwrite(a,sizeof(int),5,fp); fwrite(a,sizeof(int),5,fp); fclose(fp); fp=fopen("d2.dat","rb"); fread(a,sizeof(int),10,fp); fclose(fp); for(i=0;i<10;i++)printf("%d",a[i]);
填空题以下程序的功能是调用函数fun计算:m=1-2+3-4+…+9-10,并输出结果,请填空。 int fun(int n) int m=0,f=1, i; for(i=1; i<=n; i++) m+=i*f; f= (8) ; return m; main() printf("m=%d/n", (9) );
填空题一个模块直接访问另一个模块的内容,称为______藕合。
填空题#define命令出现在程序中函数的外面,宏名的有效范围为______。
填空题一个队列的初始状态为空。现将元素A,B,C,D.E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为______。
填空题已有定义:int x;,执行以下语句后的辅出结果是 【7】 。 x=11/3; y=5; printf("%%d,%%%d/n",x,y);
填空题块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。其中______的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
填空题请补充函数proc(),该函数的功能是建立一个带头结点的单向链表并输出到文件“out.dat”和屏幕上,各结点的值为对应的下标,链表的结点数及输出的文件名作为参数传入。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef struct ss
{
int data;
struct ss * next;
}NODE;
void proc(int n,char*filename)
{
NODE*h,*p,*s;
FILE*pf;
int i;
h=p=(NODE*)malloc(sizeof(NODE));
h->data=0;
for(i=1;i<n;i++)
{
s=(NODE*)malloc(sizeof(NODE));
s->data=______;
______;
p=______;
}
p->next=NULL;
if((pf=fopen(filename,"w"))==NULL)
{
printf("Can not open out98.dat!");
exit(0);
}
p=h;
fprintf(pf,"/n***THE LIST***/n");
printf("/n***THE LIST***/n");
while(p)
{
fprintf(pf,"%3d",p->data);
printf("%3d",p->data);
if(p->next!=NULL)
{
fprintf(pf,"->");
printf("->");
}
p=p->next;
}
fprintf(pf,"/n");
printf("/n");
fclose(pf);
p=h;
while(p)
{
s=p;
p=p->next;
free(s);
}
}
void main()
{
char*filename="out.dat";
int n;
system("CLS");
printf("/nInput n:");
scanf("%d",
proc(n,filename);}
填空题以下程序运行后的输出结果是{{U}}{{U}} {{/U}}{{/U}}。
main( )
{ int x=15;
while(x>10 &&x<50)
{ x++;
if(x/3){ x++;break;}
else continue;
}
printf("%d/n",x);
}
填空题在给定程序中,函数fun的功能是:统计所有小于等于n(n>2)的素数的个数,素数的个数作为函数值返回。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。 文件BLANK1.C内容如下: #include<stdio.h> int fun(int n) int i,j,cnt=0; printf("/nThe prime number between 3 to%d/n",n); for(i=3;i<=n;i++) /**********found**********/ for( (1) ;j<i;j++) /**********found**********/ if( (2) %j==0)break; /**********found**********/ if( (3) >=i) cnt++;printf(cnt%157"%5d":"/n%5d",i); return ent; void main( ) int n=20,r; r=fun(n); printf("/nThe number of prime is:%d/n",r);
填空题假设在当前盘的当前目录下有两个文件A.TXT和B.TXT,现要将文件B.TXT合并连接到文件A.TXT的后面。若使用TYPE命令,则完整的命令为{{U}} 【2】 {{/U}} 。
填空题下面程序把从终端读入的文本(用#作为文本结束标志)复制到一个名为file.txt的新文件中。补足所缺语句。
main()
{ char ch;
FILE*fp;
if((fp=fopen(______))=NULL)exit(0);
while((ch=getchar())!='#')
fputc(ch,fp);
______;
}
填空题以下程序的输出结果是{{U}} {{/U}}。 #include <stdio.h> main() int a=2,b=3,c=4; a* =16+(b++) -(++c); Printf("%d",a);
填空题数据字典是各类数据描述的集合,它通常包括五个部分,即数据项、数据结构、数据流、 【3】 和处理过程。
填空题给定程序中函数fun的功能是:逐个比较p、q所指两个字符串对应位置中的字符,把ASCII值大或相等的字符依次存放到c所指数组中,形成一个新的字符串。
例如,若主函数中a字符串为:aBCDeFgH,主函数中b字符串为:ABcd,则c中的字符串应为:aBcdeFgH。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
给定源程序:
#include<stdio.h>
#include<string.h>
void fun(char*p,char*q,char*c)
{
/************found************/
int k=1;
/************found************/
while(*p!=*q)
{if(*p<*q)c[k]=*q;
else c[k]=*p;
if(*p)p++;
if(*q)q++;
k++;
}
}
main()
{char a[10]="aBCDeFgH",h[10]="ABcd",c[80]={"/0"};
fun(a,b,c);
printf("The string a:");puts(a);
printf("The string b:");puts(b);
printf("The result : ");puts(c);
}
填空题若给fun函数的形参s传送字符串“∪∪6354'abc"(其中∪表示空格字符),则函数的返回值是{{U}} {{/U}}。 long fun(char s[]) long n; int sign; for(;isspace(*s);s++); sign=(*s=='-')? -1:1; if(*s=='+'||*s=='-') s++; for(n=0;isdigit(*s);s++) n=10*n+( *s-'0'); return sign*n;
填空题当所有结点的权值都相等时,用这些结点构造的二叉排序树是 【3】 。