填空题以下程序段的功能是统计链表中结点的个数,其中first为指向第一个结点的指针(链表带头结点)。请在下划线内填入正确内容。
struct link
{ char data;
struct link*next;};
…
struct link*p,*first;
int c=0;
p=first;
while({{U}} 【19】 {{/U}})
{ c++;
p={{U}} 【20】 {{/U}};}
填空题有以下程序: #include<stdio.h> main() char ch1,ch2;int n1,n2; ch1=getchar();ch2=getchar(); n1=ch1-'0';n2=n1*10+(ch2-'0'); printf("%d/n",n2); 程序运行时输入:12<回车>,执行后输出结果是______。
填空题在printf格式字符中,以带符号的十进制形式输出整数的格式字符是 【1】 ;以八进制无符号形式输出整数的格式字符是 【2】 ;以十六进制无符号形式输出整数的格式字符是 【3】 ;以十进制无符号形式输出整数的格式字符是 【4】 。
填空题能正确表示代数式2ab/cd的C语言表达式是______。
填空题在数据库理论中,数据物理结构的改变,如存储设备的更换、物理存储的更换、存取方式等都不影响数据库的逻辑结构,从而不引起应用程序的变化,称为 【4】 。
填空题下列程序段的输出结果是{{U}} 【8】 {{/U}}。
int n='c';
switch(n++)
{ default:printf("error");break;
case 'a':case 'A':case 'b':case 'B':printf("good");break;
case 'c':case 'C':printf("pass");
case 'd':case 'D':printf("warn");
}
填空题给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序链接。函数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;
/**********found**********/
free(______);
/**********found**********/
q=p->______;
}
else
{p=q;
/**********found**********/
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);
}
填空题以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出:请填空。 4 3 7 2 6 9 1 5 8 10 #include<stdio.h> main( ) int x[4][4],n=0,i,j; for(j=0;j<4;j++) for(i=3;i>=j; (12) )n++;x[i][j]= (13) ; for(i=0;i<4;i++) for(j=0;j<=i;j++) printf("%3d",x[i][j]); printf("/n");
填空题层次模型的典型代表是IBM公司的 【6】 数据库管理系统。
填空题下列软件系统结构图的宽度为______。
填空题给定程序中,函数fun的功能是计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放在形参y所指数组中,在主函数中输出。
例如,有10个正数:46 30 32 40 6 17 45 15 48 26,平均值为30.500000。
主函数中输出:46 32 40 45 48。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序如下。
#include<stdlib.h>
#include<stdio.h>
#define N 10
double fun(double x[],double*y)
{ int i,j;double av;
/************found*********/
av=______;
/************found**********/
for(i=0;i<N;i++)av=av+______;
for(i=j=0;i<N;i++)
/***********found********/
if(x[i]>av)y[______]=x[i];
y[j]=-1;
return av;
}
main()
{ int i;double x[N]=
{46,30,32,40,6,17,45,15,48,26};
double y[N];
for(i=0;i<N;i++)printf("%4.0f",x[i]);
printf("/n");
printf("/nThe average is:%f/n",fun(x,y));
for(i=0;y[i]>=0;i++)printf("%5.0f",y[i]);
printf("/n");
}
填空题函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式如下: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 其构成规律是: ①第0列元素和主对角线元素均为1。 ②其余元素为其左上方和正上方元素之和。 ③数据的个数每行递增1。 请将程序补充完整。 #define N 6 void yanghui(int x[N][N]) int i,j; x[O][0]=1; for(i=1;i<N;i++) x[i][0]= 【13】 =1; for(j=1;j<i;j++) x[i][j]= 【14】 ; )
填空题以下程序运行后的输出结果是{{U}} {{U}} {{/U}} {{/U}}。
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()的功能是;从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。例如,当s中的数为4576235时,t中的数为4725。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#include<conio.h>
/************found*************/
int fun(long s,long *t)
{
long s1=l0;
*tis%10;
while(s>0)
{
/*************found*************/
s=s%100;
*t=s%10*s1+*t;
s1=s1*10;
}
}
main()
{
long s,t;
clrscr();
printf("/nPlease enter s:");
scanf("%ld",&s);
fun(s,&t);
printf("The result is:%ld/n",t);
}
填空题以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值。请填空。 void fun(int,int,int(*)[4],int*); main() int a[3][4]=12,41,36,28,19,33,15,27,3,27,19,1,b[3],i; fun(3,4,a,b); for(i=0;i<3;i++)printf("%4d",b[i]); printf("/n"); void fun(int m,int n,int ar[][4],int *br) int i,j,x; for(i=0;i<m;i++) x=ar[i][0]; for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j]; 【12】 =x;
填空题以下程序的输出结果是{{U}} {{U}} {{/U}} {{/U}}。
main()
{ int x=0;
sub(&x,8,1);
printf("%d/n",x);
}
sub(int *a,int n,int k)
{ if(k<=n)sub(a,n/2,2*k);
*a+=k;
}
填空题给定程序中函数fun的功能是:计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
long fun(long num)
{
/**********found**********/
long k;
do
{k*=num%10;
/**********found**********/
num/=10;
}while(num);
return(k);
}
main()
{long n;
printf("/nPlease enter a number:");
scanf("%ld",
printf("/n%ld/n",fun(n));
}
填空题以下程序输出的最后一个值是______。
int ff(int n)
{ static int f=1;
f=f*n;
return f
}
main()
{ int i;
for(i=1;i<=5;i++) printf("%d ",ff(i));
}
填空题对长度为10的线性表进行冒泡排序,对坏情况下需要比较的次数为______
填空题给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include<stdio.h>
void fun(char*s,int a,double f)
{
/**********found**********/
______fp;
char ch;
fp=fopen("file1.txt","w");
fprintf(fp,"%s %d %f/n",s,a,f);
felose(fp);
fp=fopen("file1.txt","r");
printf("/nThe result:/n/n");
ch=fgetc(fp);
/**********found**********/
while(!feof(______)){
/**********found**********/
putchar(______);ch=fgetc(fp);}
putchar("/n");
fclose(fp);
}
main()
{char a[10]="Hello!";int b=12345;
double c=98.76;
fun(a,b,c);
}
