C语言程序的设计

上传人:仙*** 文档编号:85752734 上传时间:2022-05-06 格式:DOC 页数:21 大小:89KB
返回 下载 相关 举报
C语言程序的设计_第1页
第1页 / 共21页
C语言程序的设计_第2页
第2页 / 共21页
C语言程序的设计_第3页
第3页 / 共21页
点击查看更多>>
资源描述
. . . C语言程序设计1. 单项选择题60道1以下关于C语言程序的说法中正确的为 。a 计算机不能直接执行 b 计算机能直接执行c 编辑好就可以执行 d 编译好就可以执行2以下不属于C语言特点的为 。a 简洁 b 运算符丰富 c 具有结构化的控制语句 d 语法限制严格。3C语言的程序必须包含 。 a 语句 b 变量声明 c 函数 d 宏定义4以下不属于算法特点的为 。 a 有穷性 b 无穷性 c 有效性 d 确定性5算法的三种基本结构除了顺序结构、选择结构外,还有 。 a 循环结构 b 递归结构 c 调用结构 d 跳转结构6在下列关于C语言常量的说法中正确的为 。 a 没有数据类型 b 有数据类型 c 必须有名字 d 不能输出7在下列关于C语言变量的说法中正确的为 。a 必须先定义后使用 b 不必先定义后使用 c 只能在函数外修改变量的值 d 只能在函数修改变量的值8以下属于整型常量不正确写法的为 。 a 123 b 0123 c 0x123 d 1,2309以下关于整型量所占存字节数的正确说法为 。a 所有的整型量都占2个字节b 基本整型量占2个字节,长整型量占4个字节c C语言标准没有规定整型量占多少个字节d 使用sizeof可以确定整型量占几个字节10以下正确声明整型变量的为 。 a int 1x, 2x, 3x; b int x1, x2, x3; c int 1x, int 2x, int 3x; d int x1, int x2, int x3;11以下关于实数类型常量的说法中,正确的为 。a 实数类型常量只能用小数形式表示b 实数类型常量只能用指数形式c 实数类型常量既可以用小数形式表示,也可以用指数形式表示d 1.0不是实数类型常量,而是整数类型常量12以下属于实型常量不正确写法的为 。 a 0.123 b 1.23e-1 c .123 d 123e213下列不合法的字符常量为 。 a a b n c a d 14假设一个字符类型的量占一个字节,则字符串abc所占的字节数为 a 1 b 2 c 3 d 415设整型变量a为5,使b不为2的表达式是 。 a b=a/2 b b=6- c b=a%2 d b=a3?2:116设有说明doubleN;其中标识符p1是 。 a N个指向double型变量的指针。 b指向N个double型变量的函数指针。 c 一个指向由N个double型元素组成的一维数组的指针。 d 具有N个指针元素的一维指针数组,每个元素都只能指向double型量。17以下程序的输出结果是 。 char str15=hello!;printf%dn,strlen; a 15 b 14 c 7 d 618选出下列标识符中不是合法的标识符的是 。 a hot_do b cat1 c _pri d 2ab19为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与 组成配对关系。a 缩排位置相同的if b 在其之前未配对的ifc在其之前未配对的最近的ifd 同一行上的if20以下程序的输出结果是。 int x=10,y=10; printf; a 10 10 b 9 9 c 9 10 d 10 921设A为存放短整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为 。a P+i*2 bP+*2 c P+ dP+i22以下程序的输出结果是 。 int a=5;float x=3.14;a*=x*;printf%fn,a;a62.000000 b 62.800000 c 63.000000 d 6223下列描述中不正确的是 。a字符型数组中可能存放字符串。b可以对字符型数组进行整体输入、输出。c可以对整型数组进行整体输入、输出。d不能在赋值语句过赋值运算符=对字符型数组进行整体赋值。24设有如下定义: int x=10,y=3,z;则语句printf%dn,z=; 的输出结果是 。a 1 b 0 c 4 d 325定义如下变量和数组:int i; int x33=1,2,3,4,5,6,7,8,9;则语句fori=0;i printf; 的输出结果是 。a 1 5 9 b 1 4 7 c 3 5 7 d 3 6 926以下对二维数组a进行正确初始化的是 a int a23=1,2,3,4,5,6; b int a 3=1,2,3,4,5,6;c int a2 =1,2,3,4,5,6; d int a2 =1,2,3,4;27设有如下定义: char *aa2=abcd,ABCD; 则以下说法中正确的是 。a aa数组成元素的值分别是abcd和ABCDb aa是指针变量,它指向含有两个数组元素的字符型一维数组c aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址d aa数组的两个元素中各自存放了字符a和A的地址28下列程序的输出结果是 。char *p1=abcd, *p2=ABCD, str50=xyz;strcpystr+2,strcat;printf;a xyabcAB b abcABz c ABabcz d xycdBCD29下列程序的输出结果是 。int a5=2,4,6,8,10,*P,* *k;p=a; k=&p;printf%d,*;printf;a 4 4 b 2 2 c 2 4 d 4 630不能把字符串:Hello!赋给数组b的语句是 。a char b10=H,e,l,l,o,!; b char b10; b=Hello!;c char b10; strcpy;d char b10=Hello!;31以下选项中属于C语言的数据类型是 。a 复合型 b 双精度型 c 逻辑型 d 集合型32以下说法中正确的是 。a C语言程序总是从第一个的函数开始执行b在C语言程序中,要调用的函数必须在main函数中定义c C语言程序总是从main函数开始执行d C语言程序中的main函数必须放在程序的开始部分33下列描述中不正确的是 。a 字符型数组中可能存放字符串。b 可以对字符型数组进行整体输入、输出。c 可以对整型数组进行整体输入、输出。d不能在赋值语句过赋值运算符=对字符型数组进行整体赋值。34若已定义:int a9, *p=a;并在以后的语句中未改变p的值,不能表示a1地址的表达式为 。a p+1 b a+1 c a+ d +p35设有如下定义: int x=10,y=3,z; 则语句printf%dn,z=; 的输出结果是 。a 1 b 0 c 4 d 336定义如下变量和数组: int i, x33=1,2,3,4,5,6,7,8,9;则下面语句fori=0;i printf; 的输出结果是 a 1 5 9 b 1 4 7 c 3 5 7 d 3 6 937以下语句的输出结果是。int x=10,y=10;printf; a 10 10 b 9 9 c 9 10 d 10 938以下语句的输出结果是 。int a=-1,b=4,k;k=+a&!b-;printf;a 1,0,4 b 1,0,3 c 0,0,3 d 0,0,439下列程序的输出结果是 。char *p1=abcd, *p2=ABCD, str50=xyz;strcpystr+2,strcat; printf;a xyabcAB b abcABz c ABabcz d xycdBCD40执行下面的程序后,a的值是 。#define SQR X*Xmain int a=10,k=2,m=1;a/=SQR/SQR;printf; a 10 b 1 c 9 d 041表达式:10!=9的值是 。a true b 非零值 c 0 d 142若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是 。a i= *p; b *p=*&j; c i=&j; d i=* *p;43在C程序中有如下语句:char *func; 它是 。 a 对函数func的定义。 b对函数func的调用。 c 对函数func的原型说明。d不合法的。44设int x=1,y=1;表达式!x+ | y-的值是。a 0 b 1 c 2 d -145main int n; ,n*2; printf; 此程序的输出结果是。a 30 b 24 c60 d 4846若有如下定义,则是对数组元素的正确的引用。 int a10 , *p ; p=a ; p=a ; p=a ; p=a ; a *&a10 b a11 c* d *p47设整型变量n的值为2,执行语句n+=n-=n*n;后,n的值是。 a 0 b 4 c - 4 d 248以下不能正确定义二维数组的语句是。 a int a22=1,2; b int a2=1,2,3,4; cint a22=1,2,3; d int a2=1,2,3,4;49程序段的功能是将变量 u 、s中的最大值赋给变量t 。 a ifs t=u;t=s; b t=u; if t=s; c ifs t=s;else t=u; d t=s; if t=u;50下列程序段的输出结果是 。void main int k;for k=1;k if printf;else printf ; a #*#* b *#*# c # d以上都不对51设变量定义为 int a3=1,4,7,*p=&a2, 则*p的值是。 a &a2 b 4 c 7 d 152能正确表示a和b同时为正或同时为负的逻辑表达式是。a a=0|b=0&a0 |b b =0 & b=0&a0 & bc 0 &a+b d a*b053若变量c为char类型,能正确判断出c为小写字母的表达式是。a a=c =a | cc a and =c d =a & c54设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是。a printf bprintfc printf d printf;55下列关于指针定义的描述,是错误的。 a 指针是一种变量,该变量用来存放某个变量的地址值的。 b 指针变量的类型与它所指向的变量类型一致。 c 指针变量的命名规则与标识符相同。 d 在定义指针时,标识符前的*号表示后面的指针变量所指向的容。56C语言中以追加方式打开一个文件应选择参数。 ar b w crb da57Break语句的正确的用法是。 a无论在任何情况下,都中断程序的执行,退出到系统下一层。 b在多重循环中,只能退出最靠近的那一层循环语句。 c跳出多重循环。 d只能修改控制变量。58在函数中默认存储类型说明符的变量应该是存储类型。 a 部静态 b外部 c 自动 d寄存器59C语言用表示逻辑真值。 a true b t或y c 非零 d 0 60运算符的优先级最高。 a b += c?: d +2. 填空题60道1实型变量的类型说明符有:_、_。2表达式7+82 & 25 %5的结果是_。3C语言中数组的下标下限为_。4数组 int a34;共定义了_个数组元素。5在C语言程序设计中,正确的标识符是由_组成的。6设x=4,y=+;那么y的值为_,表达式执行后,变量x的值为_。7一个变量的指针是指_。8能够构成一个数组,其元素满足的特点是_,构成结构体的成员可以是_。9运算符 % + = 按照优先级从高到低排列顺序为_。10C程序中符号 /*/ 所起作用是_。11写出下面表达式的值 3*5/7+7%3_ x=2 ; y=4; +y _ 3+4=7-10_ 34 ? 3%2: 1 _ x=2,y=2;+x|+y_ x=3 ; x+=x-=2 _12在C语言程序中,对文件进行操作首先要_;然后对文件进行操作,最后要对文件实行_操作,防止文件息的丢失。13对字符串进行操作的函数有_等。14设p=30,那么执行q=后,表达式的结果q为_,变量p的结果为_。若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是_。15以下程序运行后的输出结果是_。该程序的功能是_。main int x=10,y=20 ,t=0;if t=x; x=y; y=t;printf; 16若fp已正确定义为一个文件指针,d1.dat为二进制文件,请填空,以便为读而打开此文件:fp=fopen;。17下面程序是计算10个整数中奇数的和及其偶数的和,请填空。#include main int a,b,c,i;a=c=0;fori=1;i scanf;canf;_;_;_;printf;printf;18下面程序的功能是:输出 100以不包含100能被 3整除且个位数为 6的所有整数,请填空。Includestdiohmain int i, j;forif printf; 19在存中存储A要占用_个字节,存储A要占用_字节。20符号常量的定义方法是_。21能表述20x30或x-100的C语言表达式是_。22结构化程序设计方法规定程序或程序段的结构有三种:顺序结构、_和_。23C语言共提供了三种用于实现循环结构的流程控制语句,它们是_、_和_。24设有定义语句static int a34=1,2,3,则a11值为_,a21的值为_。25用把一些语句括起来称为_语句。26C语言编绎系统在判断一个量是否为真时,以0代表假,以_代表真。27C语言中的实型变量分为两种类型,它们是_和_。28C语言中的标识符只能由三种字符组成,它们是_、_和_。29若有定义:char c=010;则变量c中包含的字符个数是_。30C语言提供的三种逻辑运算符是_、_、_。31设y为int型变量,请写出描述y是奇数的表达式_。32在C语言中,二维数组元素在存中的存放顺序是_。33若自定义函数要求返回一个值,则应在该函数体中有一条_语句,若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说明符_。34函数中的形参和调用时的实参都是数组名时,传递方式为_,都是变量时,传递方式为_。35C语言从源程序的书写到上机运行输出结果要经过_四个步骤。36C语言的表达式与语句的区别在于_。37C语句_ 输入、输出语句。38结构化程序的编写有_三种程序结构。39表达式10/3*9%10/2的值是_。40设有int x=2,y说明,则逗号表达式y=x+5,x+y的值是_。41设有int x=1,则x0?2*x+1: 0表达式的值是_。42变量Y满足以下两条件中的任意一个:能被4整除,但不能被100整除;能被400整除。请用逻辑表达式表示所给条件。_43逻辑运算符&、|、 !中的优先级是_。44在C语言中,字符串常量是用一串字符。45若有说明和语句:int a=25,b=60;b=+a;则b的值是。46若int x=5;whilex0printf;的循环执行次数为。47若有int a5,*p=a;则p+2表示第个元素的地址。48若有说明和语句:int a=5,b=6,y=6;b-=a;y=a+则b和y的值分别是、。49已知整型变量a=3,b=4,c=5,写出逻辑表达式a|b+cc&b-c的值是。50C语言源程序文件的扩展名是 _,经过编译后,生成文件的扩展名是_,经过连接后,生成文件的扩展名是_。51把a,b定义成长整型变量的定义语句是_。52设x和y均为整型变量,且x=3,y=2,则1.0*x/y表达式的值为_。53已有定义:float x=5.5;则表达式:x=x+2的值为_。54 C语言中,变量的存储类别共有四种,即_和寄存器型。55设有int x=1,则x0?2*x+1: 0表达式的值是_。56C语言中基本的数据类型有:_、_、_。57符号a和a的区别是_。58有如下语句:char A =I am a student; 该字符串的长度是_,A3= _。59共用体和结构体的定义格式类似,不同点是。60下列程序的输出结果是_。int ast *cp=x+y; *dp=x-y; main int a=4,b=3,c,d;ast;printf; 3. 阅读程序题50道1float f=3.1415927;printf; 则程序的输出结果是 。2int x=6, y=7; printf; printf; 程序的输出结果是 。3a=3; a+=a?a:1; printf; 结果是 。4for a=1,b=1;a if=20 break;ifb+=3; continue;b-=5; 程序的输出结果a的值为 。5int y=1, x, *p, a =2,4,6,8,10;p=&a1;forx=0;xy + = * ;printf; 程序的输出结果y的值是 。6main int a5=2,4,6,8,10,*P,* *k;p=a; k=&p;printf%d,*;printf; 程序的输出结果是 。7mainint a,b;for a=1,b=1;a if=20 break;ifb+=3; continue; b-=5; 程序的输出结果a的值为 。8写出下列程序的运行结果。 fun ifb return ; Else return ; main int x=3,y=8,z=6,r; r=funfun,2*z; printf; 9写出下列程序的运行结果。 main int n; Forn=3; n if break; Printf; 10写出下列程序的运行结果。 #include stdio.h main int a=1,2,3,-4,5; int m,n,*p; p=&a0; p=&a0; m=*; n=*; printf; 11main int a=8 , b=1;a=a+b;b=a*b;printf; 该程序的运行结果是_。12main int i,num5;fori=0;i numi=i*10 - 2;printf; 该程序的运行结果是_。13main float c,f;c=30.0;f=/5+32;printf; 该程序的运行结果是_。14main int a=6095 , b ;b=a%1000 ;printf ; 该程序的运行结果是_。15# include stdio.hmain int a=8,2,9,4,1, *p; p=a; *+=2; printf%d, %d , *p, *;该程序的运行结果是_。16main int x=10,y=10; printf; 该程序的运行结果是_。17main int j , k , p, s; s=0 ; for j=1; j p=1; fork=1; k p=p*k; s=s+p; printf; 该程序的运行结果是_。18# include stdio.hmain int a=1,2,3,4,5, *p; p=a; *+=2; printf%d, %d , *p, *; 该程序的运行结果是_。19main int a=2,4,6,8,10; int y=1,x,*p; p=&a1; forx=0;x y + =*; printf; 该程序的运行结果是_。20main int a5, k; fork=0;k ak=10*k ; printf ; 该程序的运行结果是_。21int *p,i; i=100; p=&i; i=*p+10; 执行完上面的语句段后, i的值是 _ 22int A,B,C,m=1,n=0; A=?- -m:+n; B=+m; C=n-; 执行完上面的语句段后,A的值为B的值为C的值为23#include void f if 0 printf; f; main f; 该程序的运行结果是_。24main int i; fori=3;i if continue; else printf; 该程序输出的结果是_25main int x; x=3; do printf; while; 该程序运行的结果是_26x=1 ; sum=1 ; for x=1 ; x sum=sum*x;上面的程序段实现的功能是:_;其运行结果为_。27#include int f static int s = 1; s = s * n; return s;main int i;for i = 1; i printf%dn, f;运行结果为_。28main int i=3,*p1;int a3=15,30,45,*p2;p1=&i; p2=a;p1=p2+2;printf; 程序运行结果是:。29main int a=10,b=4,c=3; if a a=b; if a a=c; printf;程序运行结果是:。30main int y=9; for 0;y- if printf ;continue;程序运行结果是:。31 main int x,y; for y=1,x=1;y if =10 break; if x+=5;continue; x-=3; printf ;程序运行结果是:。32main static int a3=9,7,5,3,1,2,4,6,8; int i,j,s1=0,s2=0; i,j,s1=0,s2=0; for i=0;i for j=0;j if s1=s1+aij; if s2=s2+aij; printf ;程序运行结果是:。33main static char a=*,*,*,*,*; int i,j,k; for i=0;i printf ; for j=0;j printf ; for k=0;k printf ; 程序运行结果是:。34int fac static int f=1; f=f*n; return;mainint i;for i=1;i printf %d!=%dn,i,fac;35mainint a=2,b=3,c; c=a; if b c=1; else if c=0; else c=-1; printf ; 程序运行结果是:。36mainint a=2,b=7,c=5;switch 0 case 1: swithch b case 1:printf;break; case 2:printf;break; case 0: switch case 0:printf;break; case 1:printf,break; default:printf;break; default:printf; printf ;程序运行结果是:。37#include main int i;for i=1;i switch case 0:printf;break; case 1:printf;break; default:printf; case 2:printf ; 程序运行结果是:。38main int i,b,k=0;for i=1;ib=i%2;while =0 k+; printf ; 程序运行结果是:。39 #include main char ch7=12ab56;int i,s=0;for =0&chi s=s*10+chi-0; printf ;程序运行结果是:。40main int a=2,i;for i=0;i printf %4d,f;f int b=0;static int c=3; b+;c+; return;程序运行结果是:。41#include stdio.hmain int x=3; switch case 1: case 2:printfx; case 3:printf; case 4: case 5:printf3n; default:printf; 程序运行结果是:。42main int a=1,b=1,c=1;printfa+=b+=+c;printf;printf;printf; 程序运行结果是:。43main int y=9,k=1; for0;y-ifprintf;continue; k+; printf
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!