若有语句 double x=17;int y; ,当执行 y=(int)(x/5)%2; 之后 y 的值为 【 7 】 。
若有语句 double x=17;int y; ,当执行 y=(int)(x/5)%2; 之后 y 的值为 【 7 】 。
若有语句 double x=17;int y; ,当执行 y=(int)(x/5)%2; 之后 y 的值为 【 7 】 。
程序段 :int x=12; double y=3.141593;printf("%d%8.6f",x,y); 的输出结果是
A)123.141593
B)12 3.141593
C)12,3.141593
D)123.1415930
若有定义语句 :int m[]={5,4,3,2,1},i=4; ,则下面对 m 数组元素的引用中错误的是
A)m[--i]
B)m[2*2]
C)m[m[0]]
D)m[m[i]]
A.只初始化了第一个元素,即a[0][0]可得到初值0
B.此初始化语句不正确
C.数组a中各元素都可得到初值,但其值不一定为0
D.数组a中每个元素均可得到初值0
(27 )若有定义 int (*Pt ) [3] ; ,则下列说法正确的是
A )定义了基类型为 int 的三个指针变量
B )定义了基类型为 int 的具有三个元素的指针数组 pt
C )定义了一个名为 *pt 、具有三个元素的整型数组
D )定义了一个名为 pt 的指针变量,它可以指向每行有三个整数元素的二维数组
(7 )在执行语句序列int i=0; do i++; while(i*i<10);时, do 后面的循环体语句 i++ 被执行的次数为 【 7 】 。
设有定义: int a; float b; 执行 scanf("%2d%f",&a,&b); 语句时,若从键盘输入876 543.0< 回车 > , a 和 b 的值分别是
A)876 和 543.000000
B)87 和 6.000000
C)87 和 543.000000
D)76 和 543.000000
A.a[p-a]
B.* (&a[i] )
C.p[i]
D.* (* (a+i) )
设i和k都是int类型,则for循环语句()。
for(i=0,k=-1;k=1;i++,k++) printf("****\n");
A 循环结束的条件不合法
B 循环体一次也不执行
C 循环体只执行一次
D 是无限循环
(10)以下程序运行后的输出结果是 【10】 。
#include <stdio.h>
main()
{ int x=10,y=20,t=0;
if(x==y)t=x;x=y;y=t;
printf("%d %d\n",x,y);
}
执行下列程序段后,x和i的值分别是和int x,i;for (i=1,x=1;i<=50;i++){ if(x>=10) break; if(x%2==1) { x+=5; continue; } x-=3;}
以下程序中函数 f 的功能是在数组 x 的 n 个数 (假定 n 个数互不相同 ) 中找出最大最小数 , 将其中最小
的数与第一个数对换 , 把最大的数与最后一个数对换 . 请填空 .
#include <stdio.h>
viod f(int x[],int n)
{ int p0,p1,i,j,t,m;
i=j=x[0]; p0=p1=0;
for(m=0;m<n;m++)
{ if(x[m]>i) {i=x[m]; p0=m;}
else if(x[m]<j) {j=x[m]; p1=m;}
}
t=x[p0]; x[p0]=x[n-1]; x[n-1]=t;
t=x[p1]; x[p1]= _[14]_______ ; _[15]_______ =t;
}
main()
{ int a[10],u;
for(u=0;u<10;u++) scanf("%d",&a[u]);
f(a,10);
for(u=0;u<10;u++) printf("%d",a[u]);
printf("\n");
}