(27)若要求从键盘读入含有空格字符的字符串,应使用函数
A)getc() B)gets() C)getchar() D)scanf()
(28)阅读下列程序段,则程序的输出结果为
#include "stdio.h"
#define M(X,Y)(X)*(Y)
#define N(X,Y)(X)/(Y)
main()
{ int a=5,b=6,c=8,k;
k=N(M(a,b),c);
printf("%d\n",k);
A)3 B)5 C)6 D)8
(29)在16位IBM-PC机上使用C语言,若有如下定义
struct data
{ int i;
char ch;
double f;
} b;
则结构变量b占用内存的字节数是
A)1 B)2 C)7 D)11
(30)有以下程序 #include
main()
{FILE *fp; int i,a[6]={l,2,3,4,5,6};
fp=fopen("d3.dat","w+b");
fwrite(a,sizeof(int),6,fp);
fseek(fp,sizeof(int)*3,SEEK_SET);/*该语句使读文件的位置指针从文件头向后移动3个int型数据*/
fread(a,sizeof(int),3,fp); fclose(fp);
for(i=0;i<6;i++)printf("%d,",a[i]);
}
程序运行后的输出结果是
A)4,5,6,4,5,6, B)1,2,3,4,5,6, C)4,5,6,1,2,3, D)6,5,4,3,2,1,
(31)有以下程序
#include
main()
{ int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;
for(i=0;i<12;i++) c[s[i]]++;
for(i=1;i<5;i++) printf("%d",c[i]);
printf("\n");
}
程序的运行结果是
A)1 2 3 4 B)2 3 4 4 C)4 3 3 2 D)1 1 2 3
(32)有以下程序
#include
void fun(int *a,int n)/*fun函数的功能是将a所指数组元素从大到小排序*/
{ int t,i,j;
for(i=0;i
for(j=i+1;j
}
main()
{ int c[10]={1,2,3,4,5,6,7,8,9,0},i;
fun(c+4,6);
for(i=0;i<10;i++) printf("%d,",c[i]);
printf("\n");
}
程序的运行结果是
A)1,2,3,4,5,6,7,8,9,0, B)0,9,8,7,6,5,1,2,3,4, C)0,9,8,7,6,5,4,3,2,1, D)1,2,3,4,9,8,7,6,5,0,
(33)下面程序的输出结果是
#include
#include
main()
{ char *p1="abc",*p2="ABC",str[50]= "xyz";
strcpy(str+2,strcat(p1,p2));
printf("%s\n",str);}
A)xyzabcABC B)zabcABC C)xyabcABC D)yzabcABC
(34)以下函数返回a所指数组中最小的值所在的下标值
fun(int *a, int n)
{ int i,j=0,p;
p=j;
for(i=j;i
return(p);}
在横线处应填入的是
A)i=p B)a[p]=a[i] C)p=j D)p=i
(35)下列程序的运行结果为
#include
void abc(char*str)
{ int a,b;
for(a=b=0;str[a]!='\0';a++)
if(str[a]!='c')
str[b++]=str[a];
str[b]='\0';}
void main()
{ char str[]="abcdef";
abc(str);
printf("str[]=%s",str); }
A)str[]=abdef B)str[]=abcdef C)str[]=a D)str[]=ab
(36)有以下程序
#include
#include
typedef struct{ char name[9]; char sex; float score[2]; }STU;
void f(STU a)
{ STU b={"Zhao",′m′,850,900}; int i;
strcpy(a.name,b.name);
a.sex=b.sex;
for(i=0;i<2;i++) a.score[i]=b.score[i];
}
main()
{ STU c={"Qian",′f′,95.0,92.0};
f(c);
printf("%s,%c,%2.0f,%2.0f\n",c.name,c.sex,c.score[0],c.score[1]);
}
程序的运行结果是
A)Qian,f,95,92 B)Qian,m,85,90 C)Zhao,f,95,92 D)Zhao,m,85,90
(37)有以下程序
#include
main()
{ FILE *fp; int a[10]={1,2,3},i,n;
fp=fopen("d1.dat","w");
for(i=0;i<3;i++) fprintf(fp,"%d",a[i]);
fprintf(fp,"\n");
fclose(fp);
fp=fopen("d1.dat","r");
fscanf(fp,"%d",&n);
fclose(fp);
printf("%d\n",n);
}
程序的运行结果是
A)12300 B)123 C)1 D)321
(38)已知 int a=1,b=3则a^b的值为
A)3 B)1 C)2 D)4
(39)阅读下列程序,则运行结果为
#include "stdio.h"
fun()
{ static int x=5;
x++;
return x;}
main()
{ int i,x;
for(i=0;i<3;i++)
x=fun();
printf("%d\n",x);}
A)5 B)6 C)7 D)8
(40)有以下程序
#include
void fun(char *t,char *s)
{ while(*t!=0) t++;
while((*t++=*s++)!=0);
}
main()
{ char ss[10]="acc",aa[10]="bbxxyy";
fun(ss,aa); printf("%s,%s\n",ss,aa);
}
程序的运行结果是
A)accxyy,bbxxyy B)acc,bbxxyy C)accxxyy,bbxxyy D)accbbxxyy,bbxxyy