c语言题库1 下载本文

{ 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(代表回车),则argc

的值是 。[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、条件“22&&x<3||x<-10]。 120、设有如下定义:

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 main() { int i,x,y; i=x=y=0; do {++i;

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 void prtv(int *x) { printf(\ } main() { int a=25; prtv(&a); }

的运行结果为 [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 main() { int i,x,y; i=x=y=0; do {++i;

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