C语言复习
- 格式:docx
- 大小:18.10 KB
- 文档页数:2
01计算机本身最擅长的能力是?A、推理B、想像C、重复D、分析正确答案: C、重复。
02 计算机(CPU)能够直截了当运行人类编写的程序A、√B、×正确答案: B、×、03编程语言是与计算机交谈的语言A、√B、×正确答案: B、×。
04 关于C语言,以下讲法错误的有:A、C语言是与Unix操作系统一同发展起来的B、C语言不能写图形界面的软件C、C语言一般是编译执行的D、C语言诞生于1970年代正确答案: B、C语言不能写图形界面的软件、06 IDE的中文翻译是什么?正确答案是:集成开发环境、07 给定:int a,b; 以下哪些scanf的使用是正确的?A、scanf("%d”,&a); scanf(”%d",&b);B、scanf(”%d %d”, &a, &b);C、scanf("%d, %d", &a,&b);D、scanf("%d%d”, a, b);正确答案: A、scanf("%d”,&a); scanf(”%d", &b);。
B、scanf(”%d%d", &a, &b);、C、scanf(”%d,%d”,&a,&b);、08 以下哪些是有效的变量名?A、mainB、4everC、monkey—kingD、__int正确答案:A、main。
D、__int。
09给定:inta,b; scanf("%d %d", &a, &b);则以下哪些输入方式是正确的?A、1 2B、1,2C、1(回车)2D、1、2正确答案:A、1 2。
C、1(回车)2、10给定以下代码段:inta,b=0;则a的初始值是0A、√B、×正确答案: B、×、11写出下式的运算结果:10/3、0*3 正确答案是:10、0。
12写出下式的运算结果:10/3*3、0正确答案是:9、0。
C语⾔基础题复习基础题复习⼀、选择题1.以下选项中,哪个是合法的C标识符(____)A) b-a B) 5abC) int D) INT2. 以下选项中,哪个是合法的常量(____)A) 0789 B) 0xEFGC) 9.2e2 D) 2e9.23. 设n为16位整数,则n的取值范围是(____)A) -32768⾄32768 B) 0⾄65536C) -32768⾄32767 D) 0⾄655354. 设int n=-1; 则n在内存中的16位编码是(____)A) 1111 1111 1111 1111 B) 1000 0000 0000 0001C) 1111 1111 1111 1110 D) 0000 0000 0000 00005. 设有int n;判断n是⼀个2位正整数的表达式是(____)A) n>10 && n<100 B) n>=10 && n<=99C) !(n<10) || n<100 D) n>=10 || n<=996. 设有定义int a=5,b; 赋值使b为9的语句是(____)A) b=++a+4; B) b=(a++)+3;C) b=8+!(a==5); D) b=(a++==6)?8:9;7. 以下哪条语句输出字符'a'的ASCII编码 (____)A) printf("%d",a); B) printf("%c",'a');C) printf("%d",'a'); D) putchar(a);8. 设有char str[80];则下列输⼊字符串的语句中正确的是(____)A) scanf("%s",&str); B) scanf("%s",str[80]);C) scanf("%s",str); D) scanf("%s",str[0]);9. 在C语⾔中,表⽰结束当前函数的语句是(____)A) return语句 B) break语句C) continue语句 D) exit语句10.以下选项中,合法的函数说明语句是(____)A) void func( char a[], b[]);B) void func( char *a, char b[]);C) void func( char a[]; char *b);D) void func( char *a, *b );11. 在字符串常⽤函数中,⽤于⽐较字符串⼤⼩的函数是(____)A) strlen B) strcpyC) strcat D) strcmp12. 设有定义char a[]="abcDEF",*p=a+3;则puts(p)的输出结果是(____)A) abcDEF B) bcDEFC) cDEF D) DEF13. 以下4个变量定义中,定义p为⼆级指针的是(____)A) int **p; B) int (*p)( );C) int *p[10]; D) int (*p)[10];14. 设有以下结构体定义及初始化,则表达式结果为'i'的是(____) struct node{int num;char name[20];} stu[2]={101,"Wang",102,"Li"},*p=stu+1;A) stu[1].name[1] B) p->name[1]C) stu[0].name[1] D) *p->name[1]15. 设有定义FILE *fp;将整数n以⽂本⽅式写到fp⽂件的语句是(____)A) fp = fopen( "file.txt", "w" );B) fprintf( fp, "%d", n );C) fwrite( &n, sizeof(int), 1, fp );D) fclose(fp);16. 表达式10 & 12和10 ^ 12的计算结果分别是(____)A) 8和14 B) 8和6C) 14和8 D) 6和817. 语句“while(!x)…”等价于(____)。
c语言期末复习资料C语言是计算机科学中非常基础的一门编程语言,是程序员必须掌握的技能之一。
由于其简单易学的特点和广泛的应用范围,越来越多的人开始学习和使用C语言。
期末考试是C语言学习过程中的重要节点,为了帮助考生顺利通过考试,本文整理了一些C语言期末复习资料以供参考。
一、基础知识1.变量和数据类型C语言中的变量用于存储程序中使用的数据,数据类型是指变量所代表的数据的类型。
常见的C语言数据类型包括整型、浮点型、字符型、布尔型等。
掌握变量和数据类型的定义和使用是C 语言学习的第一步。
2.运算符和表达式C语言中的运算符用于对变量进行运算和操作,包括算术运算符、关系运算符、逻辑运算符等。
表达式是由变量和运算符组成的代码段,用于对变量进行操作和计算。
掌握运算符和表达式的使用和规则是C语言学习的基础。
3.条件语句和循环语句条件语句和循环语句是C语言中的两种重要的控制结构。
条件语句根据条件的真假来执行不同的代码段,常见的条件语句包括if语句和switch语句。
循环语句用于重复执行同一个代码段,常见的循环语句包括for循环、while循环和do-while循环。
掌握条件语句和循环语句的使用和应用是C语言学习的重要环节。
二、进阶技巧1.字符数组和字符串字符数组和字符串是C语言中非常常用的数据类型,用于处理字符和文本。
字符数组是由若干个字符组成的数组,字符串是由若干个字符组成的字符串常量。
掌握字符数组和字符串的定义和使用,能够更好地处理文本和数据输入输出等问题。
2.函数和指针函数是C语言中的重要的模块化编程方法,函数将程序的功能分解为若干个具有特定功能的独立模块。
指针是C语言中的重要的数据类型,它存储变量的内存地址,常用于访问复杂数据结构和实现高效的内存管理。
掌握函数和指针的使用和细节能够更好地组织程序和提高程序的执行效率。
3.结构体和文件操作结构体是C语言中用于组织复杂数据结构的数据类型,常用于存储各种类型的数据记录。
一、选择题1、可以在C语言中使用的一组用户标识符是()。
A、3B sizeof DOB、ab34 c1_c2 _forC、_123 t2_a1_ printfD、void 6b hat2、以下均是字符常量或数值常量的选项是()。
A、0.0 0f 8.9e …&‟B、”A” 3.9e-2.5 1e1C、‟3‟011 0xff00 0aD、0xabcd 2e3 50.3、以下选项中正确的实型常量是()。
A、0B、0.618*10C、567D、3.14154、将汇编语言编写的程序翻译为目标程序的是()程序。
A、解释B、编译C、汇编D、目标5、不属于面向机器的语言是()。
A、符号语言B、机器语言C、汇编语言D、C语言6、程序段的基本结构中,不包含()。
A、函数结构B、循环结构C、顺序结构D、分支结构7、下列符号中,不属于转义字符的是()。
A、\\B、\0xaaC、\0D、\t8、正确的C语言标识符是()。
A、_sum_1B、1_sumC、?_sumD、sum?9、增1减1运算只能作用于()。
A、常量B、变量C、表达式D、函数10、设“int a=2,b=2;”,则++a+b的结果是(),a的结果是(),b的结果是()。
A、2B、3C、4D、511、下列运算符中优先级最高级的是()。
A、++B、%C、*D、=12、设“int a=2;”,则表达式“(a++*1/3)”的值是(),a的值是()。
A、0B、1C、2D、313、字符数据在内存中的存储代码采用的是()。
A、反码B、补码C、EBCDIC码D、ASC II码14、char a; int b; float c; double d;则表达式a*b+d-c值的类型为()。
A、intB、floatC、doubleD、char15、字符串”\”\123\n\321a”的长度是()。
A、1B、5C、9D、1316、下列常量中,不属于字符常量的是()。
A、‟\1x‟B、‟0‟C、‟\‟‟D、‟\n‟17、语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是A. a\bre\'hi\'y\\\bouB. a\bre\'hi\'y\bouC. re'hi'youD. abre'hi'y\bou18、设整型变量k的值为011,下列表达式中值不为1的是()。
判断题1.函数若无返回值,则它一定无形参。
×2.在C 程序中, 函数既可以嵌套定义, 也可以嵌套调用。
×3.C程序总是从main( ) 函数的第一条语句开始执行的。
√4.同一函数内可以有多个return语句。
√5.main函数中的变量名不可以与其它函数相同。
×6.C程序可由多个函数组成,但必须有并且只有一个主函数main。
√7.在C语言中的每个函数必须要有一个明确的return语句才能返回调用程序。
×8.主函数中定义的变量的作用域仅限于主函数内。
√9.传值调用的形参只有在被调用时,才被创建(分配存储单元)。
√10.C程序执行总是从第一个函数开始。
×11.一个C程序的执行总是从该程序的main函数开始,在main函数最后结束。
×12.被main函数调用的函数只能是库函数。
×13.函数说明指的是在程序中设定一个函数模块。
×14.在C程序中,若对函数类型未加说明,则函数的隐含类型为void。
×15.形参可以是常量、变量或表达式。
×16.函数调用可以作为一个函数的形参。
×17.C语言规定,实参应与其对应的形参类型一致。
√18.定义函数时,形参的类型说明可以放在函数体内。
×19.一个函数可以带回一个整型值、字符值、实型值等,也可以带回指针型的数据。
√20.全局变量可以被任何一个函数中的任何一个表达式使用。
×21.函数的隐含存储类型是extern。
√22.定义在main函数后的任何函数都需在main中进行函数声明。
×23.a是一维数组名,数组元素a[1]还可以写作“*(a++)”。
×24.C语言中数组名是指针常量。
√25.构成数组的各个元素必须具有相同的类型。
√26.数组元素的下标可以选用正整数或正实数。
×27.数组名可以作为参数进行传递。
√28.若有定义“int a[4][5];”,则在数组元素a[3][3]前有12个元素。
一、填空题1.C语言所提供的基本数据类型包括:单精度、双精度、整型、字符型。
2.若定义int m=8,y=3;则执行y*=y+=m-=y;后y的值是64。
3.Ox10相当于八进制数20 。
4.%m.n表示数据输出的总宽度占M列,其中小数部分占N 列。
5.C语言提供的3种逻辑运算符是非、或者、与。
6.当m=3,n=4,a=5,b=1,c=2时,执行完d=(m=a!=b)&&(n=b>c)后,n的值为1,m 的值为1,d的值为0。
7. 在数组定义格式中,放括号中的元素个数是量。
8. 判断字符串a和b是否相等,应当使用strcmp函数。
9. 在C语言中不能被调用的函数是函数。
10、目前,有两种重要的程序设计方法,分别是面向对象和面向过程。
12、面向对象程序设计的三个特征:多态、继承和封装。
13、在一个C源程序中,注释部分两侧的分界符为___ * */ __ 。
14、do----while 语句至少执行____1____次循环体。
15、在C语言中,一个double型数据在内存中所占的字节数为__8___。
16、若s是unsigned int型变量且已赋初值,则表达式s%2+(s+1)%2的值是__1_______17、表达式3>4的值是___0________18、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后,x的值为11,n的值为6。
19、若x=0,y=0,z=0,则计算表达式x++||y++&&z++后,x的值为1,y的值为1,z的值为1。
二、单项选择题1、下列各高级语言中,(B)是面向对象的程序语言。
A)Basic B)C C)C++ D)Pascal2、一个C程序的执行是从( A )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束3、C语言规定,不同类型的数据占用存储空间的长度是不同的。
一、判断题。
1、#include 、#define、scanf和printf都不是C语句。
(对)//#号开头的,是C语言的命令,最后不加分号“;”。
scanf和printf是输入和输出函数,不是C 语言的语句-----C语言里没有输入和输出语句,是由函数(如:这里的scanf 和printf函数)来实现输入和输出的。
2、一个include命令只可以指定一个被包含的文件。
(对)//include命令一次只可以指定一个包含的文件,要包含多个文件要用多个include命令3、参加位运算的数据必须是整型的数据。
(对)//如:不能使float类型的数据4、若有int i=9, j=3; 则执行完i*=j+10; 后i的值为20。
(错)//i*=j+10=>i=i*(j+10)=9*(3+10)=9*135、9&3+11的值是12。
(错)// 9&3+11=9&(3+11)=>1001&1110=1000=>86、关系运算符>=与==的优先级相同。
(错)//关系运算符的前4个(>、>=、<、<=)的优先级相同。
后两个(==、!=)的优先级相同,并且低于前4个的优先级。
7、若i=5,则printf(“%d”,-i++);输出的值为-6。
(错)//++在后面是先将-i打印,再将i加1。
如果是printf(“%d”,- ++i);则输出的值就为-6.8、语句printf(“%f%%”,10.0/3);输出为3.333333。
(错)//10.0/3确实是3.333333,但是这里还有%%,所以输出的结果应该是3.333333%9、若有int i=20, j=0;则执行完语句if(j=0)i++;else i--;i的值为21。
(错)//注意这里是j=0,一个等号是赋值,也就是j=0,这里是假,所以应该执行else i—部分,i的值为19.10、若有定义和语句:int a[3][3]={{3,5},{8,9},{12,35}}, i, sum=0;for(i=0;i<3;i++) sum+=a[i][2-i];则sum=21。
一、C语言概述练习题选择1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。
A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。
A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件7.以下叙述正确的是。
A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 522.下列四组选项中,均不是C语言关键字的选项是。
第一章数据类型与表达式一.知识点1. c语言的特点:①语言简洁、紧凑,使用方便、灵活;②运算符丰富;③数据结构丰富;④具有结构化控制语句;⑤语法限制不太严格,程序设计自由度大;⑥可以进行位操作,能实现汇编语言的大部分功能,能直接对硬件进行操作;⑦生成的目标代码质量高,程序执行效率高;⑧程序的移植性好。
2. C程序的组成:⑴C程序是甫函数构成的;⑵一个函数包括函数的首部(即函数的第一行)和函数体(即花括号部分);⑶函数体一般包括声明部分和执行部分;⑷一个C程序总是从main函数开始执行,从main函数结束;⑸C程序书写格式自市,一行内可以写几个语句,一个语句可以分写在多行上;⑹每个语句和数据定义的最后必须有一个分号;⑺C语言本身没有输入输出语句,是通过函数实现输入输出的;⑻可以用广……*/对C程序的任何部分作注释。
3. C语言程序的运行:源程序文件的扩展名为・c,目标程序文件的扩展名为.obj,可执行程序文件的扩展名为.exe。
4. C的数据类型:基本、构造、指针和空类型,char、int、short、long、unsigned> float> double> enum> struct> union> typedefo5. 常量与变量的概念,注意符号常量的定义与使用;6. 整型、实型、字符型常量的表示,注意整型常量的十进制、八进制、十六进制的书写。
7. 变量的定义,C的标识符包括关键字、预定义标识符、用户定义标识符;用户定义标识符的可用字符为字母、数字、下划线,第一个字符为字母或下划线。
8. 常见数据类型的取值范围,int为・32768〜+32767, unsigned int 为0~65535。
9. 转义字符:\n、\t、\b、\r、\f、\\、\\ \\ \ddd、\xhh10. 不同数值型数据的混合运算,低级类型转换为高级类型运算11・C的运算符:注意结合方向和运算的优先级12. 算术运算符:+、・、*、/、%、++、一,注意自加、减运算符分前缀和后缀两种方式。
C语言期末复习题第一单元程序设计和C语言一、选择题1.C语言的基本构成单位是: A 。
A. 函数B. 函数和过程C. 超文本过程 D. 子程序2.一个C语言程序总是从 B 开始执行。
A. 主过程B. 主函数C. 子程序D.主程序3.C语言的程序一行写不下时,可以。
A. 用逗号换行B. 用分号换行C. 在任意一空格处换行D. 用回车符换行4.以下叙述不正确的是: C 。
A. 在C程序中,语句之间必须要用分号";"分隔B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数C. 在C程序中,无论是整数还是实数都能正确无误地表示D. 在C程序中,%是只能用于整数运算的运算符5.以下不正确的C语言标识符是 D 。
A. ABC B. abc C.a_bc D. ab.c6.下列字符串是标识符的是: A 。
A. _HJB. 9_studentC. longD. LINE 17.以下说法中正确的是: C 。
A. C语言程序总是从第一个定义的函数开始执行B. 在C语言程序中,要调用的函数必须放在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分8.不合法的常量是: D 。
A. ‘\2’B. ""C. ‘3’D. ‘\483’9.已知各变量的类型说明如下,则以下不符合C语言语法的表达式是: A 。
int k,a,b;unsigned long w=5;double x=1.422;A. x%(-3)B. w+=-2C. k=(a=2,b=3,a+b)字符串"\\\"ABC\"\\"的长度是 B 。
A. 11B. 7C. 5D. 3二、填空题1.一个函数由两部分组成,它们是和。
2.一个C源程序至少包含一个,即。
3.设int a=12; 则表达式a/=a+a的值是。
C语言复习一、判断题:1.‟\x72‟、‟\n‟、‟\\‟都是字符常量。
(y )。
2.若有说明int c[4][50];则gets(c[1]);是正确的C命令语句。
(y)3.若有变量定义long data=10000000;则使用命令printf(”%d”,data);实现变量值输出是错误的命令语句,无法通过编译。
(n)4.若有变量定义int a=1;表达式a- -?+ +a:- -a的值为1。
(y)5.若有变量定义double x=-3.4;循环语句while (x){ x = x>0; }是错误命令。
(n)6.定义数组char s[ ]={“abc“},则数组s的元素个数为3。
(n)7.int *p=&a ,a=0;是正确的C变量定义语句。
(n )8.C语言程序从main函数开始执行,所以main函数必须写在其他被调用的函数之前。
( n )9.表达式7=3+4不正确。
(y)10.字符数组char str[ ]="abcd"; 有5个数组元素( y )11.while 1 i,j; 一定是错误的C语句。
(y )12.for( ; ; )S中的语句S必执行无穷多次。
(n)13.用字符型指针变量p作为函数void fa(char *pa)的实际参数时,应采用以下的命令格式fa (*p ); ( n )14.sub()和Sub( )是不同的函数(y)15.在C程序中,函数中所定义的局部变量与全局变量同名时,局部变量屏蔽全局变量。
(y )16.全局外部变量定义命令必须写在函数之外。
( y )17.指针变量算术运算只能可作+、—运算。
( y )18.如有定义float a[10]; 可定义表达式a=a+1。
(n )19.在逻辑表达式的计算中,必须所有的逻辑远算符都被执行后,才会结束表达式的计算(n)20.数组名作为函数实际参数,传送的是地址(y)21.若变量pointer是指针变量,命令pointer=0x2000; 是正确的赋值命令. (n)22.int c[2][ ]={{1,2},{3,4}}; 是正确的二维数组定义命令。
c语言复习试题及答案C语言复习试题及答案一、选择题1. C语言中,一个整型变量的取值范围是:A. -128 到 127B. -32768 到 32767C. -2147483648 到 2147483647D. 取决于编译器答案:D2. 下列哪个关键字用于定义C语言的结构体?A. structB. defineC. unionD. enum答案:A3. C语言中,字符串在内存中是以什么方式存储的?A. 字符串名B. 字符串长度C. 字符串本身D. 字符串结束标志 '\0'答案:D4. 在C语言中,函数返回值的类型由什么决定?A. return 语句B. 函数名C. 函数定义时指定的类型D. 函数参数的类型答案:C5. 下列哪个操作符不能用于位操作?A. &B. |C. ^D. ++答案:D二、填空题6. C语言中,预处理器指令 `#include` 的作用是_______。
答案:引入其他文件7. `int main()` 函数中的 `void` 表示该函数_______。
答案:不返回任何值8. 在C语言中,数组的索引是从_______开始的。
答案:09. `printf` 函数的返回类型是_______。
答案:int10. 表达式 `3.0 / 0` 在C语言中会导致_______。
答案:运行时错误三、简答题11. 请简述C语言中指针的概念及其用途。
答案:指针是一种变量,它存储的是另一个变量的内存地址。
指针在C语言中用于直接访问内存、动态内存分配、数组操作、函数参数传递等。
12. 解释C语言中数组和指针之间的关系。
答案:在C语言中,数组名可以作为指针使用,它指向数组的第一个元素的地址。
通过指针可以遍历数组,也可以通过指针修改数组元素的值。
四、编程题13. 编写一个C语言程序,实现对整数数组的排序。
```c#include <stdio.h>void sort(int arr[], int n) {int i, j, temp, min_idx;for (i = 0; i < n - 1; i++) {min_idx = i;for (j = i + 1; j < n; j++) {if (arr[j] < arr[min_idx]) {min_idx = j;}}if (min_idx != i) {temp = arr[i];arr[i] = arr[min_idx];arr[min_idx] = temp;}}}int main() {int arr[] = {64, 34, 25, 12, 22, 11, 90}; int n = sizeof(arr) / sizeof(arr[0]);sort(arr, n);printf("Sorted array: \n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;}```14. 编写一个C语言程序,实现字符串的反转。
2. 下列可用于C语言用户标识符的一组是
A)void, define, WORD B)a3_b3, _123,Car C)For, -abc, IF Case D)2a, DO, sizeof
3. 若有说明语句:char c='\72';则变量c
A)包含1个字符 B)包含2个字符 C)包含3个字符 D)说明不合法,c的值不确定
4. 有字符串如下,"\n\\as1xabc",则字符串的长度为
A)8 B)9 C)10 D)11
5. C语言中运算对象必须是整型的运算符是
A)%= B)/ C)= D)<=
6. 若变量已正确定义并赋值,以下符合C语言语法的表达式是
A)a:=b+1 B)a=b=c+2 C)int 18.5%3 D)a=a+7=c+b
7. 若变量a,i已正确定义,且i已正确赋值,合法的语句是
A)a= =1 B)++i;C)a=a++=5;D)a=int(i);
8. 若有定义:int a=7; float x=2.5,y=4.7; , 则表达式x+a%3*(int)(x+y)%2/4的值是
A)2.500000 B)2.750000 C)3.500000 D)0.000000
9. 已知int i,a;执行语句i=(a=3,a++,- -a,a+4,a+5,++a);后,变量i的值为
A)2 B)3 C)4 D)5
10. 设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为
A)int B)float C)double D)不确定
11. 设有int x=11;则表达式(x++*1/3)的值是
A)3 B)4 C)11 D)12
12. 以下程序的输出结果是
void main()
{
int a=21,b=11;
printf("%d\n",- -a+b,- -b+a);
}
A)30 B)31 C)32 D)33
13. 已知int a=6; 则执行a+=a-=a*a;语句后,a的值为
A)36 B)0 C)-24 D)-60
14. 在内存中,存储字符′x′要占用1个字节,存储字符串″X″要占用个字节
15. 以下程序段的输出结果是。
void main ()
{
int a=2,b=3,c=4;
a*=16+(b++)-(++c);
printf("%d",a);
}
16. 以下程序段的输出结果是。
int x=17,y=26;
printf ("%d",y/=(x%=6));
17. 下列四个叙述中,错误的是
A.C语言中的关键字必须小写
B.变量的存储类型决定了变量的存储位置极其生存期
C.宏定义必须以#define开头,行末必须加分号
D.C语言中的注释行可以出现在程序的任何位置
18. 设x为int型变量,执行语句x=10;x+=x-=x-x;后x的值为
19. 以下程序的输出结果是
#include<stdio.h>
#include<math.h>
main()
{int a=1,b=4,c=2;
float x=10.5,y=4.0,z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
printf(“%f\n”,z);
}
20. 为表示关系y在闭区间【x,z】内,应使用C语言表达式是
21. 设char c1=’a’,c2=’A’;则表达式c1==c2+32?c1:(c1=c2+32)的值
A. 1
B. 0
C. ‘a’
D. ‘A’
22. 运行一下程序段的运行结果
int x=1,y=2,z=3,a=-1;
if(x<=y) a=0;
else
if(z>y) a=1;
printf(“%d%d%d%d\n”,x,y,z,a);。