{ printf(“%d ,%d”, *x, *y); *x=3; *y=4; } main()
{ int x=1,y=2; fun(&x,&y); printf(“%d %d”,x, y); }
103、设int a[10],*p=a;则对a[3]的引用可以是p[3]或【*(p+3)】 。
104、double d1=1.2,d2=2.4;将表达式d1+2*d2强制转换为整型值的语句是 。[(int)(d1+2*d2);]
105、定义一个整型数组a[10],则下标最大的数组元素为[a[9]] 。
106、要使指针变量与变量之间建立联系,用运算符[*] 来建立指针变量与变量之间的联系。 107、下列程序的输出结果是 [0]。 void fun(int *n) { while( (*n)--); printf(“%d”,++(*n)); } main() { int a=100; fun(&a);
}
108、char c=’\\010’;则变量c中包含字符的个数为[1] 。 109、int m=5,y=2;则表达式y+=y- =m*=y的值为 。[-16] 110、以下程序 #include
fun(int x, int y, int *cp, int *dp) { *cp=x+y; *dp=x-y; } main( ) { int a,b,c,d; a=30; b=50; fun(a, b, &c, &d); printf(\return 0; }
输出结果是 。 【80,-20】
111、若有以下定义和语句:int a[4]={0,1,2,3}, *p; p=&a[1]; 则++(*p)的值是 【1】 112、运算符=的结合性是【自右至左】 。
37
113、若x为整型变量,执行语句x='b'-'A';后,x的值为[33] 。 114、int a=24; printf(\输出结果是 。 115、程序
void fun(char *c,int d) { *c=*c+1;d=d+1; printf(“%c,%c,”,*c,d); } main()
{ char a=?A?,b=?a?;
fun(&b,a); printf(“%c,%c\\n”,a,b); }
运行后的输出结果是 。 [b,A,B,b]
116、设main函数的说明为:main(int argc, char *argv[]), 且有命令行为:FILE1 1 2 3
的值是 。[4]
117、x是整型变量,表达式:(x=8,x%=x+5)的值是 。[8]
118、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf(\的输出结果分别是 。[2,1]
119、条件“2
int a[5]={0,2,4,6,8},*p1=&a[1],*p2=&a[4];则*p2-*p1的值为 。 【6】 121、x是整型变量,表达式:(x=8,x%=x+5)的值是 。【8】 122、下面程序的运行结果是 。【x=1,y=20】 #include
if(i%2!=0) {x=x+i;i++;} y=y+i++; } while (i<=7);
printf(\}
123、请定义一个指向字符类型数据的指针变量p, 。[char*p;]
10、已知:int a[5],*p=a;若“ printf(\”的输出结果是200,那么:“ printf(\”的输出结果是 。[202]
124、把 al 、 a2 定义为长整型变量的定义语句是 。[long a1,a2;] 125、若已有定义语句:int k=7;,赋值表达式:k+=k%=k-3的值是 。[6] 126、逻辑运算符!是[从右至左] 结合性。 _
127、以下程序的输出结果是 。 【efgh】 main()
{ char *p=\
38
long *q; q=(long*)p; q++; r=(char*)q; printf(\}
128、程序# include
的运行结果为 [26]
129、a是整型变量,则执行表达式a=25/3%3后a的值为。[2]
130、用来存放[字符数据]的数组称为字符数组。 131、【全局变量】可以被本文件中的其他函数所共用。
132、程序main() { int var, *p; var=100; p=&var;
var=*p+10; printf(\ }
的运行结果为。【110】
133、若有定义:int a[2][3]={2,4,6,8,10,12};则*(&a[0][0]+2*2+1)的值是【12】 134、访问变量的方式有直接访问和【间接访问】 。
135、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是【整形】 。136、已知:int a[2][3]={1,2,3,4,5,6},*p=&a[0][0];则*(p+1)的值为 。【4】 137、有如下程序 main()
{ char ch[2][5]={“6937”,”8254”},*p[2]; int i,j,s=0;
for(i=0;i<2;i++) p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]>?\\0?;j+=2) s=10*s+p[i][j]-?0?; printf(“%d\\n”,s); }
该程序的输出结果是 。【6385】
39
138、引用C语言标准库函数,一般要用【文件包含】 预处理命令将其头文件包含进来。 139、若m是一个三位数,则个位数字为 。【m】 140、下面程序段的运行结果是 。[a=-5] int i=1,a=0,s=1;
do{a=a+s*i; s=-s; i++;} while (i<=10); printf(\
141、若有以下定义和语句:int a[4]={1,2,3,4},*p; p=&a[2]; 则*- - p的值是 [2] 142、若有定义:double x[3][5];则x数组中列下标的上限为 。[4] 143、当被调用函数的定义出现在主调函数的[前面],可以不加以声明。 144、以下程序运行后的输出结果是 。【9876 876】 main() { char s[ ]=“9876”,*p;
for ( p=s ; p
{ int a[2][3]={{1,2,3},{4,5,6}}; int m,*ptr; ptr=&a[0][0];
m=(*ptr)*(*(ptr+2))*(*(ptr+4)); printf(\}
的运行结果是 。【15】
146、下面程序的运行结果是 。 #include
if(i%2!=0) {x=x+i;i++;} y=y+i++; } while (i<=7);
printf(\}
147、C程序的执行从【main】 函数开始,调用其他函数后流程返回该函数,并在该函数中结束整个程序的运行。
148、下列程序的运行结果是 。[3 6] void fun(int *a, int *b) { int *k; k=a; a=b; b=k; } main()
{ int a=3, b=6, *x=&a, *y=&b; fun(x,y);
printf(“%d %d”, a, b); }
40