C语言题库.docx
- 文档编号:2804375
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:22
- 大小:21.88KB
C语言题库.docx
《C语言题库.docx》由会员分享,可在线阅读,更多相关《C语言题库.docx(22页珍藏版)》请在冰豆网上搜索。
C语言题库
1.算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为(A)
A、算术运算、关系运算、赋值运算
B、算术运算、赋值运算、关系运算
C、关系运算、赋值运算、算术运算
D、关系运算、算术运算、赋值运算
2.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(B)。
A、1
B、2.0
C、2.5
D、2
3.以下标识符中,不能作为合法的C用户定义标识符的是(C)。
A、_double
B、_123
C、putchar
D、INT
4.以下程序段的输出是(D)
printf(“|%10.5f|\n”,12345.678);
A、|12345.6780|
B、|12345.678|
C、|2345.67800|
D、|12345.67800|
5.运行以下程序后,输出的结果是(B)
main()
{intk=-3;
if(k<=0)
printf("****\n"),
elseprintf("&&&&\n");
}
A、****
B、有语法错误不能通过编译
C、&&&&
D、****&&&&
6.下列定义数组的语句中正确的是(A)。
A、#definesize10charstr1[size],str2[size+2];
B、intnum['10'];
C、charstr[];
D、intn=5;inta[n][n+2];
7.宏定义#definePI3.14中的宏名PI代替(C)
A、不确定类型的数
B、一个单精度实数
C、一个字符串
D、一个双精度实数
8.以下叙述正确的是(D)
A、C程序中各函数之间允许直接递归调用不允许间接递归调用
B、C程序中各函数之间不允许直接递归调用允许间接递归调用
C、C程序中各函数之间不允许直接递归调用也不允许间接递归调用
D、C程序中各函数之间既允许直接递归调用也允许间接递归调用
9.以下叙述中不正确的是(D)。
A、以下是正确的宏定义#defineIBM_PC5
B、预处理命令行都必须以#号开始
C、在程序中凡是以#号开始的语句行都是预处理命令行
D、C程序在执行过程中对预处理命令行进行处理
10.序段intk=10;while(k=0)k=k-1;循环体语句执行__0___次.
字符串的结束标志是___\0__.
11.结构体是不同数据类型的数据集合,作为数据类型,必须先说明结构体_类型____,再说明结体变量.
12.以下程序由终端键盘输入一个文件名,然后把终端键盘输入的字符依次存
放到该文件中,用#号作为结束输入的标志。
请填空。
#include
main()
{FILE*fp;
charch,fname[10];
printf("Enterthenameoffile\n");
gets(fname);
if((fp=_fopen____(fname,"w"))==NULL)
{printf("Openerror!
\n");
exit(0);
}
printf("Enterdata:
);
while((ch=getchar())!
='#')
fputc(ch,fp);
fclose(fp);
13.a为任意整数,能将变量a清零的表达式是__a=a^a
设有说明:
charc;intx;doublez;则表达式c*x+z值的数据类型为(A)
A、double
B、char
C、int
D、float
14.不合法的八进制数是(D)
A、01
B、0
C、07700
D、028
15.若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是(B)。
ch='a';k=12;printf("%x,%o,",ch,ch);printf("k=%%d\n",k);
A、61,141,k=%12
B、61,141,k=%d
C、因变量类型与格式描述符的类型不匹配,输出无定值
D、输出项与格式描述符个数不符,输出为零值或不定值
16.以下不符合C语言语法的赋值语句是(D)。
A、j=j+1;
B、j=j=5;
C、k=(2*4,k*4);
D、y=float(j);
17.下列运算符中优先级别最高的是(A)
A、!
B、%
C、-=
D、&&
18.以下能正确定义数组并正确赋初值的语句是(D)。
A、intc[2][]={{1,2},{3,4}};
B、inta[1][2]={{1},{3}};
C、intN=5,b[N][N];
D、intd[3][2]={{1,2},{34}};
19.下列语句中,不正确的是(D)。
A、staticchara[2]={1,2};
B、staticinta[2]={'1','2'};
C、staticchara[2]={'1'};
D、staticchara[2]={'1','2','3'};
19++C语言源程序文件经过C编译程序编译连接之后生成一个后缀为()的可执行文件(B)
A、.obj
B、.exe
C、.c
D、.bas
20.在C语言的函数中,下列正确的说法是(C)。
A、形参必须是变量名
B、数组名不能作形参
C、可以有也可以没有形参
D、必须有形参
21.两个指针变量不可以(D)。
A、指向同一地址
B、比较
C、相减
D、相加
22.若以"a+"方式打开一个已存在的文件,则以下叙述正确的是(D)。
A、文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作
B、其他各种说法皆不正确
C、文件打开时,原有文件内容被删除,只可作写操作
D、文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作
以下程序的运行结果是__x=123.459780
___。
#include
main()
{
doublex=123.45478;
x=(x*100+0.5)/100;
printf("x=%f\n",x);
}
23.以下程序由终端键盘输入一个文件名,然后把终端键盘输入的字符依次存
放到该文件中,用#号作为结束输入的标志。
请填空。
#include
main()
{FILE*fp;
charch,fname[10];
printf("Enterthenameoffile\n");
gets(fname);
if((fp=fopen(fname,"w"))==NULL)
{printf("Openerror!
\n");
exit(0);
}
printf("Enterdata:
);
while((ch=getchar())!
='#')
fputc(ch,fp);
_fclose____(fp);
}
x=5,y=8时,c语言表达式5-2>=x-1<=y-2的值是_1____.
24.【程序改错】:
只允许修改错误代码,其他代码不允许修改!
--------------------------------------------------------
功能:
在字符串str中找出ASCII码值最小的字符,将其放在第一
个位置上,并将该字符前的原字符向后顺序移动。
例如:
调用fun函数之前给字符串输入:
eBCDAFGH,调用后字符串
中的内容为:
AeBCDFGH。
------------------------------------------------------*/
#include
#include
voidfun(char*p)
{
charmin,*q=p;inti=0;
min=p[i];
while(p[i]!
=0)
{
if(min>p[i])
{
min=p[i];
/**********ERROR**********/
p=p+i;
}
i++;
}
/**********ERROR**********/
while(q
{
/**********ERROR**********/
*q=(q-1);
q--;
}
p[0]=min;
}
voidmain()
{
charstr[80];
printf("Enterastring:
");gets(str);
printf("\nTheoriginalstring:
");puts(str);
fun(str);
printf("\nThestringaftermoving:
");puts(str);
}【改错1】【参考答案】q=p+i;【改错2】【参考答案】while(q>p)while(p 下列运算符中优先级最高的是(C)。 A、< B、&& C、+ D、! = 下列字符序列中,可用作C标识符的一组字符序列是(D)。 A、class,day,lotus_1,2day B、#md,&12x,month,student_n! C、S.b,sum,average,_above D、D56,r_1_2,name,_st_1 有以下程序 main() { inta=5,b=4,c=3,d=2; if(a>b>c) printf("%d\n",d); elseif((c-1>=d)==1) printf("%d\n",d+1); elseprintf("%d\n",d+2); } 执行后输出结果是(D) A、2 B、4 C、编译时出错 chara1[]="abc",a2[80]="1234";将a1串连接到a2串后面的语句是(B)。 A、strcat(a1,a2); B、strcat(a2,a1); C、strcpy(a2,a1); D、strcpy(a1,a2); C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是(C)。 A、void B、double C、int D、float C语言中,如果函数不需要返回值,函数类型应该定义为(C)。 A、double B、int C、void D、float 使用共用体变量,不可以(A)。 A、同时访问所有成员 B、进行动态管理 C、简化程序设计 D、节省存储空间 以下程序运行后的输出结果是_3____。 main() {intp=30; printf("%d\n",(p/3>0? p/10: p%3)); 有以下宏定义和赋值语句,宏置换后的赋值语句的形式是有以下宏定义和赋值语句,宏置换后的赋值语句的形式是_p=3+5*3+5 ____。 #defineA3+5 …… p=A*A; 设有以下结构类型说明和变量定义(假定int型数据占两个字节),则变量a在内存所占字节数是___22__. structstud{charnum[6];ints[4];doubleave;}a,*p; 以下程序用来统计文件中字符的个数。 请填空。 #include
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 题库
![提示](https://static.bdocx.com/images/bang_tan.gif)