A) 7 B) C) 17 D) 6.以下说法中正确的是( )
A、C语言程序总是从第一个定义的函数开始执行
B、在C语言程序中,要调用的函数必须在main()函数中定义 C、C语言程序总是从main()函数开始执行
D、C语言程序中的main()函数必须放在程序的开始部分
(1)设int a=2,b;则执行b=a&&1;语句后,b的结果是( ) N(2)逗号表达式(a=3*5,a*4),a+15的值是( )
7. 若已经定义了一个字符型变量为a,下面哪个表达式的含义跟其余表达式不同:
A) a!=0 B) a!=’\\0’ C) a D) !a 8. 在以下运算符中,优先级最高的运算符是__________
A) , B) [ ] C) && D) += 9. 在C语言中,逻辑值“真”用__________表示。
A) true B) 大于0的数 C) 非0的整数 D) 非0的数 10. 表达式__________是满足:当c的值为1、3、5三个数中任意一个时值为“真”,否则值为“假”的表达式
A) (c=1)||(c=3)||(c=5) B) (c!=1)&&(c!=3)&&(c!=5) C) (c==1)&&(c==3)&&(c=5) D) (c==1)||(c==3)||(c==5) 语言中,int类型数据占2个字节,则long类型数据占( )
A、1个字节 B、2 个字节 C、3个字节 D、4个字节 1.下列字符串是合法的标识符的是( )。
A、_HJ B、9_student C、 long D、LINE 1 2.下列说法中正确的是( )。
A、 C程序书写时,不区分大小写字母 B、 C程序书写时,一行只能写一个语句
C、 C 程序书写时,一个语句可分成几行书写 D、 C程序书写时每行必须有行号
3.在C语言中,要求参加运算的数必须是整数的运算符是( )。 A、/ B、! C、% D、= = 语言中,逻辑“真“等价于( )。
A、大于零的数 B、大于零的整数 C、非零的数 D、非零的整数
6.假设在程序中a,b,c均被定义为整型,并且已赋大于1的值,则下列能正确表
示代数式1/abc的表达式是( )。
A、1/a*b*c B、1/(a*b*c)
C、1/a/b/(float) c D、a/b/c
1.下列合法的字符常量是( )。
A、'\\084'
B、'\\x43'
C、'ab' )
D、sturct
D、\
2.在C语言提供的合法的关键字是(
A、switch
B、cher
C、Case
3.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是 A、 2
B、 1
C、
D、
三、 程序填空题
1以下程序不用第三个变量实现两个数对调的操作。 #includ “” main() {
int a,b;
scanf(\ a=;(三个字符) b=
printf(\ }
2、选择程序的运行结果 。
main ( )
{ int x=1, y=2, z, a, b, c, d; z = ++x||++y;
printf(\
printf(\输出结果
printf(\输出结果 (三个字符)*/ }3以下程序的结果为_______ main() {
unsigned int a=3, b=10;
printf(\输出结果<14> */ printf(\输出结果<0> */ }
4 若x=3,y=z=4,则下列表达式的值是。
(1)?????? (z>=y>=x)? 1:0
/*值为<0> */
(2)?????? z>=y&&y>=x /*值为<1> */
5已知float x=,int y;执行语句y=(int)x后,x为
6表达式’c’&&’d’的值为<1>(填写阿拉伯数字),’c’&&’d’||!(3+4)的值为<1>(填写阿拉伯数字)。
7若x为int类型,则与逻辑表达式“x”等价的表达式是
8 表示“整数x的值大于5”时逻辑值为“真”的表达式是
9已知字母A的ASCII码为十进制数65,且设ch为字符型变量,则表达式ch=‘A’-‘4’+‘9’的值为<’F’>(一个字符常量);若定义:char c=‘\\72’;则变量c中包含的字符个数为<1>(数字)。
10、C语言所提供的基本数据类型的整型类型包括:<短整型>、整型、<长整型>。(按每种类型所占字节数,从小到大排列)
第二章 C语言程序结构
(顺序程序设计、选择结构程序设计、循环控制)
一、 判断题(正确的填A,错误的填B)
1. do-while语句中的条件为非0时,就结束该循环。(B)
2.在switch-case语句中,不是每个case后都要使用break语句。( A ) 语句只能用于循环结构中。(B? )
48. 未给变量赋初值,只是运行结果不正确,不会有其他不良影响。(B) 5、switch语句中,可以不使用break语句;(A) 6、for语句中,三个表达式都可以省略;(A)
7(7)在for循环中使用break语句的目的是使流程跳出循环体,终止当前循环(A)
8. continue语句只能用于循环语句中。( A )
9. while语句中的条件为0时,就结束该循环。(A)
10.在循环体内使用break语句或continue语句的作用相同。(B) 在C语言中,逻辑值“真”用 表示。
11) 1 12) 大于0的数 13) 非0的整数 14) 非0的数 在循环语句的循环体中,continue语句的作用是( )。
15) 立即终止整个循环 16) 继续执行continue语句之后的循环体 17) 结束本次循环 18) 结束本次循环并跳出循环 语句while(!e);中,条件!e等价于( )
==0 20 .e!=0 !=1 ==1 设int c=5和int a; a=2+(c+=c++,c+8,++c), 则a=__________
23) 15 24) 14 25) 13 26) 16 若要表示if( a不等于0 )这一关系式,则能正确表示这一关系的表达式为if ( ) 27) a<>0 28) !a 29) a=0 30) a 二、 单项选择题
N1、以下不是死循环的语句是_______。 for( ; ; x+i ); while (1) {x++;}
for( i=10; ; i- -) sum+= i ;
for( ; (c=getchar()) != ‘\\n’ ; ) printf(“%c” , c) ; 2.设有程序段 int k = 10 ;
while ( k = 0 ) k = k - 1 ; 以下描述正确的是 ( )。
A. 循环体语句一次也不执行。 B. 循环是无限循环。 C. while 循环语句执行十次。 D. 循环体语句执行一次。 3.对下述程序,正确的判断是( )。 main( ) { int a,b;
scanf (\ if(a>b)a=b; b=a; else a++; b++;
printf(\ }
A. 有语法错误不能通过编译 B. 若输入4,5则输出5,6 C. 若输入5,4则输出4,5 D. 若输入5,4则输出5,5 R4. 以下程序 main() {
int i=010,j=10,k=0x10; printf(\ }有语法错误不能通过编译 输出结果是( )
,10,16 ,10,10 ,10,10 ,10,16
R5. 若变量已正确说明为int类型,要给a,b,c输入数据,以下语句正确的是__________
A) read(a,b,c); B) scanf(“%d%d%d”,a,b,c);
C) scanf(“%D%D%D”,&a,%b,%c); D) scanf(“%d%d%d”,&a,&b,&c);
R6.已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为__________。 main()
相关推荐: