int b; }x,y;
执行语句 x.a=5;x.b=x.b+3;y.a=x.a*5;后,则y.b的值为 40 。
38.设文件指针fp已定义,执行语句fp=fopen(\后,对文本文件file操作是 只写 。
39.在C语言中调用 fopen() 就可把程序中要读、写的文件与磁盘上实际的数据文件联系起来。
40.当程序中对fp指针指向的文件的所有写操作完成之后,必须调用 fcolse() 函数关闭文件。
41.若程序中使用了函数sqrt(),则必须包含的头文件名为_____math.h______。 42.C语言源程序中主函数名由系统规定为 main ,程序员是不能改变的。 43.若定义 int b[5],*p=b; 则p++表示 &b[0] 。
44.按照作用范围可以把变量分为全局变量和 局部变量 。
45.按照存储类别可以把变量分为自动存储类别的变量和 静态,外部,寄存器四种存储类别。
46.程序的三种控制结构是: 顺序结构 、 选择结构 和 循环结构 。 47.若用数组名作为函数调用的实参,则传递给形参的是数组的 首地址 。 48.一个函数直接或间接调用自身称为 递归调用 。 49.在C语言中,用零来表示逻辑“假”,用 非零 来表示逻辑“真”。 50.循环的嵌套是指 一个循环语句中又包含另一个完整循环语句 。 51.C语言规定,程序中用到的变量必须“ 先说明,后使用 ”。 52. C语言规定,函数返回值的类型是由 定义函数声明类型 决定的。 53.若定义 int b[7],*p=b; 则p+3表示 数组b中第四个函数的地址 。 54.指针变量是 存放其他变量地址的变量 。
55.调用函数时,在函数名后面列出的参数称为 实参 。
56.定义函数时,在函数名后面的圆括号中出现的参数称为 形参 。 57.C源程序中,凡是行首以#标识的控制行都是 编译预处理指令 。
三、读程序写结果 //后有详解
1.以下程序运行后,如果输入的是1 2 3 4 5 0<回车>,输出结果为: 24689 #include
scanf(“%d”,&s);
while(s>0) {switch(s)
{default :printf(“%d”,s+4);break;
case 1:printf(“%d”,s+1); break; case 2:printf(“%d”,s+2);break; case 3:printf(“%d”,s+3); }
scanf(“%d”,&s); } }
2. 写出下列程序结果: n=9
#include
char s[]=\int i,n=0;
for(i=0;s[i]!=’\\0’;i++) if(s[i]>='0'&&s[i]<='9') n++; printf(\}
3.有以下程序程序的执行结果是: CdEfGh
#include
{ char b,c; int i;
b='C';c='c'; for(i=0;i<6;i++) {if(!(i%2)) putchar(i+b); else
putchar(i+c);} printf(\
}
4.以下程序执行后输出结果是: k=11,s=16
#include
for(k=2, s=1; k<20; k+=3)
if (s>k) break ; else s+=k;
printf(\}
5.运行下面的程序段,输出结果是 d56def 。 int i=0;
char s1[10]=\; strcat(s1,s2); while (s1[i++]!='\\0') s2[i]=s1[i]; puts(s2);
6.运行下面的程序段,输出结果是 2, 3, 1 。 #include
{int x, y, z; x=y=1;
z=x++,y++,++y;
printf(\,%d,%d\\n\,x,y,z); }
7.运行下面的程序段,输出结果是 1,0,0,1 。 #include
{ int a=0,b=0,c=0,d=0; (a++ && b++) ? c++ : d++; printf(\}
8.运行下面的程序段,输出结果是 0,-1 。 #include
{ int a=-1, b=-1; while(++a) ++b;
printf(\}
9.运行下面的程序段,输出结果是 -1 。 #include
printf(\ }
程序执行后的输出结果是( A ) A. y=-1 B. y=0
C. y=1
D. while构成无限循环
10.运行下面的程序段,输出结果是 7.5 。 #include
printf(\ return 0; }
11.运行下面的程序段,输出结果是 6,6,1 。 #include
{ int a=6, b=0, c=0; for ( ;a&&(b==0); )