C语言程序设计(02600)复习题
《C语言程序设计(第2版)》试题库 期末试卷一

期末试卷一一、单项选择题(每题1分,共45分)1.在计算机系统中,可以执行的程序是()A.源程序B.汇编语言程序C.机器语言程序D.ASCII码2.C语言程序的基本单位是()A.程序行B.语句C.函数D.字符3.下列对C语言程序的书写格式的描述,()是正确的。
A.C语言程序中,每行只能写一条语句B.C语言程序书写时通常采用“缩排”方式C.C语言程序的书写中要求每行都要以分号作结尾D.注释行必须放在程序的头或程序的尾4.启动TC V2.0环境后,打开一个C语言源程序的快捷键是()A.F1 B.F2 C.F3 D.F45.C语言源程序文件file.c经系统编译、连接后,生成的文件名为()A.file.c B.file C.file.obj D.file.exe6.下列选项中,合法的C语言标识符是()A._abc*2 B._ch_er C.a-1 D.a7&b7.以下所列的C语言常量中,错误的是()A.0xFF B.1.2e0.5 C.2L D.’\72’8.以下变量x,y,t均为double类型且已正确赋值,不能正确表示数学式子的C语言表达式是()A.x/y*z B.x*(1/(y*z))C.x/y*1/z D.x/y/z9.下列程序运行后的输出结果是()main(){ int y=3,x=3;printf(“%d\n”,++x+y++);}A.5 B.8 C.7 D.610.若已正确定义x和y为double类型,则表达式x=1,y=x+3/2的值是()A.1 B.2 C.2.0 D.2.511.在C语言中运算对象必须是整型的运算符是()A.% B./ C.= D.*12.若有以下定义:char a; int b; float c;则表达式a*b-c值的类型为()A.int B.char C.double D.float13.下列正确的C语言赋值语句的是()A.x=3,y=5 B.a=b=1 C.i++; D.y=int(x)14.有如下程序段:int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入是()A.10A 20B<CR> B.10 A 20 B<CR>C.10 A20B<CR> D.10A20 B<CR>15.有如下程序,输入数据:12345m678<CR>后,x的值是()#include <stdio.h>main( ){ int x; float y;scanf("%3d%f",&x,&y);}A.12345 B.123 C.45 D.34516.有如下程序,对应正确的数据输入是()#include<stdio.h>main( ){ float a,b;scanf("%f%f",&a,&b);printf("a=%f,b=%f\n",a,b);}A.2.04<CR> B.2.04,5.67<CR>5.67<CR>C.a=2.04,b=5.67<CR> D.2.045.67<CR>17.有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式是()A.132<CR> B.1,3,2<CR>C.a=1,b=3,c=2<CR> D.a=1 b=3 c=2<CR>18.已知字母A的ASCII码是65,以下程序的执行结果是()#include<stdio.h>main( ){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);}A.A,Y B.65,65 C.65,90 D.65,8919.以下程序的执行结果是()#include<stdio.h>main( ){ int a=2,b=5;printf("a=%%d,b=%%d\n",a,b);}A.a=%2,b=%5 B.a=2,b=5C.a=%%d,b=%%d D.a=%d,b=%d20.最适合解决选择结构“若x>0,则y=1;否则y=0;”的语句是()A.switch B.嵌套的if-else C.if-else D.if21.设整型变量x,y和z的值依次为3,2和1,则下列程序段的输出结果是()if(x>y)x=y;if(x>z)x=z;printf(″%d,%d,%d\n″,x,y,z);A.1,1,1 B.1,2,1 C.1,2,3 D.3,2,122.执行下列程序段后,变量x的值是()int a=8,b=7,c=6,x=1;if(a>6) if(b>7) if(c>8) x=2;else x=3;A.0 B.1 C.2 D.323.运行下列程序的输出结果是()main(){ int a1=1,a2=1,a3=1,a4=1;if (a1>0) a3++;if (a1>a2) a3--;else if (a1= =a2) a3++;else a3--;printf(″%d,%d,%d,%d\n″,a4,a3,a2,a1);}A.1,1,1,1 B.1,2,3,4C.4,3,2,1 D.1,3,1,124.执行下列语句后,整型变量x的值是()switch (x=1) { case 0:x=10;break;case 1:switch (x=2) {case1:x=20;break;case2:x=30;}}A.30 B.20 C.10 D.125.以下说法中正确的是()A.continue和break只能用在循环体中B.continue只能用在循环体中C.break只能用在循环体中D.continue只能用在循环体外26.执行下列程序段的输出是()m=8;while (m>=5) m--,--m,n=m--- m;pritnf (″%d,%d″,m,n);A.2, 0 B.5,-1 C.5,0 D.5,127.设整型变量x的值为1,执行下列循环语句后,变量x 的值是()do x++; while (x++<2);A.2 B.3 C.4 D.528.执行下列语句后,变量k的值是()for (k=0;k<=5;k++) do k++;while (k<5);A.5 B.6 C.7 D.829.下列程序段中,不能使变量m的值等于10的程序段是()A.m=0; B.do m=0;while (m++<9); while (m++<10);C.for (m=8;m<10;m++); D.m=0;L:m++;if (m<10)goto L;30.下列语句中不正确的是()A.static int a[5]={1,2,3,4,5};B.static int a[5]={1,2,3};C.static int a[]={0,0,0,0,0};D.static int a[5]={0*5};31.说明:int a[10]; 则对a数组元素的正确引用是()A.a[10] B.a[3.5] C.a(5) D.a[10-10]32.下面程序的运行结果是()main(){int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i>3))%5;printf(“%2d”,a[i]);}}A.-4 0 4 0 4 B.-4 0 4 0 3C.-4 0 4 4 3 D.-4 0 4 4 033.以下程序的输出结果是()main(){int n[2]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+1;printf(“%d\n”,n[1]);}A.1 B.3 C.2 D.434.下面程序的输出是()main(){char s[]=”cat and mouse”;int j=0;while(s[j]!=’\0’) ++j;printf(“%d\n”,j);}A.11 B.0 C.12 D.1335.下面程序的运行结果是()main(){char a[10]=”student”;char b[10]=”boy”;int n;n=strlen(a)+strlen(b);printf(“%d”,n);}A.7 B.10 C.12 D.2036.以下程序的输出结果是()void fun(int a,int b,int c){ a=456;b=567;c=678;}main(){ int x=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}A.30,20,10 B.10,20,30C.456,567,678 D.678,567,45637.在C语言程序中,当调用函数时,下面说法正确的是()A.实参和形参各占一个独立的存储单元B.实参和形参可以共用存储单元C.可以由用户指定实参和形参是否共用存储单元D.前面都不正确38.下列变量中,哪类变量的生存期和作用域是不一致的()A.自动变量B.定义在文件最前面的外部变量C.静态内部变量D.寄存器变量39.C语言中形参的缺省存储类别是()。
《C语言程序设计》复习题

《C语言程序设计》复习题一、填空题1、 C 语言的源程序必须通过编译和链接后,才能被计算机执行。
2、 C 语言的源程序必须通过编译和连接后,才能被计算机执行。
3、C语言中的标示符可分为关键字、拥护标示符和预定义标识符3类。
4、C语言中的标示符可分为关键字、用户标识符和预定义标示符3类。
5、在C语言中,用关键字float 定义单精度实型变量。
6、在C语言中,用关键字double 定义双精度实型变量。
7、在C语言中,用关键字char 定义字符型变量。
8、在C语言的赋值表达式中,赋值好左边必须是变量。
9、设C语言中的一个int型数据在内存中占2个字节,则int型数据的取值范围为-32768--32768 。
10、若有定义语句:int s=6;则表达式s%2+(s+1)%2的值为 1 。
11、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为-60 。
12、若a是int型变量,则执行表达式a=25/3%3后a的值为 2 。
13、在程序运行过程中,其值不能被改变的量称为常量。
14、C程序中定义的变量,代表内存中的一个存储单元。
15、C语言中,int类型数据字符占内存 2 个字节。
16、C语言中,char类型数据占内存 1 个字节。
17、C语言的字符常量是用单引号括起来的一个字符。
18、语句printf(“\n”);的作用是换行输出。
19、10/3的结果是3 。
20、10%3的结果是 1 。
21、C语句的最后用;结束。
22、要使用putchar函数,在#include命令行中应包含的头文件是#include<stdio.h>。
23、要使用getchar函数,在#include命令行中应包含的头文件是#include<stdio.h>。
24、为表示关系|x|≥9;应使用的C语言表达式是x<=-9 || x>=9 。
25、为表示关系|x|≤9;应使用的C语言表达式是x>=-9&&x<=9 。
C语言程序复习题及参考答案

C语言程序设计目录第一章C语言程序设计概述 (1)一、主要内容 (1)二、练习题部分 (1)三、参考答案 (3)第三章数据类型、运算符和表达式 (4)一、主要内容 (4)二、练习题 (5)(一)练习题之数据类型 (5)(二)练习题之运算符和表达式 (8)三、参考答案 (13)(一)练习题之数据类型参考答案 (13)(二)练习题之运算符和表达式参考答案 (14)第四章顺序程序设计 (15)一、主要内容 (15)二、练习题 (15)三、参考答案 (16)第五章选择结构程序设计 (17)一、主要内容 (17)二、练习题 (17)三、参考答案 (22)第六章循环结构 (25)一、主要内容 (25)二、练习题 (25)三、参考答案 (34)第七章数组 (39)一、主要内容 (39)二、练习题 (39)三、参考答案 (49)第八章函数 (54)一、主要内容 (54)二、练习题 (55)三、参考答案 (62)第九章预处理命令 (67)一、主要内容 (67)二、练习题 (67)第十章指针 (69)一、主要内容 (69)二、练习题 (69)三、参考答案 (74)第十一章结构体和共用体 (76)一、主要内容 (76)二、练习题 (76)三、参考答案 (78)第十二章位运算 (82)一、主要内容 (82)二、练习题 (82)第十三章文件 (83)一、主要内容 (83)二、练习题 (83)三、参考答案 (85)第一章C语言程序设计概述一、主要内容c程序基本结构特点函数与主函数1.程序由一个或多个函数组成,函数由函数头和函数体构成。
2.必须有且只能有一个主函数main()3.程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。
程序语句1.C程序由语句组成,用“;”作为语句终止符2./* */部分为注释,不能嵌套,不产生编译代码编译预处理不是C语言的一部分C程序的运行步骤运行一个C程序,从输入源程序开始,要经过编辑源程序文件(•C)、编译生成目标文件(•obj)、连接生成可执行文件(•exe)和执行四个步骤二、练习题部分一、选择题:1、C语言程序编译过程中产生的文件有:()A. 索引文件和文本文件两种B. 目标文件和可执行文件C. 二进制文件一种D. ASCII码文件和二进制文件两种2、以下说法中正确的是: ( )A. C语言程序总是从第一个定义的函数开始执行B. 在C语言程序中,要调用的函数必须在main函数中定义C. C语言程序总是从main函数开始执行D. C语言程序中,main函数必须放在程序的开始部分3、C语言源程序的基本单位是:()A. 函数B. 标识符C. 表达式D. 语句4、以下叙述正确的是:()A) C语言比其他语言高级 B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚、具有其他语言的一切优点5、在一个C语言程序中:()A) main函数必须出现在所有函数之前 B) main函数可以在任何地方出现C) main函数必须出现在所有函数之后 D) main函数必须出现在固定位置6、C++语言中工程文件的扩展名是:。
C语言程序设计复习题及参考答案

C语言程序设计复习题及参考答案━━━━━━━━━━━━━━━━━━一、程序设计共6题(共计120.0分)━━━━━━━━━━━━━━━━━━第1题(20.0分)/*----------------------------------------------------------------------题目:函数fun的功能是:用递归法计算斐波拉契数列中第n项的值。
从第1项起,斐波拉契数列为: 1、1、 2、3、5、8、13、21....例如,若给n输入7,则该项的斐波拉契数值为13.------------------------------------------------------------------------注意:请勿改动程序中的其他内容。
----------------------------------------------------------------------*/#include <stdio.h>long fun(int g){switch(g)/********** Program **********//********** END **********/}void main(){long fib;int n;printf("【Input n:】 ");scanf("%d",&n);fib=fun(n);printf("【fib =】 %d\n",fib);}答案:{case 0: return 0;case 1:case 2 : return 1 ;}return( fun(g-1)+fun(g-2) );第2题(20.0分)/*----------------------------------------------------------------------题目:函数fun的功能是:从3个红球、5个白球、6个黑球中任意取出8个作为一组,进行输出。
(完整版)C语言程序设计+复习题库

(完整版)C语言程序设计+复习题库一、填空1.break语句通常用于switch // 循环中。
2. C 语言对数组下标的引用一般从0 开始。
3. C 语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。
4.C标准库函数中,字符串的处理函数包含在string.h 头文件中,数学函数包含在math.h头文件中。
5.C程序的运行需要经过编译和链接两步进行。
6.C程序中用/**/ 括起来的内容是程序的注释语句。
7.C语言函数是由函数首部和函数体两部分组成。
其中,函数首部包括函数类型、函数名和函数参数。
8.C语言提供的三种逻辑运算符是&,//,!。
9.C语言源程序经过编译后,生成文件的后缀名是 .c 。
10.C语言源程序经过连接后,生成文件的后缀名是 .exe 。
11.C语言中,关系表达式和逻辑表达式的值是1//0 。
12.C语言中的标识符只能由三种字符组成,他们是字母,数字,下划线。
13.C语言中的每条基本语句以;作为结束符,每条复合语句以}作为结束符。
14.C语言中函数返回值的类型是由函数类型决定的。
15.C源程序的基本单位是函数。
16.int a = 2, b = 3; 表达式a > b ? a ++ : ++ b的值为 4 。
17.int x=1,y=1,z=1; x+=y+=z; 则表达式x18.当a=3,b=2,c=1时,表达式f=a>b>c的值是0 。
19.定义一个指针p,它指向一个有6个整型元素的一维数组,定义语句为int *p=a[6] ; 。
20.定义一个指针数组p,它有4个元素,每个指针指向一个整型数据,定义语句为int*p[4]; 。
21.赋值语句是由= 加上一个分号构成。
22.构成数组的各个元素必须具有相同的类型。
23.关系表达式x+y>5的相反表达式为x+y!>5 。
24.函数strlen("1234\0xy")的值为:9 。
C语言程序设计复习参考答案2023年修改整理

第一章【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。
答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。
答:函数首部:void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。
3.标识符是用来标识程序中的某个对象名字的字符序列。
C语言把标识符分为三类,即关键字、预定义标识符、用户自定义标识符。
关于用户自定义标识符的命名C语言规定:(1)所有的用户标识符必须先定义后使用;(2)用户标识符由字母(A~Z,a~z)、数字(0~9)、下划线“_”组成,同时首字符不能是数字;(3)区分大小写;(4)不能用关键字作为用户自定义标识符,通常不使用预定义标识符作为用户自定义标识符。
4.理论上讲,程序开发过程分为四个步骤,分别为:(1)编辑源程序(2)编译源程序,生成目标程序(3)连接目标程序及其相关模块,生成可执行文件(4)运行可执行文件一. 单元练习一.抉择题1.构成C语言程序的基本单位是()。
A.框架 B.预处理C.函数D.语句2.在程序开发过程中,把文本文件格式源程序转化为二进制格式的目标程序的过程称之为()。
A.编辑B.编译C.连接D.运行3.关于主函数,下列说法不正确的是()。
A.一个完整的C语言应用程序有唯一的主函数B.主函数的名称只能是mainC.主函数能够被其他自定义函数调用D.C语言程序的运行从主函数开始,以主函数为核心展开4.关于标识符,下列说法不正确的是()。
四川-C语言程序设计(02600)复习资料

C语言程序设计(02600)复习资料一、单项选择题。
1.下列程序的输出结果是【】main( ){int a=7,b=5;printf(“%d\n”,a=a/b);}A. 7B. 0C. 1D. 22.设整型变量i=4,j=4,则执行语句i=j++,++i后,i和j的值分别是【】A. 5,6B. 6,5C. 4,5D. 5,53.若定义一维数组int a[10],则对第5个元素正确的引用是【】A. *a+5B. a[4]C. a[5]D. &(a+4)4.下列二维数组定义并初始化中,正确的是【】A. int m[2][]={{3,4},{}}B. int m[2][2]={1,2,3,4}C.int m[2][1]={{2},{3},{5}}D.int m[][]={1,2,3,4}5.在C预言中,实现字符串比较的处理函数是【】A. strcpy( )B. strcmp( )C. strlen( )D. strchr( )6.在C语言中,可以输出char型变量x值的库函数是【】A. putchar(x)B. fputc(x)C. getchar(x)D. fopen(x)7.凡是函数中未指定存储类型的局部变量,其隐含的存储类型是【】A. staticB. externC. autoD. register8.已知x=2,y=3,则x和y按位相或的结果是【】A. 0B. 2C. 1D. 39.函数调用时,下列说法正确的是【】A.形参和实参可以同名B.函数间的数据传递不可以使用全局变量C.调用后必须有返回值D.形参和实参不能同名10.在C语言中,决定函数返回值的类型的是【】A.函数形参的类型B.调用该函数时的实参数据类型C.函数定义时指定的类型D.所有函数返回值均未void类型11.已知int a[5]={1,3,5,7,9},*p=a;则下列表达式值为9的是【】A. *(p+4)B. p+4C. *p+4D. a[5]12. C语言源程序文件的后缀名是【】A. .ccB. .cC. .exeD. .h13.在C语言中,合法的字符串常量是【】A. ‘x’B. ”xy”C. {xy}D. ’xy\0’14.下列程序的输出结果是【】main( ){int a=7,b=5;printf(“%d\n”,a=a%b);}A. 2B. 7C. 0D. 115.设整型变量i=4,j=4,则执行语句i=j--,++i后,i和j的值分别是【】A. 4,4B. 4,3C. 5,3D. 5,416.若定义一维数组char b[5],则对数组b元素的正确引用是【】A. b[5]B. &bC. b[3.5]D. b[5-5]17.下列定义语句中,错误的是【】A. char *cB. int n=5;a[n]C. char m[3]=”zz”D. int n=218.在C预言中,实现字符串长度计算的函数是【】A. strchr( )B. strcat ( )C. s trlen( )D. strcmp( )19.已知x=2,y=3,则x和y按位相与的结果是【】A. 0B. 2C. 3D. 120.在C语言中,对函数的描述正确的是【】A.可以嵌套调用B. 可以嵌套定义C.不可以递归调用D.可以递归调用,但不能嵌套调用21.已知int *p,a=5;p=&a;则下面均代表地址的一组选项是【】A. a, pB. *p, &aC. &a, pD. &a, &p22.执行下列程序段后,正确的结果是【】int m,n,x;m=n=0;x=20;if(!m) x+=5;else if(!n) x--;else x-=4;printf("%d",x);A. 24B. 25C. 20D. 1623.执行下列程序段后,正确的结果是【】int sum=1,i;for(i=0;i<=5;i+=2)sum=sum*2;printf("%d,%d",sum,i);A. 2,4B. 4,4C. 8,6D. 8,4二、判断题。
02600C语言程序设计[福建]200701 自学考试真题
![02600C语言程序设计[福建]200701 自学考试真题](https://img.taocdn.com/s3/m/291828e281c758f5f61f67d0.png)
2007年1月高等教育自学考试福建省统一命题考试C语言程序设计试卷(课程代码2600)一、填空题(本大题共10空,每空1分,共10分)请在每小题的空格中填上正确答案。
错填、不填均无分。
1.结构化程序设计所规定的三种基本控制结构分别是结构、选择结构和循环结构。
2.有符号的整型数据(signed int)能表示的最大整数是。
3.设a为int变量,b为float变量,则a+b的运算结果为型数据。
4.设a为int变量,执行a=1/2+1/2;语句后,a的值为。
5.以下程序运行后的输出结果是。
main( ){int a=010,b=2,c;c=a+b;print f(“%d”,c);}6.以下程序运行后的输出结果是。
main( ){char m;m=‘B’+32;print f(“%c”,m);}7.以下程序运行后的输出结果是。
main( ){int a=1,b=3,c=5;if(c=a+b)print f(“yes”);elseprint f(“not”);}8.以下程序段的输出结果是。
char s[]= “\\140\140abc\t”;prnt f(“%d\n”,strlen(s));9.以下程序段的输出结果是。
int a=l,b=2,*p=&a,*q=&b;p=q;*p=3;print f(“%d”,b);10.以下程序段的输出结果是。
struct node{int a;float b;char c[10];}print f(“%d”,sizeof(struet node)) ;二、单项选择题(本大题共25小题.第11—30题每小题1分,第31-35题每小题2分,共30分)在每小题列出的四个备选项中有一个是符合题目要求的。
请将其代码填写在题后的括号内。
错选、多选或未选均无分。
11.下列标识符中可用作C语言用户标识符的一组是【】A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof12.在C语言中,合法的字符常量是【】A.‘\084’ B.‘\x43’ C.‘ab’ D.“\O”13.表示关系X≤Y≤Z的c语言表达式是【】A.(x<=Y)&&(Y<:z) B.(x<=Y)AND(Y<=z)C.(x<=Y<=z) D.(x<=Y)&(Y<=z)14.若t为double类型,表达式t=l,t+5,l++的值是【】A.1B.1.0C.2.0D.415.在C语言中,运算对象必须是整型数的运算符是【】A.% B./ C.%和/ D.}+16.在C语言中,如果下面的变量都是int类型,则输出的结果是【】Sum=pad=5;pAd=sum++,pAd++,++pAd:print f(“%d\n”,pad);A.7 B.6 C.5 D.417.已知在ASCII代码中,字母A的序号为65,以下程序的输出的结果是【】#include<stdio.h>main( ){ char c1=’A’,c2=’Y’;print f(“%d,%d\n”,c1,c2);}A.因输出格式不合法,输出错误信息B.65,90C.A,YD.65,8918.设有说明int(*ptr)[m];其中的标识符ptr是【】A.m个指向整型变量的指针B.指向m个整型变量的函数指针C.一个指向具有m个整型元素的一维数组的指针D.具有m个指针元素的一维指针数组,每个元素都只能指向整型量19.语句while(!E);中的条件!E等价于【】A.E==0 B.E!=1 C.E!=O D.E=l20.以下函数调用语句中含有的实参个数为【】func((exp1,exp2),(exp3,exp4,exp5));A.1 B.2 C.4 D.521.设有以下语句:char a=3,b=6,C;c=B^b<<2;则c的二进制值是【】A.00011011 B.00010100C.00011100 D.0001100022.设有语句int a=3;则执行了语句a+=a-=a*a;后,变量a的值是【】A.-12 B.0 C.3 D.923.在C语言中,下列描述正确的是【】A.不能使用do—while语句构成的循环B.do-while语句构成的循环必须用break语句才能退出C.do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D.do-while语句构成的循环,当while语句中的表达式值为零时结束循环24.以下程序的输出结果是【】#include<stdio.h>#include<string.h>main(){char str[12]={‘8’,‘t’,‘r’,‘i’,‘n’,‘g’,‘、0’,‘a’}; printf(“%d\n”,strlen(str));}A.6 B.7 C.8 D.1225.以下程序的输出结果是【】#include<stdio.h>main(){int a=2,c=5;print f(“a=%%d,b=%%d\n”,a,c);}A.a=%2,b=%5 B.a=2,b=5C.a=%%d,b=%%d D.a=%d,b=%d26.以下程序的输出结果是【】#include<stdio.h>main(){int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d\n”,a,b);}A.6,l B.6,0 C.2,1 D.2,027.C语言中形参的缺省存储类别是【】A.自动(auto) B.静态(static)C.寄存器(register) D.外部(extern)28.设有以下语句(其中0≤i<10),则不能对a数组元素的正确引用是【】int a[10]={0,l,2,3,4,5,6,7,8,9},*p=a;A.a[p-a] B.*(&a[i])C.p[i] D.*(*(a+i))29.以下程序的输出结果是 l【】#include<stdio.h>union pw{int i;char ch[2];}a;main( ){a.ch[0]=13;a.ch[1]=0;print f(”%d\n”,a.i);}(注意:ch[0]在低字节,ch[1]在高字节。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计一、单项选择题1.一个C语言程序总是从()位置开始执行。
【】A) 第一个函数B) 程序的第一行C) main( ) D) 第一条执行语句2.字符‘m’的ASCII码为109,有如下定义char a,则执行语句a=‘9’+‘m’-‘8’后,【】变量a中的值为()。
A) a B) n C)m D) 1093.下面的程序运行时输入数据:7,32↙(↙表示回车),输出结果为()。
【】main(){ int i,j;scanf(“%d%d”,&i,&j);printf(“%d”,i+j);}A) 39 B)7 C) 32 D) 不确定值4.设有int a=3,b=2,c=1,d=5,m=4,n=4;执行(m=a<b)||(n= =c>d)后n的值为()。
【】A) 1 B) 2 C) 3 D) 45.为表示关系x≥y≥z,应使用C语言表达式()。
【】A) (x>=y)&(y>=z) B) (x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&&(y>=z)6.指出下面哪项不是合法的变量名()。
【】A)_ANT B)4ant C)_ant_5_8 D)ant907.若运行时给变量m输入11,则以下程序的运行结果是()。
【】main(){ int m,n;scanf(“%d”,&m);n=m>12 ? m-- : ++m;printf(“%d,%d\n”,m,n);}A) 12,12 B) 11,11 C)11,12 D) 12,118.以下程序的运行结果是()。
【】main(){int s=9; char grade;switch(s){case 9 : grade='A';case 8 : grade='B';case 7 : grade='C';break;case 6 : grade='D';}printf("%c\n",grade);}A) A B) B C) C D)D9.设int k=4;有以下程序段,描述中正确的是()。
【】dok=k*2;while(k=0)A)while循环执行5次B)循环体语句(k--)执行一次C)循环体语句(k--)一次也不执行D)循环是无限循环10.以下程序的执行结果是()。
【】main( ){ int i,sum=0;for(i=1;i<=3;sum++) sum+=i;printf(“%d\n”,sum);}A) 3 B) 6 C) 0 D) 死循环1.在一个C语言程序中,下列不合法的定义是()。
【】A)int flag B) float _flag C) int flag_5 D) float 5_flag2.已知字符‘B’的ASCII码是66,变量ch是字符型,则执行语句【】ch = ‘5’ + ‘A’–‘3’ 后,ch中的值是()。
A) 65 B) 66 C) 67 D) 一个不确定的值3.下面的程序运行时输入数据:12,13↙(↙表示回车),输出结果为()。
【】main(){int n,m;scanf(“%d%d”,&n,&m);printf(“%d”,n+m);}A) 11 B)12 C) 13 D) 不确定值4.下列运算符中,运算优先级按由高到低的依次是()。
【】A) !> && B)> && !C) && !> D)!&& >5.有如下定义:float a; double b; char c; int d;则表达式:c*d+b-a值的数据类型为()。
【】A) int B) char C)float D) double6.若有以下程序段,执行后输出结果是()。
【】main(){ float x=8.4; int y;y=(int)x;printf(”x=%.1f,y=%d",x,y);}A) x=8,y=8.4 B) x=8,y=8 C) x=8.4,y=8 D) x=8.4,y=8.47.设ch是char类型的变量,其值是‘P’,则以下表达式的值是()。
【】ch=(ch>=‘A’&&ch<=‘Z’)?(ch+1):chA) Q B) P C) q D) p8.有如下程序,该程序的输出结果是()。
【】main(){ int a=0,i=3,m=3;switch(a){case 0: i++;case 1: i++;case 2: m++;i++; break;}printf("%d, %d\n",i,m); }A) 4,4 B) 6,6 C) 4,6 D) 6,49.以下程序运行结果是()。
【】main(){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf(“%d \n”,i);}A) 3 B) 2 C) 1 D) 010.执行语句for(i=1;i<50;i++ ) ;后变量i的值是()。
【】A)49 B)50 C)51 D)5211.以下程序运行后的结果是()。
【】main(){ int x[10]={0},i,k=3;for(i=0;i<k;i++)x[i]=x[i]+1;printf("%d\n",x[k]);}A) 0 B) 1 C) 2 D) 不确定的值12.若有以下说明:【】int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是()。
A)a['d'-c] B)a[4] C)a['d'-'c'] D)a[g-c]13.若有语句:int a=4,*p=&a;下面均代表地址的一组选项是()。
【】A) a,p,&*a B) *&a,&a,*p C) *&p,*p,&a D) &a,p,&*p14.以下程序运行后的输出结果是()。
【】int func(int a,int b){ return(a+b); }void main(){ int x=1,y=2,z=3,sum;sum=func(func(x,y),z);printf("%d\n",sum);}A)1 B) 2 C) 3 D) 615.在C语言中,定义如下结构体类型:【】struct data{ int count;char sex;float score;}var;则结构体类型变量var占用内存的字节数为()。
A)1 B)4 C)9 D)5程序综合分析题16.已知‘P’字符的ASCII码是80,下面程序的运行结果是()。
【】main(){char s='P';s = s +1;printf("%c %c %d ", s,s+1,s);}17.执行下列程序后,变量m的正确结果是多少()。
【】main(){int m=1;switch(m){case 1:m+=1;case 2:m+=1; break;case 3:m+=1; break;default:m+=1;}printf("%d\n",m);}18.写出下列程序的运行结果()。
【】main( ){int i=0;for (;i<6;i++)if (i%3==0){continue;}else{printf(“%d”,i);}}19.写出下列程序的运行结果()。
【】main(){int x=0,i=1,s=0;do{x++;i=i*x;s+=i;} while (x<3);printf("%d\n",s);}20.写出下列程序的运行结果()。
【】main(){int i,j,sum=0;for (i=3;i<=10; i+=3 )for (j=6; j<=8; j+=2 )sum++;printf ("%d\n",sum);}21.写出下列程序的运行结果()。
【】main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},i,s=0;for (i=1;i<=6;i++)if (a[i]%3!=0)s=s+a[i];printf("%d\n",s);}17.写出下列程序的运行结果()。
【】main(){int x=3,y;if (x<0) y=-1;else if (x>0) y=1;else y=0;printf("%d,%d",x,y);}18.写出下列程序的运行结果()。
【】main(){int i;for(i=1;i<5;i++){ if(i%2){ printf("*");continue; }printf("#");}printf("\n");}19.写出下列程序的运行结果()。
【】main(){int x=0,a=0,b=0;switch(x){case 0: b++;case 1: a++;break;case 2: a++;b++;}printf("%d,%d\n",a,b);}20.写出下列程序的运行结果()。
【】main( ){int i=1;for (;i<10;i++)if (i%4==0){break;}else{printf("%d ",i);}}21.写出下列程序的运行结果()。
【】main(){int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};int i=0,j=0,sum=0;for(i=2,j=0;i>=0;j++,i--)sum=sum+a[j][i];printf("%d\n",sum);}22.写出下列程序的运行结果()。
【】int fun(int a, int b){int c;a+=a; b+=b;c=a+b;return (c);}main(){int m=2,n=4;m=fun(m,n);printf("%d\n",m);}23.写出下列程序的运行结果()。
【】main(){int a []={5,6,7,8,9,10},*p;p=a;p++;*(p+2)=2;printf ("%d,%d\n",*p,*(p+2));三、编程序题24.从键盘输入一个正整数,编程判断该正整数是否能被3整除。