全部知识点
在C语言中,当表达式值为0时表达逻辑值“假”,当表达式值为____时表达逻辑值“真”。
有以下程序
#include<stdio.h>
main()
{int i,n[]={0,0,0,0,0};
for (i=1;i<=4;i++)
{n[i]=n[i-1]*3+1; printf(”%d ",n[i]);}
}程序运营后的输出结果是____。
以下fun函数的功能是:找出具有N个元素的一维数组中的最小值,并作为函数值返回。请填空。(设N已定义)
int fun(int x[N]) {int i,k=0; for(i=0;i<N;____++) if(x[i] return x[k]; }
有以下程序
#include<stdio.h> int*f(int *p,int*q); main() {int m=1,n=2,*r=&m; r=f(r,&n);printf(”%d\n”,*r); } int*f(int *p,int*q) {return(*p>*q)?p:q;}
程序运营后的输出结果是____
以下fun函数的功能是在N行M列的整形二维数组中,选出一个最大值作为函数值返回,请填空。(设M,. N已定义)
int fun(int a[N][M)) {int i,j,row=0,col=0; for(i=0;i<N;I++) for(j=0;j if(a[i][j]>a[row][col]){row=i;col=j;} return(____): }
有以下程序
#include<stdio.h> main() {int n[2],i,j; for(i=0;i<2;i++)n[i]=0; for(i=0;i<2;i++) for(j=0;j<2;j++)n[j]=n[i]A+1; printf(”%d\n”,n[1]); }
程序运营后的输出结果是____
以下程序的功能是:借助指针变量找出数组元素中最大值所在的位置并输出该最大值。请在输出语句中填写代表最大值的输出项。
#include<stdio.h> main() {int a〔10],*p,*s; for(p=a;p-a<10;p++)scanf(”%d”,p); for(p=a,s=a;p-a<10;p++)if(*p>*s)S=P; printf("max=%d\n”,____); }
以下程序打开新文献f.txt,并调用字符输出函数将a数组中的字符写入其中,请填空。
#include<stdio.h> main() {____*fp; char a[5]={’1’,’2’,’3’,’4’,’5’},i; fp=fopen(”f .txt”,”w”); for(i=0;i<5;i++)fputc(a[i],fp); fclose(fp); }
给定程序中,函数fun的功能是用函数指针指向要调用的函数,并进行调用。规定在__2__处使fa指向函数f1,在__3__处使fb指向函数f2。当调用正确时,程序输出:
x1=5.000000,x2=3.000000,x1*x1+x1*x2=40.000000
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include <stdio.h>
double f1(double x)
{return x*x;}
double f2(double x, double y)
{return x*y;}
double fun(double a, double b)
{
/**********found**********/
__1__ (*f)();
double r1, r2;
/**********found**********/
f = __2__ ; /* point fountion f1 */
r1 = f(a);
/**********found**********/
f = __3__ ; /* point fountion f2 */
r2 = (*f)(a, b);
return r1 + r2;
}
main()
{double x1=5, x2=3, r;
r = fun(x1, x2);
printf("\nx1=%f, x2=%f, x1*x1+x1*x2=%f\n",x1, x2, r);
}给定程序MODI1.C是建立一个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。
请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
给定源程序:
#include <stdio.h>
#include <stdlib.h>
typedef struct aa
{int data; struct aa *next;}NODE;
int fun(NODE *h)
{int sum = 0 ;
NODE *p;
/***********found**********/
p=__1__;
while(p)
{if(p->data%2==0)
sum +=p->data;
/***********found**********/
p=__2__;
}
return sum;
}
NODE *creatlink(int n)
{NODE *h, *p, *s;
int i;
h=p=(NODE *)malloc(sizeof(NODE));
for(i=1; i<=n; i++)
{s=(NODE *)malloc(sizeof(NODE));
s->data=rand()%16;
s->next=p->next;
p->next=s;
p=p->next;
}
p->next=NULL;
return h;
}
outlink(NODE *h, FILE *pf)
{NODE *p;
p = h->next;
fprintf(pf ,"\n\nTHE LIST :\n\n HEAD ");
while(p)
{fprintf(pf ,"->%d ",p->data); p=p->next;}
fprintf (pf,"\n");
}
outresult(int s, FILE *pf)
{fprintf(pf,"\nThe sum of even numbers : %d\n",s);}
main()
{NODE *head; int even;
head=creatlink(12);
head->data=9000;
outlink(head , stdout);
even=fun(head);
printf("\nThe result :\n"); outresult(even, stdout);
}设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是________。
结构化程序是由________、________、________3中基本结构组成。
在C语言源程序中,一个变量代表________。
把一下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为________。
5x7+3x6-4x5+2x1+x3-6x2+x+10
表达式
8/4*(int)2.5/(int)(1.25*(3.7+2.3))
值的数据类型为________。
下面程序的运行结果________。
char*s1="AbcdEf",*s2=aB;
int t;
s1++;
t=(strcmp(s1,s2)>0);
printf("%d\n",t);下面程序段是找出整数的所有因子。请填空______.
scanf("%d",&x);
i=1;
for( ;______; )
{
if(x%i==0)
printf("%3d",i);
i++;
}假设有如下代码:
float k;
scanf("%d",k);缺不能使float类型变量k得到正确数值,应改为:____________。
已有定义int a;float b,x;char c1,c2;a=3,b=6.5,x=12.6,c1=a,c2='A',正确的scanf函数调用语句是______,数据输入的形式应为_____。
若有定义float[3][5],则a数组所含数组元素个数是_____,a数组所占的字节数_______。