修改后的选择题.docx
- 文档编号:6635702
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:18
- 大小:38.19KB
修改后的选择题.docx
《修改后的选择题.docx》由会员分享,可在线阅读,更多相关《修改后的选择题.docx(18页珍藏版)》请在冰豆网上搜索。
修改后的选择题
9、以下程序段运行后的sum的值为()。
Inti,j,sum=0
For(i=1;i<3;i++)
For(j=I;j<=3;j++)
Sum=sum+i+j;
A、20B、12C、24D、18
12、若已定义:
chars[20]=”Good\ohelloworld”;则函数strlen(s+5)的值是()。
A、10B、8C、6D、5
13、以下程序的运行结果是()。
#include
Intlarger(intx,inty)
{returnx>y?
x:
y;
}
Intlargest(intx,inty,intz)
{returnlarger(larger(x,y),z);
}
Voidmain()
{inta=3,b=-4,c=5;
Printf(“larger=%d,largest=%\n”,larger(a,b),laregest(larger(b,c),2*4,12));
}
A、larger=3,largest=12B、larger=3,largest=5
C、larger=5,largest=12D、larger=5,largest=8
14、以下预编译处理指令中,错误的是()。
A、#defineMAX(x,y)(x>y?
x:
y)B、#include”stdio.h”
C、#include
15、若已定义:
inta[5],*p=a;无法引用数组元素a[4]的是()。
A、*(&p[0]+4)B、p[4]C、*p+4D、*(p+4)
16、以下程序的运行结果是()。
#include
Voidmin()
{inta[5]={16,8,3,5,12},*p=a,*q=&a[4];
Printf(“%d\n”,q-p);
}
A、1B、3C、2D、4
17、若有如下定义和语句,以下叙述错误的是()。
Uniondata
{charch;
IntI;
}x,*px=&x;
x.i=66;
printf(“%c\n”,px->ch);
A、px和&x.ch值相同B、px和&x值相同C、&x.ch和&x.i值相同D、输出字符A
18、若已定义:
inta[10],*pi,(*ps)[10];以下赋值语句中,错误的是()。
A、pi=a;ps=pi;B、pi=a;ps&a;*(*ps)=10;C、ps=&a;D、pi=a+5;
19、若有以下结构类型定义:
Typedefstructstudent
{intnum;
Floatscore;
}STU,*pstu;
以下变量声明中,错误的是()。
A、structstudent*ps;B、pstups;C、stu*ps;D、student*ps;
28、以下程序段的运行结果是()。
Inta[]={1,2,3,4,5,6,7,8},I,sum=0;
For(i=0;i<8;i++)
If((i+1)%2)
Sum+=a[i];
Printf(“%d\n”,sum);
A、16B、18C、20D、36
29、若已定义inta[][4]={1,-2,3,-4,5,-6,7,-8};,则表达式sizeof(a)/(sizeof(int[4]))的值为()。
A、数组a[1]中的元素个数B、数组a[0]的第一维长度
C、数组a的第一维长度D、数组a的元素个数
99. 若有定义int a[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof(a)/sizeof(a[0])
的值为(9 )。
100. 设有以下变量定义:
char str1[]="string",str2[8],*str3,*str4="string";
( A )是正确的。
A. strcpy(str1,"China");
B. str2="China";
C. strcpy(*str3,"China");
D. strcpy(str4[0],"China");
103. 若有定义:
char a[]="abcdef";char b[]="xyz";则以下程序段运行后屏幕输出为( z)。
strcpy(a,b);
printf("%c",a[2]);
104. 以下程序段运行后屏幕输出为( 3)。
char a[]="abc\0mis";
printf("%d",strlen(a));
5. 若有定义:
int a=2;则语句a=strcmp("miss","miss");运行后a的值为(0 )
7. 下列关于C语言函数的描述中,正确的是( )。
A. 函数的定义可以嵌套,但函数的调用不可以嵌套
B. 函数的定义不可以嵌套,但函数的调用可以嵌套
C. 函数的定义和函数的调用都可以嵌套
D. 函数的定义和函数的调用都不可以嵌套
30、以下程序的运行结果是()。
#include
Voidmain()
{char*str=”abc123”,*p=str;
While(*p)
{putchar(*p+1);
P++;
}
}
A、cba234B、123abcC、bcd234D、abc123
31、以下叙述错误的是()。
A、宏定义不占用程序运行时间,但与程序中的语句一样需要编译
B、一个c语言源程序可以有多条预处理命令
C、宏定义中的宏名一般用大写字母表示,宏名无类型
D、宏定义必须放置在它所在的源程序文件的最前面
E.宏展开不占用运行时间,只占用编译时间
127. 设有以下语句,则( )是对a数组元素的不正确引用,其中0≤i<10。
int a[10]={0,1,2,3,4,5,6,7,8,9}, *p=a;
A. a[p-a]
B. *(&a[i])
C. p[i]
D. *(*(a+i))
35. 下面语句正确的是( )。
A. int *p; *p=20;
B. char *s="abcdef"; printf("%s\n",s);
C. char str[]="abcd"; str++;//数组名不能改变
D. char str[]={'a','b','c'};printf("%s",str);//%s输出字符串,必须以’\0’结束
136. 若有以下程序段,且0≤i<4,0≤j<3,则不能正确访问a数组元素的是( )。
int i,j,(*p)[3];
int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};
p = a;
A. *(*(a+i)+j)
B. p[i][j]
C. (*(p+i))[j]
D. p[i]+j
9. 下列对结构体类型变量定义不正确的是( )。
A. struct teacher
{int num;
int age;
}teach1;
B. struct
{int num;
int age;
}teach1,teach2;
C. struct
{int num;
int age;
}teacher;
struct teacher teach1;
D. struct teacher
{int num;
int age;
};
struct teacher teach1;
50. 若有定义:
struct teacher
{int num;
char sex;
int age;
}teacher1;
则下列叙述不正确的是( )。
A. struct是结构体类型的关键字
B. struct teacher是用户定义的结构体类型
C. num,sex,age都是结构体变量teacher1的成员
D. teacher1是结构体类型名
3. 以下C语言共用体类型数据的描述中,不正确的是( )。
A. 共用体变量占的内存大小等于所需内存最大的成员所占的内存
B. 共用体类型可以出现在结构体类型定义中
C. 在定义共用体变量的同时允许对第一个成员的值进行初始化
D. 同一共用体中各成员的首地址不相同
63. 对枚举类型进行定义,不正确的是( )。
A. enum b{1, 2, 3};//用户定义的标识符不能以数字开头
B. enum a{A, B, C};
C. enum c{D=3, E, F};
D. enum d{X=0, Y=5, Z=9};
7. 若函数fun的函数头为int fun(int i, int j)
且函数指针变量p定义如下:
int(*p)(int i, int j);
则要使指针p指向函数fun的赋值语句是( )。
A. p=*fun;
B. p=fun;
C. p=fun(i,j);
D. p=&fun;32、以下程序的输出结果是()。
#include
Voidmain()
{inta[]={11,12,13,-4,-5,-6},*p=a+sizeof(a)/sizeof(int)-1;
While(p>=a)
{(*p)++;
p--;
}
Printf(“%d\n”,*(p+1));
}
A、-4B、-5C、12D、11
33、若已定义:
Structstudent
{intnum;
Floatscore;
}s,*ps=&s;
以下不正确的语句是()。
A、(*ps).score=90B、ps->score=90C、(*ps)->score=90;D、s.score=90;
34、若已定义:
inta[3]={-3,10,-9},*p=a+2;则对数组元素a[1]错误引用的是()。
A、*(p-1)B、*(--p)C、p[-1]D、*p--
35、以下程序段运行后,a,b,c的值分别是()。
Inta=3,b=5,c;
C=a&b;
A、5,1,3B、5,3,1C、3,5,3D、3,5,1
37、C源程序需经过()生成可执行文件。
A、编译和连接B、录入和编辑C、编辑和解释D、调试和连接
38、()为合法的用户标识符。
A、_3treeB、structC、h2.7D、8du
39、()可产生(0,0.9)之间的随机数。
A、rand()%10/10B、rand()%10/10.0C、srand()*10%10D、srand()%10/10.0
43、以下程序段运行后k的值为()。
IntI,k=3;
For(i=1;i<=5;i++)
{k+=1;
If(k%2==0)
Continue;
K+=2;
}
A、12B、9C、11D、10
44、给数组a所有元素赋初值0的语句是()。
A、inta[]=0*6;B、inta[6]={0};C、inta[6]=6*0;D、inta[6]=0;
45、以下程序段的运行结果是()。
Inta[3][3]={1,2,3,4,5,6,7,8,9},I;
For(i=0;i<3;i++)
Printf(“%2d”,a[i][2-i]);
A、753B、357C、159D、951
46、以下叙述错误的是()。
A、全局变量的作用域是从其定义处起至本程序结束处
B、函数体内定义的变量,其生命期是函数执行期
C、在一个程序源文件中定义的全局变量,在程序的其它源文件中必不可见
D、函数体内复合语句中定义的变量只在该复合语句内有效
47、若已定义:
inta[]={1,2,3},*p=a;则执行*p++=5;(*p)++;后a[0],a[1],a[2]的值依次是()。
A、1,3,4B、1,2,3C、5,2,3D、5,3,3
48、若已定义:
enumWEEKDY{mon=1,tue,wed,thur,fri,sat=8,sun}today;,则枚举常量tue和sun的值分别是()。
A、1和5B、2和10C、2和9D、0和7
49、若已定义:
intd;FILE*fp;,要从fp所指向的已经打开的文件中读取一个整形数据到变量d中,正确的语句是()。
A、fscanf(fp,&d);B、fscanf(fp,”%d”,d);C、fscanf(fp,”%d”,&d);
D、scanf(fp,”%d”,d);
55、以下叙述中错误的是()。
A、定义数组时,若不加类型标识符则默认为整型
B、可逐个引用数组元素但不能一次引用整个数组
C、数组中每一个元素都属于同一个数据类型
D、数组名代表数组的首地址
56、以下叙述错误的是()
A、预处理命令行都必须以#号开始
B、若有intt;不能使用宏定义#defineSWAP(x,y)t=x;x=y;y=t
C、#defineINPUTscanf的作用是用标识符INPUT代表scanf
D、C语言源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率
57、以下程序的运行结果是()。
#include
Voidmain()
{inta,b,*pa=&a,*pb=&b;
*pa=3;*pb=4;a=5;b=6;
Pb=pa;
Printf(“%d\n”,*pa+*pb);
}
A、10B、11C、12D、7
58、以下程序的输出结果是()。
#include
Structstudent
{intnum,grade;
}s[]={{111,80},{112,90},{113,70}};
Voidmain()
{structstudent*ps=s+2;
While(ps>=s)
{ps->grade+=5;
Ps--;
}printf(“%d\n”,(ps+1)->grde);
}
A、95B、90C、70D、85
59、使用FILE*fp=fopen(“c:
\\score.txt”,”a”),打开一个已经存在的文本文件score.txt后,文件指针移到()。
A、可能文件首,也可能文件尾B、不确定C、文件尾D、文件首
62、若定义:
longintI;charc;floatf;则表达式i+c+(int)f结果的类型是()。
A、doubleB、longintC、intD、char
63、以下程序段运行结果是()。
Inti;
For(i=1;i<=6;i++)
{if(i%2)
{printf(“*”);
Continue;
}
Printf(“#”)
}
A、#*#*#*B、******C、*#*#*#D、######
64、给数组a所有元素赋初值0的语句是()。
A、inta[6]=a{0};B、inta[6]=6*0;C、inta[]=0*6;D、inta[6]=0;
66、正确的宏定义命令是()。
A、#definesum(x,y)(x+y)B、#defineN*N100
C、#defineK3.14;D、#defineK=100
67、若已定义:
inta=12,*pa=&a;以下描述错误的是();
A、*pa等价于aB、&(*pa)等价于paC、&pa等价于*(&a)D、*(&pa)等价于a
68、若已定义:
Structstudent
{intnum,score;
}stu[]={{111,80},{112,76},{113,60},{114,90}};
以下错误的语句是()。
A、(*stu)->num=110;B、stu[0].score=stu[1].score;
C、(stu+3)->score++;D、*stu=*(stu=1);
69、以下叙述中正确的是()。
A、结构化程序只能解决一些简单的数学问题
B、结构化程序由顺序、选择、嵌套三种基本控制结构组成
C、C语言是一种结构化程序设计语言
D、为提高程序效率,应尽量使用Goto语句
71、若定义charb[20]=”Howdoyoudo!
”;实现输出字符串”doyoudo!
”的语句是()。
A、printf(“%s”,b+4)B、puts(“%c”,b[20]);C、puts(“%s”,b);D、printf(“%c”,b+4);
72、以下叙述错误的是()。
A、函数原型中可以不指明参数的类型B、函数原型中可以不指明参数的名字
C、定义函数时必须指明函数类型D、定义函数时必须指明函数名
73、若已定义:
inta[5]={1,2,3,4,5},*pa=a+3;以下叙述错误的是()。
A、*pa与a[3]的值相等B、a--与pa--的作用相同
C、a[2]与*(pa-1)的值相同D、a[2]与pa[-1]的值相等
74、以下程段的输出结果是()。
Inta[5]={12,-4,16,8,-10},*p;
P=a+4;
Printf(“%d”,*p--);
(*P)--;
Printf(“%d\n”,*p);
A、-10-11B、87C、-107D、816
75、以下程序段运行,输出结果是()。
Inta=2,b=3,c=10;
C=(a>>1)|(b<<1);
Printf(“%d%d%d\n,a,b,c);
A、2310B、257C、325D、237
76、若已定义:
intx=1,y=2;则()是正确的。
A、n+2=x*3B、(x+0.8)%5C、n=(x=2)*(y=3)D、n=2x+y
77、若已定义:
inti=2,j=7;则()表达式不正确;
A、(i--)+(j++)B、(i++)+(j++)+5C、(i++)+j+(5++)D、(--i)+j
79、正确定义二维数组a的语句是()。
A、inta[4,5]B、floata[2+2][5]C、floata[4][]D、inta(4,3)
80、以下枚举型的定义,正确的是()。
A、enumCOLR{red=1,blue=3,green=5};B、enumCOLOR={“red”,”blue”,”green”};
C、enumCOLOR={red,blue,green};D、enumCOLOR{“red”,”blue”,”green”};
81、以下表达式中,()无法正确表示右图所示的代数式;
A、(a+b)*(a-c)/3*aB、(a+b)/a*(a-c)/3C、(a+b)/(3*a)*(a-c)D、(a+b)*(a-c)/(3*a)
82、若定义:
chars1[50],s2[10]=”abc”;,执行语句printf(“%s\n”,strcat(strcpy(s1,s2),”xyz”));后输出()。
A、xaybzcB、abcxyzC、axbyczD、xyzabc
83、以下程序段的运行结果是()。
Charstr[]=”Computer”,*p=str+3;
A、mputerB、mC、ComputerD、puter
84、以下程序的运行结果是()。
#include
Voidmain()
{charstr[]=”abcd”,*p=str;
While(*p)
{(*p)++;
P++;
}
Printf(“%s\n”,str);
}
A、bcdeB、cdbaC、abcdD、dcba
85、以下叙述正确的是()。
A、在循环体内使用break语句和continue语句的作用相同
B、continue语句的作用是使程序的执行流程跳出包含它的所有循环
C、break语句只能用在循环体内和switch语句体内
D、break语句只能用在switch语句体内
86、以下程序的运行结果是()。
#include
Unsignedintf(unsignedintx)
{if(x==1)return1;
Return2*f(x/2);
}
Voidmain()
{printf(“%u\n”,f(10));
}
A、1B、4C、16D、8
87、若已定义:
inti=10,*pi=&i;floatx=5.6,*px=&x;以下语句错误的是()。
A、*pi=i+20;B、x=*pi+*px;C、pi+px;D、(*px)=*pi+x;
88、若有如下结构类型定义,以下错误的语句是()。
StructPERSON
{intnum;
Charname[10];
};
A、structPERSONperson;person.num=123;
B、structPERSON*p;p->name=”1234”;
C、structPERSONpeople[100];(people+5)->num=1234;
D、structPERSON*p
89、整型常量三种表示形式中不含()。
A、十进制B、十六进制C、八进制D、二进制
91、以下程序段的运行结果是()。
Inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12};
Printf(“%d\n”,a[0][0]-a[2][3]);
A、8B、-11C、10D、-1
93、宏定义#definePI3.14中,宏名PI是一个()。
A、字符变量B、符号常量C、单精度类型的常量D、字符串常量
94、对于元返回值的函数,在定义时建议使用()的函数类型标识符。
A、emptyB、floatC、doubleD、void
95、以下程序的运行结果是()。
#include
Voidmain()
{inta[2][3]={{1,2,3},{4,5,6}},*q=p+5;
For(;q>=p;q--)
Printf(“%d”,*q);
A、321456B、654321C、456321D、123456
3. 关于C语言数据类型的叙述,正确的是( )。
A. 枚举类型不是基本类型
B. 数组不是构造类型
C. 变量必须先定义后使用
D. 不允许使用空类型
9. 对于C语言源程序,以下叙述错误的是( )。
A. 可以有空语句
B. 函数之间是平等的,在一个函数内部不能定义其它函数
C. 程序调试时如果没有提示错误,就能得到正确结果
D. 注释可以出现在语句的前面
10. 下面关于C语言用户标识符的描述,正确的是( )。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 修改 选择题
![提示](https://static.bdocx.com/images/bang_tan.gif)