C语言练习题(答案)

合集下载

C语言练习题及其答案

C语言练习题及其答案

C语言练习题及其答案C语言练习题及其答案C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。

C语言能以简易的方式编译、处理低级存储器。

下面是店铺帮大家整理的C语言练习题及其答案,仅供参考,大家一起来看看吧。

C语言练习题及其答案1一、选择题(7分,每小题0.5分)1.C语言源程序的基本单位是(B)。

A过程 B函数 C子程序 D标识符2.下列程序的输出结果是(C)。

main( ){ int a=7,b=5;printf("%d ",b=b/a);}A 5B 1C 0 D不确定值3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是(B)。

A 7B 8 C9 D 24.设a为int型变量,执行下列赋值语句后,a的取值分别是()。

a=125.534; a=(int)125.521%4; a=5<<2;A 125,31,1B 125,1,20C 125,31,20D 125.534,2,205.设有如下程序段,下面描述中正确的是(C)。

int k=10;while(k=0) k=k-1;A循环执行一次 B循环是无限循环 C循环体语句一次也不执行 D 循环体语句执行一次6.下面选项中正确的赋值语句是(设char a[5],*p=a;)()。

A p="abcd";B a="abcd";C *p="abcd";D *a="abcd";13.设有以下程序段,则值为6的表达式是()。

struct st { int n; struct st *next;};static struct st a[3]={5,&a[1],7,&a[2],9,0},*p;p=&a[0];A p++->nB ++p->nC p->n++D (*p).n++14.C语言中的文件类型只有()。

c语言习题(带答案)

c语言习题(带答案)

一、选择1若有表达式(a)(--x):(++y),则其中与a等价的表达式是A)a==1B)a==0C)a!=1D)a!=02有以下程序段intx,y,z;x=10;y=50;z=30;if(x>y)x=y,y=z;z=x;printf(“x=%dy=%dz=%d\n”,x,y,z);程序的输出结果是A)x=10y=50z=10B)x=10y=50z=30C)x=10y=30z=10D)x=50y=30z=503下面的函数调用语句中func函数的实参个数是f(f2(u1,u2),(u3,u4),(u6,max(u7,u8)));A)3B)4C)5D)84 以下叙述中错误的是A)用户定义的函数中可以没有return语句B)用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值C)用户定义的函数中若没有return语句,则应当定义函数为void类型D)函数的return语句中可以没有表达6有以下程序#include<>voidfun(inta,intb){intt;t=a;a=b;b=t;}main(){intc[10]={11,12,13,14,15,16,17,18,19,20},i;for(i=0;i<10;i+=2)fun(c[i],c[i+1]);for(i=0;i<10;i++)printf("%d,",c[i]);printf("\n");}程序的运行结果是A)11,12,13,14,15,16,17,18,19,20B)12,11,14,13,16,15,18,17,20,19C)20,19,18,17,16,15,14,13,12,11D)20,11,12,13,14,15,16,17,18,198有以下程序main(){ int a=7,b=8,*p,*q,*r;p=&a;q=&b;r=p; p=q;q=r;printf("%d,%d,%d,%d\n",*p,"q,a,b);}程序运行后的输出结果是A)8,7,8,7 B)7,8,7,8 C)8,7,7,8 D)7,8,8,79 .s1和s2已正确定义并分别指向两个字符串。

C语言基础练习题(含答案)

C语言基础练习题(含答案)

目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。

(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。

A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。

A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。

A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。

A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。

A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。

A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。

A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。

A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。

C语言练习作业及参考答案

C语言练习作业及参考答案
(5)输入圆的半径r,计算并输出圆的周长和面积,要求将 定义为符号常量。
二、选择题
1、在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为____A___。
A) char<int<long int<=float<double
B) char=int <long int<=float<double
B)C程序的每行中只能写一条语句
C)C语言本身没有输入输出语句
D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误
7、以下叙述不正确的是___D_____。
A)一个C源程序可由一个或多个函数组成
B)一个C源程序必须包含一个main函数
C)C程序的基本组成单位是函数
D)在C程序中,注释说明只能位于一条语句的后面
longd=32768;
float e=4.56;
b=a;
a=c=d;
printf("%d,%u,%u,%ld\n",a,b,c,d);
a=e;
printf("%d,%f\n",a,e);
ห้องสมุดไป่ตู้return 0;
}
本题假设int型数据占两个字节。
(提示:%u表示以无符号整型的格式输出;%ld表示以长整型的格式输出)
8、C语言规定:在一个源程序中,main函数的位置是___A_____。
A)必须在最开始
B)必须在系统调用的库函数的后面
C)可以任意
D)必须在最后
习题
一、程序题
1、阅读程序写运行结果
(1)#include <stdio.h>
int main()

C语言基础练习题(含答案)

C语言基础练习题(含答案)

第一章C语言基础知识1.1 选择题1. 以下不是C语言的特点的是()。

A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。

A.abc123 B.no.1 C._123_ D.-_ok3.正确的C语言标识符是()。

A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。

A.void B.a3_b3C.For D.2a define _123 -abc DOWORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。

A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。

A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。

A.Float B.signedC.integer D.Char8.以下不能定义为用户标示符的是()。

A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。

A.一个主程序和若干子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成10. C语言程序的基本单位是()。

A.程序行B.语句C.函数D.字符11.下列说法中,错误的是()。

A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数12.以下说法中正确的是()。

A.C语言程序总是从第一个定义的函数开始执行B.在C语言程序中,要调用的函数必须在main( )函数中定义C.C语言程序总是从main( )函数开始执行D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。

C语言练习题(带详解答案)

C语言练习题(带详解答案)

C语言练习题(带详解答案)一单项选择题1.(A)是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。

A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D)包含文件中的第一个函数3、以下说法中正确的是(C)。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)A)C程序的工作过程是编辑、编译、连接、运行B)C语言不区分大小写。

C)C程序的三种基本结构是顺序、选择、循环D)C程序从main函数开始执行5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_iD.intt5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的-,选项B中[与]不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。

A)3a某B)某C)caeD)-e2E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的-不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A)%某B)a+bC)a123D)123选项A中的%,选项B中+不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print_3ddb8aBcB、I\\amone_halftart$it3paiC、tr_1CpppowwhileD、P某qMy->bookline#Hi.age选项B中的\\,$,选项D中>,#,.,-不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

C语言试题库(含答案)

C语言试题库(含答案)
C、Print f("%c\n",class[2].name[l]);
D、print f("%c\n",class[2].name[0]);
标准答案:D
【5】设单精度变量f,g的值均为5.0,则下面的表达式中,使f为10.0的表达式是。
A、f+=g
B、f-=g+5
C、f*=g-5
D、f/=g*5
标准答案:A
if(ch=='/')w=a/b;
B、B)if(ch=='*')w=a*b;
else if(ch=='/')w=a/b;
if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
C、if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
if(ch=='*')w=a*b;
A、15
B、10
C、25
D、20
标准答案:A
【15】程序段的基本结构中,不包含()。
A、函数结构
B、循环结构
C、顺序结构
D、分支结构
标准答案:A
【1】执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是。
A、1
B、2
C、1,2
D、12
标准答案:c
【3】若用数组名作为函数调用的实参,传递给形参的是()。
#include<stdio.h>
main()
{int i=1;

C语言200道练习试题和答案

C语言200道练习试题和答案

A)<=
B)=
C)%
D)&&
26.表达式(a=2,3) , a+1的值是【 C 】。
A)0 B)2
C)3
D)4
27.若执行printf("%d\n", strlen("a\n\"\x41"))语句其输 出结果是【 D 】。
A)8 B)7 C)6
D)4
28.在循环语句的循环体中执行break语句, 其作用是【 A 】。 A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行
则输出是【 d 】 A)1234.56 1234 B)1234.57 1235 C)1234.56 1235 D)1234.57 1234
43.如果有
int a, b; scanf(“%d,%d”, &a, &b);语句,
则输入数据时,只可以用【 d 】作为输入的分隔符
A)TAB键 B)空格
C)回车
C)20,10 D)20,20
24.若有以下定义和语句 char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+"A"); 则输出结果是【 B 】。
A)2,M B)3,E C)2,E D)输出项与对应的格式控制不一致,输出结果不确定
25.在以下一组运算符中,优先级最高的运算符是【 C 】
int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C.scanf("%c",&a);
D.scanf("%u",&a);
B
40.putchar()函数的功能是向终端输出()。// char *str0;….;puts( str0);
A.多个字符
B.一个字符
C.一个实型变量值
D.一个整型变量表达式
D
41.getchar()函数的功能是从终端输入()。
A.一个整型变量值
A
57.已知inta='R';则正确的表达式是()。
A.a%10
B.a=int(3e2)
C.2*a=a++
D.a=a+a=a+3与C 同属一类错误
A
58.设单精度型变量f、g的值均为2.0,使f为4.0的表达式是()。
A.f+=g
B.f-=g+2
C.f*=g-6
D.f/=g*10
B
59.若有定义:floatx=3.5;intz=8;则表达式x+z%3/4的值为()。
A.3,3,4//逗号运算符及逗号表达式
B.4,4,3
C.4,4,4
D.3,4,3
B
21.语句a=(3/4)+3%2;运行后,a的值为()。
A.0
B.1//注意除号/ 两边均为整型时,结果为整数(不含小数点)
C.2
D.3
A
22.char型变量存放的是()。//考查变量类型
A.ASCII代码值
B.字符本身
A.5f
B.if
C.f.5
D._f5
D
12.以下()是正确的常量。
A.E-5
B.1E5.1
C.'a12'
D.32766L
D
13.以下()是正确的变量名。
A.a.bee
B.-p11
C.int
D.p_11
C
14.以下()是正确的字符常量。单引号括起来
A."c"
B.'\\''
C.'W'
D."\32a"
A
15.以下()是不正确的字符串常量。双引号括起来
B.一个C源程序必须包含一个main函数
C.C语言程序的基本组成单位是函数
D.在编译C程序源程序时,可发现注释中的拼写错误
C
8.结构化程序设计的三种基本结构是()。
A.函数结构、分支结构、判断结构
B.函数结构、嵌套结构、平行结构
C.顺序结构、分支结构、循环结构
D.分支结构、循环结构、嵌套结构
C
9.对于C语言源程序,以下叙述错误的是()。
47.下面叙述中,()不是结构化程序设计三种基本结构的共同特点。
A.先判断后执行
B.单入口,单出口
C.程序中没有执行不到的语句
D.无死循环
A
48.结构化程序设计不包括()。
A.最优化
B.自顶而下,逐步细化
C.模块化设计
D.结构化编码
D
49.以下运算符中优先级最高的是()。
A.>
B.||
C.&&
D.+//初等运算符()[] 单目 算术 关系 逻辑(不含!) 赋值 逗号
A.7
B.8
C.9
D.表达式错误
B
64.以下的if语句中,x的值一定被重新赋值的是()。
C.十进制代码值
D.十六进制代码值
C
23.若有定义:intx,a;则语句x=(a=3,a+1);运行后,x、a的值依次为()。
A.3,3//考查逗号表达式及逗号运算符
B.4,4
C.4,3
D.3,4
B
24.若有定义:inta;则语句a=(3*4)+2%3;运行后,a的值为()。
A.12
B.14
C.11
A.a%2==1
B.!(a%2==0)
C.!(a%2)
D.a%2
D
53.若有定义:intx=3,y=4,z=5;则值为0的表达式是()。
A.'x'&&'y'
B.x<=y
C.x||y+z&&y-z
D.!((x<y)&&!z||1)//考查运算符优先级
A
54.若有定义:inta=5,b=2,c=1;则表达式a-b<c||b==c的值是()。
A.1
B.0
C.2//注意运算的不完全性
D.3
B
34.若有定义:inti,j;则表达式(i=2,j=5,i++,i+j++)的值是()。
A.7
B.8
C.9
D.10
B
35.若有定义:inta,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是()。
A.7
B.8
C.9
D.10
B
36.若有定义:intm=5,n=3;则表达式(m+1,n+1,(--m)+(n--))的值是()。
A.1\ddd :表示1到3位八进制数所代表的字符
B.2\xhh表示 1到2位十六进制数所代表的字符
C.3
D.语法错误
A
19.若有定义:inta=2;则正确的赋值表达式是()。
A.a-=(a*3)
B.double(-a)//(double)(-a)
C.a*3
D.a*4=3
C
20.语句x=(a=3,b=++a);运行后,x、a、b的值依次为()。
A.可以有空语句
B.函数之间是平等的,在一个函数内部不能定义其它函数
C.程序调试时如果没有提示错误,就能得到正确结果
D.注释可以出现在语句的前面
D
10.下面关于C语言用户标识符的描述,正确的是()。
A.不区分大小写
B.用户标识符不能描述常量
C.类型名也是用户标识符
D.用户标识符可以作为变量名
D
11.以下()是正确的变量名。
B.x=(y==1)
C.i=float(x)//应改为i=(float)x
D.i%(-3)//%两侧均应为整型数据
C
27.设double型变量a,b,c,e均有值;对代数式(3ae)/(bc),不正确的C语言表达式是()。
A.a/b/c*e*3
B.3*a*e/b/c
C.3*a*e/b*c//改为3*a*e/b/c
A
50.若有定义:intx=3,y=4;则表达式!x||y的值为()。
A.1
B.O
C.3
D.4
A
51.若有定义:inti=7,j=8;则表达式i>=j||i<j的值为()。
A.1
B.变量i的值
C.0
D.变量j的值
C
52.若希望当a的值为奇数时,表达式的值为"真",a的值为偶数时,表达式的值为"假"。则不能满足要求的表达式是()。
C.10AB
D.10AB
B
44.已有如下定义和输入语句:
inta,b;
scanf("%d,%d",&a,&b);//“格式控制”字符串中除了格式说明还有其他字符,则输入//时应在相应位置输入
若要求a、b的值分别为10和20,正确的数据输入是()。
A.1020
B.10,20
C.a=10,b=20
D.10;20
A.6
B.7
C.8
D.9
B
37.已知inta;使用scanf()函数输入一个整数给变量a,正确的函数调用是()。
A.scanf("%d",a);
B.scanf("%d",&a);
C.scanf("%f",&a);
D.scanf("%lf",&a);
D
38.已知doublea;使用scanf()函数输入一个数值给变量a,正确的函数调用是()。
A.3.75
B.3.5
C.3
D.4
A
60.若有定义:inta=1,b=2,c=3,d=4,x=5,y=6;则表达式(x=a>b)&&(y=c>d)的值为()。
A.0
B.1
C.5
D.6
A
61.若有定义:inta=2,b=3;floatx=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值是()。//(float)(a+b)/2=2.5
B.一个实型变量值
C.多个字符
D.一个字符
D
42.若有定义:intx=1234,y=123,z=12;则语句printf("%4d+%3d+%2d",x,y,z);运行后的输出结果为()。
A.123412312
B.12341234123412341231231231212
C.1234+1234+1234
B
31.若有定义:intk,i=2,j=4;则表达式k=(++i)*(j--)的值是()。
A.8
B.12//注意前缀 后缀的区别
C.6
D.9
C
32.设整型变量a为5,使b不为2的表达式是()。
A.b=(++a)/3
B.b=6-(--a)
C.b=a%2//结果为1
D.b=a/2
相关文档
最新文档