C语言程序设计_第一阶段练习

合集下载

C语言程序设计第1阶段练习题

C语言程序设计第1阶段练习题
B. 3
C. 18
D. 21
20. 设有如下程序段,其结果是( )。
int a=100,b=100;
for(;a!=b;++a,b++ )
printf(“---\n”);(2分)
A.输出---
B.输出100行---
C.死循环
D.该for循环一次也不执行
二 填空题 (共5题 ,总分值30 )
21.
以下程序实现求100~200,400~600间的全部素数,并以10个数一行的格式输出。
D. a=(a/100+0.5)*100.0
7. 设x和y均为int型变量,则执行下面的循环后,y值为( )。
for (y=1,x=1;y<=50;y++)
{ if ( x>=10) break;
if ( x%2==1) { x+=4;continue;}}(2分)
A. 2
B. 4
C. 6
D. 8
8. 以下不符合C语言语法的赋值表达式是( )。 (2 分)
int k=-1;
printf("%d,u%\n",k,k);(2分)
A. -1,-1
B. -1,65536
C. -1,32768
D. -1,65535
13. 以下程序输出的结果是( )。
#include<stdio.h>
main()
{int i=0,j=0,a=6;
if((++i>0)||(++j>0))a++;
}
解析过程:
27.答案:#include"stdio.h"
main()

C语言程序设计基础试题及答案

C语言程序设计基础试题及答案

第一部分C语言基础一、选择题1.以下正确的C语言标识符是A.%X B.a+b C.a123 D.test2.已定义int a,b;则以下不正确的C语句是A.a=5; B.b/=2; C.a+=1.75; D.b&&=a;3.若x、i、j和k都是整型变量,则执行下面表达式后x的值为x=i=4,j=16,k=32A.4 B.16 C.32 D.524.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符A.必须是字母B.必须为下划线C.必须为字母或下划线D.可以是字母、数字、下划线中的任一字符5.下面正确的字符常量是A.“c” B.’\\”C.‘w’D.”6.设int a=2,b=0,c;则执行语句c+=b&&a--后, c的结果为 ;A.0,1 B.1,0 C.2,0 D.不确定7. 以下不正确的C语言标识符是A intB a_1_2C ab1exeD _x8.以下是正确的C语言标识符是 ;A defineB _123C %dD \n9.下列四组字符串中都可以用作C语言程序标识符的一组是 ;A printB i\amC PxqD str_l_3d one_half My->book Cpp••• oodbs tart$it line pow10.下面各选项组中,均是C语言关键字的组是 ;A auto,enum,includeB switch,typedef,continueC signed,union,scanfD if,struct,type11.下列不属于C语言关键字的是 ;A defaultB registerC enumD external12.C语言程序从main函数开始执行,所以这个函数要写在 ;A 程序文件的开始B 程序文件的最后C 它所调用的函数的前面D 程序文件的任何位置13.下列关于C语言的叙述错误的是A 大写字母和小写字母的意义相同B 不同类型的变量可以在一个表达式中C 在赋值表达式中等号=左边的变量和右边的值可以是不同类型D 同一个运算符号在不同的场合可以有不同的含义14.在C语言中,错误的int类型的常数是 ;A 32768B 0C 037D 0xAF15.将字符g赋给字符变量c,正确的表达式是 ;A c=\147B c="\147"C c=’\147’16.下列转义字符中错误的一个是 ;A ’\000’B ’\0014’C ’\x111’D ’\2’17.将空格符赋给字符变量c,正确的赋值语句是 ;A c=’\0’B c=NULLC c=0D c=3218.已知:char a=’\70’;则变量a中 ;A 包含1个字符B 包含2个字符C 包含3个字符D 说明非法19.字符串"\"EOF\n=-\61\""的长度是 ;A 8B 9C 14D 非法字符串20.字符串""的长度是 ;A 0B 1C 2D 非法字符串21.已知:char a;int b;float c;double d;执行语句"c=a+b+c+d;"后,变量c的数据类型是 ;A intB charC floatD double22.温度华氏和摄氏的关系是: C=-F-32;已知:float C,F;由华氏求摄氏的正确的赋值表达式是 ;A C=5/9F-32B C=5F-32/9C C=5/9F-32D 三个表达式都正确23.逗号表达式"a=35,a4,a+15"的值是 ;A 15B 60C 30D 不确定24.已知 int x=1,y=1,z=1;表达式"x+++y+++z++"的值是 ;A 3B 4C 5D 表达式错误25.用十进制表示表达式"12|012"的值是A 1B 0C 12D 1426.已知int x=1,2,3,4;变量x的值是 ;A 1B 2C 3D 427.表达式sizeofdouble是 ;A 函数调用B double型表达式C int型表达式D 非法表达式28.C语言程序的执行,总是起始于 ;A 程序中的第一条可执行语句B 程序中的第一个函数C main函数D 包含文件中的第一个函数29.下列说法中正确的是 ;A C程序书写时,不区分大小写字母B C程序书写时,一行只能写一个语句C C程序书写时,一个语句可分成几行书写D C程序书写时每行必须有行号30.下面对C语言特点,不正确描述的是 ;A C语言兼有高级语言和低级语言的双重特点,执行效率高B C语言既可以用来编写应用程序,又可以用来编写系统软件C C语言的可移植性较差D C语言是一种结构式模块化程序设计语言31.C语言源程序的最小单位是 ;A 程序行B 语句C 函数D 字符32.以下四项中属于C语言关键字的是 ;A CHARB defineC unsignedD return33.十进制数2403转换成十六进制数为 ;A 963B 369C 953D 35934.二进制数00110101转换成八进制数是 ;A 055B 065C 056D 15235.计算机内部运算使用的数是 ;A 十进制数B 十六进制数C 二进制数D 八进制数36.一个字长的二进制位数是 ;A 2个BYTE,即16个bitB 3个BYTE,即24个bitC 4个BYTE,即32个bitD 随计算机系统不同而不同37.在C语言系统中,假设int类型数据占2个字节,则double、long、unsigned int、char类型数据所占字节数分别多少;A 8,2,4,1B 2,8,4,1C 4,2,8,1D 8,4,2,138.下面程序段执行结果是;int i=5,k;k=++i+++i+i++;printf"%d,%d",k,i;A 24,8B 21,8C 21,7D 24,7三、上机操作题1.分析程序并上机操作;下列程序的运行结果是什么main{int x=5;int y=10;printf“%d\n”,x++;printf“%d\n”, ++y;}2.从键盘上输入学生5门功课的成绩,计算出总成绩和平均成绩并输出;1.C2.D3.C4.C5.C6.D7.A8.B9.A 10.B 11.D 12.D 13.A 14.A 15.C 16.A 17.D 18.A 19.B 20.A 21.C 22.B 23.C 24.A 25.A 26.D 27.C 28.C 29.C 30.C 31.B 32.C 33 A 34 B 35 C 36 A 37 D 38B。

国家开放大学C语言程序设计章节测试参考答案

国家开放大学C语言程序设计章节测试参考答案

国家开放大学《C语言程序设计》章节测试参考答案第一章C语言概述自测练习一:C语言字符集自测练习1.在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。

(√)2.在C语言字符集中,一个大写英文字母和它的小写英文字母被视为不同的字符。

(√)3.在C语言程序中,ABC和abc被作为同一标识符使用。

(×)自测练习二:C语言字符集自测练习1.在C语言中,保留字是有专门含义和作用的,不能作为一般标识符使用。

(√)2.在C语言中,作为标识符的第一个字符只能是英文字母或下划线,不能是数字字符。

(√)3.C语言中使用的字符常量,其起止标记符是()。

a. 双引号b. 尖括号c. 单引号d. 中括号4.C语言中使用的字符串常量,其起止标记符是()。

a. 双引号b. 中括号c. 尖括号d. 单引号自测练习三:C语句分类自测练习1.在C语言中,一条简单语句的结束符是()。

a. 分号b. 空格c. 冒号d. 逗号2.在C语言中,每条复合语句的开始标记字符为()。

a. <b. [c. (d. {3.不符合C语言规定的复合语句是()。

a. {x=0;}b. {}c. {;}d. {y=10}4.C语言中的选择类语句有两条,它们是()。

a. else和caseb. if和switchc. if和elsed. switch和case自测练习四:函数分类与使用自测练习1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。

a. nameb. mainc. MAINd. function2.C语言程序中的基本功能模块为()。

a. 标识符b. 函数c. 表达式d. 语句3.一个函数定义所包含的两个部分是()。

a. 函数头和函数体b. 函数原型和函数体c. 函数名和参数表d. 函数头和函数尾4.一个程序文件开始使用的每条预处理命令,其首字符必须是()。

a. #b. @c. %d. $5.在一个程序文件中,若要使用#include命令包含一个系统头文件,则此头文件所使用的起止定界符为一对()。

C语言习题答案1-7章

C语言习题答案1-7章

程序设计基础(C语言版)习题第01章绪论一.选择题1.以下叙述中正确的是________。

A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整参考答案:D【解析】程序设计通常分为问题建模、算法设计、编写代码和编译调试四个阶段。

所以选项A)、B)、C)说法都不完整。

2.以下关于简单程序设计的步骤和顺序的说法中正确的是。

A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构参考答案:B【解析】设计一个能解决实际问题的计算机程序需要经过以下几个过程:①建立模型。

②算法设计:给出解决问题的步骤,即算法。

③算法表达:选择一种表达算法的工具,对算法进行清晰的表达。

④编写程序:选择一种程序设计语言,把以上算法程序化,这称为编写程序。

⑤程序调试:对编写好的程序进行调试,修改程序中的错误。

⑥程序文档编写与程序维护。

综上所述,B)选项是符合上述描述的,其他选项不恰当。

3.以下叙述中正确的是________。

A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句C)简单C语句必须以分号结束D)C语句必须在一行内写完参考答案:C【解析】函数是C程序的基本组成单位;C语言书写风格很自由,不但一行可以写多个语句,还可以将一个语句写在多行中。

故本题答案为C)。

4.以下叙述中正确的是。

A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句C)C程序书写格式自由,一个语句可以写在多行上D)用C语言编写的程序只能放在一个程序文件中参考答案:C【解析】在C语言中,注释可以加在程序中的任何位置,选项A)错误。

C语言程序设计_第一阶段练习参考答案

C语言程序设计_第一阶段练习参考答案

江南大学现代远程教育第一阶段练习题考试科目:《C语言程序设计》第一章至第四章(总分100分)学习中心(教学点)批次:层次:专业:学号:身份证号:姓名:得分:一单选题 (共20题,总分值40 ,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。

)1. 有以下程序main(){ int i=1,j=1,k=2;if((j++‖k++)&&i++) printf("%d,%d,%d\n",i,j,k);}执行后输出结果是()。

(2 分)A. 1,1,2B. 2,2,1C. 2,2,2D. 2,2,32. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是()。

(2 分)A. 6B. 0C. 2D. 13. 执行以下程序段后,变量a,b,c的值为()。

int x=11,y=10,a,b,c;a=(--x==y++)?--x:++y;b=x++; c=y; (2 分)A. a=10,b=10,c=9B. a=9,b=9,c=12C. a=9,b=9,c=11D. a=1,b=9,c=114. 以下程序的输出结果是用()表示。

main( ){ int k=17;printf("%d,%o,%x \n",k,k,k);} (2 分)A. 17,021,0x11B. 17,17,17C. 17,0x11,021D. 17,21,115. 已知i、j、k为int型变量,若从键盘输入:1,2,3<回车> ,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是()。

(2 分)A. scanf(“%2d%2d%2d”,&i,&j,&k);B. scanf(“%d %d %d”,&i,&j,&k);C. scanf(“%d,%d,%d”,&i,&j,&k);D. scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);6. 以下非法的赋值语句是()。

《C语言程序设计》第1章C语言概述练习题答案

《C语言程序设计》第1章C语言概述练习题答案

第一章C语言概述练习题一、选择题1. C语言是一种()。

A)机器语言B)汇编语言C)高级语言D)低级语言2. 下列各项中,不是C语言的特点是()。

A)语言简洁、紧凑,使用方便C)能实现汇编语言的大部分功能B)数据类型丰富,可移植性好D)有较强的网络操作功能3. 下列叙述正确的是()。

A)C语言源程序可以直接在DOS环境中运行B)编译C语言源程序得到的目标程序可以直接在DOS环境中运行C)C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行D)Turbo C系统不提供编译和连接C程序的功能4. 下列叙述错误的是()。

A) C程序中的每条语句都用一个分号作为结束符B) C程序中的每条命令都用一个分号作为结束符C) C程序中的变量必须先定义,后使用D)C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写5. 一个C程序的执行是从()。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序文件的第一个函数开始,到本程序main函数结束D)本程序的main函数开始,到本程序文件的最后一个函数结束6. 以下叙述不正确的是()。

A)一个C源程序必须包含一个main函数B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面7. C语言规定:在一个源程序中,main函数的位置()。

A)必须在程序的开头B)必须在系统调用的库函数的后面C)可以在程序的任意位置D)必须在程序的最后8. 一个C语言程序是由()。

A)一个主程序和若干个子程序组成B)函数组成C)若干过程组成D)若干子程序组成9. 以下有4组用户标识符,其中合法的一组是()。

A) For B) 4d C) f2_G3 D) WORD-sub DO IF voidCase Size abc define10. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是A)有零个或多个输入B)有零个或多个输出C)有穷性D)可行性二、填空题1. 汇编语言属于面向(面向机器的)语言,局级语言属于(面向问题的)语言。

C语言程序设计_第一阶段练习参考答案

C语言程序设计_第一阶段练习参考答案

江南大学现代远程教育第一阶段练习题考试科目:《C语言程序设计》第一章至第四章(总分100分)学习中心(教学点)批次:层次:专业:学号:身份证号:姓名:得分:一单选题 (共20题,总分值40 ,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。

)1. 有以下程序main(){ int i=1,j=1,k=2;if((j++‖k++)&&i++) printf("%d,%d,%d\n",i,j,k);}执行后输出结果是()。

(2 分)A. 1,1,2B. 2,2,1C. 2,2,2D. 2,2,32. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是()。

(2 分)A. 6B. 0C. 2D. 13. 执行以下程序段后,变量a,b,c的值为()。

int x=11,y=10,a,b,c;a=(--x==y++)?--x:++y;b=x++; c=y; (2 分)A. a=10,b=10,c=9B. a=9,b=9,c=12C. a=9,b=9,c=11D. a=1,b=9,c=114. 以下程序的输出结果是用()表示。

main( ){ int k=17;printf("%d,%o,%x \n",k,k,k);} (2 分)A. 17,021,0x11B. 17,17,17C. 17,0x11,021D. 17,21,115. 已知i、j、k为int型变量,若从键盘输入:1,2,3<回车> ,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是()。

(2 分)A. scanf(“%2d%2d%2d”,&i,&j,&k);B. scanf(“%d %d %d”,&i,&j,&k);C. scanf(“%d,%d,%d”,&i,&j,&k);D. scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);6. 以下非法的赋值语句是()。

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++ 6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。

图1-1 VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。

如图1-2所示图1-2 选择新建② 在弹出的新建对话框中设置好相应的内容,如图2-2所示。

要事先准备好保存文件的目录,例d:\lx 目录。

在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C 语言程序的扩展名“.c ”。

设置好后,单击“OK ”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c 文件存放在D 盘的LX 目录下。

图1-3 新建对话框的设置③ 在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c ”且一定要输入扩展名1.单击该处3.设置存放目录图1-4 输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。

图1-5 保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compile example.c),或者单击工具栏上的“编译”按钮,如图1-6所示。

在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。

内容是“This build command requires an activeproject worksapce,Would you like to create a default project worksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No ”,表示不同意,将取消编译。

《C语言程序设计》第1-9章基本概念练习题

《C语言程序设计》第1-9章基本概念练习题

第一单元(1-5章)基本概念练习题一、单选选择(直接在正确的选项上打勾,每题)1、下面关于C语言特点的描述,不正确的是( )。

DA、C语言兼有高级语言和低级语言的双重特点,执行效率高B、C语言既可以用来编写应用程序,又可以用来编写系统软件C、C语言是一种结构式模块化程序设计语言D、C语言的可移植性较差2、C语言规定,在一个源程序中,main函数的位置( )。

BA、必须在最开始B、可以任意C、必须在最后D、必须在系统调用的库函数的后面3、下列说法中正确的是( )。

CA、C程序书写时,不区分大小写字母B、C程序书写时,一行只能写一个语句C、C程序书写时,一个语句可分成几行书写D、C程序书写时每行必须有行号4、C语言编译程序的首要工作是( )。

AA、检查C语言程序的语法错误B、检查C语言程序的逻辑错误C、检查程序的完整性D、生成目标文件5、C语言程序经过连接以后生成的文件名的后缀为( )。

CA、.cB、.objC、.exeD、.cpp6、以下关于算法的说法中,错误的是( )。

DA、一个算法应包含有限个步骤B、在计算机上实现的算法是用来处理数据对象的C、算法的目的是为了求解D、算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现7、算法是指为解决某个特定问题而采取的确定且有限的步骤,下面不属于算法的五个特性之一的是( )。

CA、确定性B、有穷性C、零个或多个输出D、零个或多个输入8、以下不属于结构化程序设计三种基本结构之一的是( )。

BA、顺序B、递归C、循环D、选择9、下列数据中,不合法的C语言实型数据是( )。

CA、0.123B、123e3C、2.1e3.5D、789.010、若变量a、i已正确定义,且i已正确赋值,以下属于合法的C语句是( )。

A、a==1B、++i;C、a=a++=5;D、a=int(i);11、已有定义int a=6; 则执行语句a+=a-=a*a;后,a的值为( )。

c语言程序设计(第1部分)选择

c语言程序设计(第1部分)选择

选择题(第一部分)1、有以下程序void fun(int a[],int i,int j){ int t;if(i<j){ t=a[i];a[i]=a[j];a[j]=t;i++; j--;fun(a,i,j);}}main(){ int x[]={2,6,1,8},i;fun(x,0,3);for(i=0;i<4;i++) printf("%2d",x[i]);printf("\n");}程序运行后的输出结果是______。

A:1 2 6 8B:8 6 2 1C:8 1 6 2D:8 6 1 2答案:C评析:本题考的是函数参数的传递。

当用数组名作函数参数时,数组名代表数组的首地址。

fun(x,0,3);是将数组名x作为实参,把数组x 的首地址传送给形参(指针a),这样数组x与形参指针a共占同一段内存单元,所以在调用函数期间,如果改变了形参数组x的值,也就改变了实参指针a的值。

另外此题还考了个函数自身的调用,下面是调用fun()函数的运行过程:a=x,i=0,j=3,判断i<j,交换a[i],a[j],此时a[0]到a[3]里面的数分别为8,6,1,2,也即是 x[0]到x[3]中的数值,因为它们共用存储单元;i++; j--后继续调用fun(),此时i,j分别为1,2,交换a[1],a[2]的值后a所指向的存储单元中的数据为8,1,6,2;继续i++; j--后判断i<j不成立,返回主函数,输出x[i]即指针a所指向的数据8,1,6,2。

故本题答案为C。

2、有以下说明和定义语句struct student{ int age; char num[8];};struct student stu[3]={{20,"200401"},{21,"200402"},{19,"200403"}};struct student *p=stu;以下选项中引用结构体变量成员的表达式错误的是______。

C语言 第一阶段作业

C语言 第一阶段作业

第一阶段作业(客观题)返回上一级单选题(共20题,每题4分)1 .下列变量名中合法的是______。

A.B.C.TomB.3a6bC._6a7bD.$ABC我的答案:未做答参考答案:C答案解析:详见第2章-2 常量、数据的存储与数据类型,标识符的命名规则:(1)只能由字母(a~z,a~z)、数字(0~9)、下划线(_)组成的字符串构成,并且其第一个字符必须是字母或下划线。

(2)在标识符中,大小写是有区别的。

(3)c语言的关键字不能用作变量名,如不能把变量命名为for。

(4)命名标识符时应尽量有相应的意义,以便于阅读理解,做到“顾名思义”,如例2-1中area。

(5)c标识符的长度无统一的规定,一般不超过128个字符。

2 .以下叙述中错误的是_____。

A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识我的答案:未做答参考答案:A答案解析:详见第2章-2 常量、数据的存储与数据类型,标识符的命名规则:(1)只能由字母(a~z,a~z)、数字(0~9)、下划线(_)组成的字符串构成,并且其第一个字符必须是字母或下划线。

(2)在标识符中,大小写是有区别的。

(3)c语言的关键字不能用作变量名,如不能把变量命名为for。

(4)命名标识符时应尽量有相应的意义,以便于阅读理解,做到“顾名思义”,如例2-1中area。

(5)c标识符的长度无统一的规定,一般不超过128个字符。

3 .已知在ascii代码中,字母a的序号为65,以下程序的输出的结果是_____。

#includemain(){ char c1=’a’, c2=’y’;printf(%d,%d\n,c1,c2); }A.因输出格式不合法,输出错误信息B.65,90C.A,YD.65,89我的答案:未做答参考答案:D答案解析:暂无4 .C语言是_______语言。

C语言程序设计各章练习题

C语言程序设计各章练习题

C语言程序设计各章练习题《C 语言程序设计》各章练习题2016年12月汇编第1-3章 C 语言基础、编程规范、顺序结构程序设计编程题1:设a 和b 均为int 型变量,编写一个程序,通过键盘读入a,b 的值,然后交换a,b 的值。

要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b 的值,交换后a,b 的值。

附加要求:(1)允许定义第3个变量,实现交换;(2)不允许定义第3个变量,实现交换。

第4章选择结构程序设计编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎪⎩⎪⎪⎨⎧>=<+-=0020212x x x x x y编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

⎪⎩⎪⎨⎧>≤≤--<=002222x x x x x y编程题3:求 ax 2+bx+c=0方程的解。

(只输出b 2-4ac>=0的求解结果,小于0,输出“不予求解!”)第5章 循环结构程序设计编程题4:编程计算∑=ni i 1。

要求提示键盘输入n ,如n 为负数,不予计算,直接返回。

编程题5:编程序计算n !,要求n 从键盘输入,如n 小于0,不予计算。

编程题6:从键盘输入一个数n ,判断n 是否是素数。

编程题6:编写程序输出1~100之间的偶数,要求屏幕显示时5个偶数一行,每个数占5位,右对齐。

编程题7:编程计算100到1000之间有多少个数其各位数字之和是5,并将其输出。

编程题8:求满足下列条件的三位数n ,它除以11(整数相除)所得到的商等于n 的各位数字的平方和,且其中至少有二位数字相同的数。

编程题9:有一些十进制整数对ab 和cd 具有如下特性:ab×cd=ba×dc,其中a≠b 且c≠d。

如:12×42=21×24。

请编程找出30~50之间满数,将100~200之间的素数全部输出,要求屏幕上每个数占4位,每行显示5个素数,左对齐。

c语言程序设计习题1-4章练习

c语言程序设计习题1-4章练习
3.下面程序执行后k的值为【5】。
int a=1,b=2,c=3,d=4,k;
k=a>b?a:c>d?c:d
4.已知:int a=5;则执行a+=a-=a*a;语句后,a的值为【6】。
5.下面程序的运行结果是x=【7】,y=【8】。
main( )
{ float x=4.9;int y;
y=(int)x;
char ch;
scanf("%c",&ch);
ch=(ch>=′A′&&ch<=′Z′)?(【1】):ch
printf("【2】\\n",ch);
2.下面程序段的执行结果是x=【3】,y=【4】。
inta=3,b=5,x,y;
x=a+1,b+6;
y=(a+1,b+6);
printf("x=%d,y=%d",x,y);
B)11.000000,12.000000,13
C)11.0000000,12,13
D)11,12.000000,13
15.执行以下程序后x的值为【】。
unsigned int x=65535;
printf("%d\\n",x);
A) 65535B)1C)有错误D)-1
二、填空题
1.下面程序段的功能是输出大写字母对应的小写字母的ASCII码,请填空。
12.执行下面程序段,给x、y赋值时,不能作为数据分隔符的是【】。
int x,y;
scanf("%d%d",&x,&y);
A)空格B)Tab键C)回车D)逗号
13.下面合法的语句是【】。

第1部分_C语言程序设计练习一

第1部分_C语言程序设计练习一

《C语言程序设计》练习一一、单项选择题1.下面转义字符中,表示字符串结束的是()A.\ rB.\ nC.\ 0D.\ f2.在Turbo C2.0中,若定义unsigned int a;则变量a在内存中分配的字节数是()A.1个B.2个C.4个D.8个3.设有int x=2,y,z;执行z=y=x--;后,变量z的值是()A.0B.1C.2D.34.以十六进制形式输出整数的格式说明符是()A.%uB.%ldC.%xD.%o5.下面合法的if语句是()A.if(a=b) c++;B.if(a=<b) c++;C.ifi(a< >b) c++;D.if(a=>b) c++;6.结束while(表达式)循环的条件是()A.当表达式的值为0时B.当表达式的值不为0时C.当表达式的值为1时D.当表达式的值为非1时7.下面列出的位运算符中,表示按位与操作的是()A.~B.&C.^D.|8.设有说明:int x=0x03,y=3;表达式x&~y的值是()A.0B.1C.2D.39. 设有int a=3, b=-4, c=5;表达式(a<b)? a+b:(a-b,b+4,a-=b+4)的值是()A. –1B. 0C. 3D. 710. 若有下列程序段,欲使a=2、b=3,对应正确的数据输入方法是()(其中<CR>表示换行)int a, b;scanf(″a=%d b=%d″,&a, &b);A. 2<CR>B. a=2 b=3<CR>C. a=2, b=3<CR>D. 2,3<CR>3<CR>11. 下列if语句中,有语法错误..的是()A. if(x>y);B. if(x=y) x+y;C. if(x!=y) scanf(″%d″, &x) else scanf(″%d″,&y)D. if(x<y) {x++; y++;}12. 下面程序段执行后的输出结果是()int i=-1;if(i<=0) printf(″* * * * \n″);else printf(″%%%%\n″);1A. ****B.%%%%C. %%%%cD. ****c13. 下面程序段的循环次数是()int k=2;while(k==0) printf(″%d″,k);k--; printf(″\n″);A. 0次B. 1次C. 2次D. 无限次14. 下面各个位运算符的优先级从左到右依次升高的是()A. | ^ & >>B. ^ >> & ~C. << | ^ ~D. ~ | & >>15. 设有说明:int u=1, v=14;表达式u+v>>2的值是()A. 0B. 3C. 5D. 716.设有int a =3, b=-4, c=0;表达式((a>b)?a:b)&&c<0的值是()A.-4B.0C.1D.317.若有下列程序段,欲使a=2、b=3,对应正确的数据输入方法是()(其中<CR>表示换行)int a, b;scanf(″a=%d, b=%d″,&a,&b);A.2<CR>B.a=2 b=3<CR>C.a=2, b=3<CR>D.2,3<CR> 3<CR>18.关于if语句下面叙述正确的是()A.只有当if语句中表达式的值等于1时,才执行if的内嵌语句B.只有当if语句中表达式的值为假时,才执行if的内嵌语句C.只有当if语句中表达式的值等于0时,才执行if的内嵌语句D.只要if语句中表达式的值非0时,就执行if的内嵌语句19.若int x=0; 则while(x==0); 的循环次数是()A.0B.1C.2D.无限次20.下面各个运算符的优先级从左到右依次降低的是()A.& >> | ^B.~ & >>|C.>> & ^ |D.~ >> & ^21.设有说明:int u=1, v=2;表达式:u+v<<2的值是()A.-1B.1C.9D.1222.字符串常数“CHINA”在内存中存储时占的字节数是()A.5个B.6个C.7个D.8个23 23.如果a=1,b=2,c=3,d=4,则表达式a>b?a:c<d?c:d 的值是( )A .1B .2C .3D .424.输出字符串的格式说明符是( )A .%cB .%sC .%uD .%g25.设有说明int x=0,y=0;则执行if(x++)y=1+x;else y=2+x ;后,变量y 的值是( )A .0B .1C .2D .326.以下程序段所表示的数学函数关系是( )y=-1if(x!=0) if(x>0) y=1;else y=0;A .⎪⎩⎪⎨⎧>=<-=)0(1)0(0)0(1x x x y B .⎪⎩⎪⎨⎧>=-<=)0(0)0(1)0(1x x x yC .⎪⎩⎪⎨⎧>=-<=)0(1)0(1)0(0x x x yD .⎪⎩⎪⎨⎧>=<-=)0(0)0(1)0(1x x x y27.执行下面程序段后,输出字符A 的个数是( )for(i=0;i<=5;i+=2)printf(″A ″);A .0个B .3个C .5个D .6个28.设有说明:int x=0x15,y=0x0f ;则x&y 的结果是( )A .0x5B .0x15C .0xf0D .0xf529.如果在程序中要使用系统提供的函数strlen,则需要书写的编译预处理命令是() A .#include<stdio.h> B .#include<math.h>C .#incLude<string.h>D . #incLude<malloc.h>30.整数-2在机器内存中的表示是( )A .1000000000000010B .1111111111111110C .11111111111111101D .111111111111111131.下列运算符中优先级最低的是( )A .>B .!C .%D .= =32.设有int a=3,b=-4,c=5;表达式+ +a-c+b+ +的值是()A.-6 B.-5 C.-4 D.-333.以十进制无符号形式输出整数的格式说明符是()A.%u B.%x C.%o D.%d34.执行while(表达式)循环的条件是()A.当表达式的值为0时B.仅当表达式的值为1时C.当表达式的值非0时D.当表达式的值不为1时35.下列位运算符中,表示按位异或操作的是()A.~ B.│C.^ D.&36.下列各个位运算符的优先级从左到右依次升高的是()A.>>│& ~B.│>> & ~C.│& >> ~D.~│& >> 37.设有说明:int u=1,v=3;则表达式u<<= v的值是()A.0 B.1C.3 D.838.下列转义字符中,表示回车的是()A.\0 B.\n C.\r D.\f39.若定义double d;则d在内存中分配的字节数是()A.1个B.2个C.4个D.8个40.下列表达式中运算结果为3的表达式是()A.(-7)%4 B.7/4+2 C.7/4*4-4 D.8/3+8/3 41.设有int a=3,b=-4,c=5;表达式a++-c+b++的值是()A.-6 B.-5 C.-4 D.-342.在printf语句中,格式说明符u表示()A.以十进制带符号形式输出整数B.以十六进制带符号形式输出整数C.以十进制无符号形式输出整数D.以十六进制无符号形式输出整数43.关于switch中的表达式,正确的说法是()A.它必须是算术表达式B.它必须是关系表达式C.它必须是逻辑表达式D.它可以是任意类型的表达式444.对do语句while(表达式);结构的循环,下列说法正确的是()A.当表达式的值为非零时不执行循环体B.循环体至少被执行一次C.当表达式的值为零时循环体一次也不执行D.循环体仅被执行一次45.只能在循环语句中用于结束本轮循环的语句是()A.break; B.continue; C.goto D.if46.下列是合法C语言常量的是()A. eB. 7E4.0C. E4D. -9.13E-3047.设有int a=3,b=-4,c=5;表达式(a<b)?a:b&&c<0的值是()A. 0B. 1C. 3D. 448.以指数形式输出实型数的格式说明符是()A. %uB. %xC. %fD. %e49.下列各个位运算符的优先级从左到右依次降低的是()A. | & ˆ > >B.ˆ & > > |C. ~> > ˆ |D. ~> > | ˆ50.设有说明:int u=1,v=3,w=5;表达式:v &~~u|w的值是()A. 3B. 5C. 6D. 851.在Turbo C 2.0中,若定义char ch;则变量ch在内存中分配的字节数是()A.1个B.2个C.4个D.8个6<CR>52.下面程序段的输出结果是()main(){int a=2,b=5;printf(″a=%d%%,b=%d%%″,a,b);}A.a=2,b=5B.a=2%,b=5%C.a=%2,b=%5D.a=%d,b=%d53.设有条件表达式(exp)? a++:b--,则下列表达式中能够与该表达式完全等价的表达式是()A.(exp!=0)? a++∶b--B.(exp==0)? a++∶b--C.(exp==1)? a++∶b--D.(exp!=1)? a++:b--54.对于for(表达式l;表达式2;表达式3)语句;控制循环结束的表达式是()A.表达式1B.表达式2C.表达式3D.表达式l和表达式355.设有int x=2,y,z;执行z=y=x——;后变量y的值是()A.0B.1C.2D.356.在下列选项中,没有构成死循环的程序段是()A.int i=100;B.for(;;);while(1){ i=i%100+1;if(i>100)break;}5C.int k=1000;D.int s=36;do{++k;}while(k>10000);while(s);一一s;57.设有说明:int u=l,v=3,w=5;表达式:u<<=(v|w)的值是()A.1B.5C.13D.12858.设有说明:int u=1,v=3,w=2;表达式(v>>1|u<<2)&w的值是()A.0B.1C.3D.559. 下面程序段的输出结果是()main(){ int s, p;s=p=5;p=++s;p++; ++p;printf(″%d\n″,p);}A. 5B. 6C. 7D. 860. 下面程序段的输出结果是()a=100;while(a>120);a=a+1;printf(″%d″,a);A. 100B. 101C. 120D. 12161.下面程序段的输出结果是()main( ){ int s, p;s=p=5;p=--s;p++;++p;printf(″%d\n″,p);}A.5B.6C.7D.862.若执行下面程序时,从键盘输入数据3和4,则程序的输出结果是()main( )6{ int a,b,s;scanf(″%d″, &a,&b);s=a;if(a<b) s=bs=s*s;printf(″%d″,s);}A.9B.12C.16D.2563.下面程序段的输出结果是()for (i=1; i<3;i++){for (j=1;j<3;j++)printf(″%d ″, i+j);printf(″\n″);}A.2 3 3 4B.2 3 4C.2 3D.23 4 3 4 64.下列程序段的输出结果是()void main(void){int y=1,x=5;if(x<0)y=-1;if(x>=0)y=0;printf("%d\n",y);}A.-1 B.0 C.1 D.5 65.执行如下程序段后,x的值是()int x=1,y=-1;if(y<0)x-=y;else x+=y;A.-1 B.0 C.1 D.2 66.下列程序段输出的结果是()for(i=1;i<3;i+ +)for(j=1;j<3;j+ +)7printf("%d",i+j);A.2 3 3 4 B.2 3 4C.2 3 D.23 4 3 467.若有int a=3,b=4,c=5,d=6,x=4;执行下列程序段后x的值是()if(a<b){if(c= =d)x=c;}elsex=d++A.4 B.5 C.6 D.768.下列程序的输出结果是()main( ){ int x=5,y;if(x<0)y=-1;if(x==0)y=0;y=1;p rintf(″%d″,y);}A. -5B. -1C. 0D. 169.下列程序段的输出结果是()i=1;while(i<3){j=1;while(j<=i){ printf(″%d″,i+j);j++;}i++;printf(″\n″);}A. 2 3 3 4B. 2 3 4C. 2 3D.23 4 3 4870.设有下列程序:()#include″stdio.h″main( ){unsigned x=8,y=2;printf(″%d\n″,y|~(x&y));}该程序的运行结果是A. -1B. 0xffC.127D. 6553571.两次运行下面的程序,如果从键盘上分别输入6和4,则输出的结果是()void main(void){int x;scanf("%d",&x);if(x + + >5)printf("%d",x);else printf("%d\n",x——);}A.7和5B.6和3C.7和4D.6和472.设有下面程序:# include"stdio.h"void main(void){unsigned x=1,y=3,z=5;printf("%d\n",z^x&y);}该程序的运行结果是()A.0B.3C.4D.59。

C语言程序设计作业1答案

C语言程序设计作业1答案

C语言程序设计作业1答案第1次作业答案一、单项选择题(本大题共19小题)1.C 语言规定:在一个源程序中,main 函数的位置()。

[C]A )必须在最开始B )必须在系统调用的库函数的后面C )可以任意D )必须在最后2.一个C 语言程序是由()。

[B] A )一个主程序和若干个子程序组成B )函数组成C )若干过程组成D )若干子程序组成3.C程序中,注释的内容写在()。

[A] A )/*和*/之间 B )\*和*\之间 C )*/和/*之间D )*\和\*之间 4.C 语言程序中每个语句和数据定义的最后必须有一个()。

[A] A )分号 B )逗号 C )空格 D )冒号5.若x 、i 、j 和k 都是int 型变量,则计算下面表达式后,x 的值为()。

[C] X=(i=4,j=16,k=32)A )4B )16C )32D )52 6.不正确的变量说明是()。

[C]A )unsigned int ui;B )short int s;C )double int A;D )int i,j,k;7.合法的C 语言程序标识只符是()。

[C] A )5dm B )a>bC )HhD )$a 8.不合法的字符常量是()。

[C] A )?2? B )?\101? C )?ab ?D )?\n ? 9.若有代数式bc ae 3,则不正确的表达式是()。

[C]A )a/b/c*e*3B )3*a*e/b/cC )3*a*e/b*cD )a*e/c/b*3 10.以下选项中不合法的赋值语句是()。

[C] A )c=(a=1,b=2); B )k=i=j; C )a=b+c=5; D )n1=(n2=(n3=0));11.若希望当A 的值为奇数时,表达式的值为“真”,A 的值为偶数时,表达式的值为“假”。

则以下不能满足要求的表达式是()。

[C]A)A%2= =1 B) !(A %2 = =0) C)!(A%2) D)A%212.若w=1,x=2,y=3,z=4,则条件表达式w<x?x:y)。

C语言程序设计教程第一章练习题题目

C语言程序设计教程第一章练习题题目

C语⾔程序设计教程第⼀章练习题题⽬单选题1、下列语⾔中不属于计算机语⾔的三⼤类的是(C)。

A.机器语⾔B.汇编语⾔C.脚本语⾔D.⾼级语⾔2、下列说法中不正确的是(C)A.计算机语⾔⼤致可分为三⼤类,即机器语⾔、汇编语⾔和⾼级语⾔B.C语⾔是⼀种通⽤的、过程式的编程语⾔,具有⾼效、灵活、可移植等优点C.C语⾔属于汇编语⾔D.⾼级语⾔⽐汇编语⾔更贴近于⼈类使⽤的语⾔,易于理解、记忆和使⽤3、以下开发⼯具中不属于主流的开发⼯具的是(B)A.Visual StudioB.XcodeC.Code::BlockD.Eclipse4、下列选项是对主流开发⼯具的介绍,其中错误的是(B)A.Visual Studio⽀持C/C++、C#、F#、VB等多种程序语⾔的开发和测试B.Code::Block是⼀个免费的跨平台IDE,⽀持C、C++和Fortan程序的开发C.Eclipse是⼀种被⼴泛使⽤的免费跨平台IDE,最初由IBM公司开发D.Vim是⼀款功能⾮常强⼤的IDE( 和其他IDE不同的是,Vim本⾝并不是⼀个⽤于开发计算机程序的IDE,⽽是⼀款功能⾮常强⼤的⽂本编辑器,它是UNIX系统上Vi编辑器的升级版。

)5、下列选项中,不属于开发⼀个C语⾔应⽤程序的具体实现步骤的是(A)A.启动开发⼯具B.添加源⽂件C.编写代码D.运⾏程序6、下列选项中,关于main()函数叙述不正确的是(C)A.⼀个完整的C语⾔程序中,有且只能有⼀个main()函数B.main()函数是程序的主⼊⼝,程序总是从main()函数开始执⾏C.如果没有声明main()函数,程序将从第1⾏开始执⾏D.main()函数可以有返回值,也可以没有返回值7、下⾯程序中,合法的选项是(D)A.#includeint main() { printf("hello world\n"); return 0; }B.#includeint man() { printf("hello world\n"); return 0; }C.#includeint main() { printf("hello world\n") return 0; }D.#includeint main() { print("hello world\n"); return 0; }8、下⾯程序中,运⾏结果为“1,2”的是(A)A.#includeint main() { int a = 1; int b = 2; printf("%d %d\n",a,b); return 0; }B.#includeint main() { int a = 1; int b = 2; printf("%d,"a); printf("%d\n",b); return 0; }C.#includeint main() { int a = 1, b = 2; printf("%d,,%d\n",a,b); return 0; }D.#includeint main() { int a = 1,a= b = 2; printf("%d,%d\n",a,b); return 0; }9、下列关于注释的描述中,错误的是(B)A.C语⾔中的注释有两种类型:单⾏注释和多⾏注释B.所有的注释都可以嵌套使⽤C.单⾏注释⽤"//"符号表⽰,"//"后⾯为被注释的内容D.多⾏注释以符号"/*"开头,以符号"*/"结尾解析:在C语⾔中,有的注释可以嵌套使⽤,有的则不可以,例如:多⾏注释“/*…*/”中可以嵌套单⾏注释“//”;多⾏注释“/*…*/”中不能嵌套多⾏注释“/*…*/”。

C语言程序设计 (1)

C语言程序设计 (1)
作业1
单项选择题
第1题以下程序的输出结果是:main() {int x=10,y=10; printf("%d %d\n",x--,--y); }
A、10 10
B、9 9
C、9 10
D、10 9
答案:D
第2题下列数组名正确的是:
A、a
B、int
C、2bcx
D、a(d)
答案:A
第3题以下哪个不是关系运算符:
答案:A|B|C
第8题下列说法正确的是:
A、取反运算优先级高于算术运算符
B、取反运算符低于关系运算符
C、取反运算符高于逻辑运算符
D、取反运算符低于赋值运算符
答案:A|C
判断题
第9题putchar函数的参数可以是整型变量。
答案:正确
第10题while语句实现直到型循环。
答案:错误
第11题printf只能输出一个数据。
D、直接定义结构体类型变量
答案:A|B|D
第6题处理动态链表动态分配的常用函数有:
A、malloc
B、calloc
C、free
D、scanf
答案:A|B|C
第7题将一个结构体变量的值传递给另一个函数的方法有:
A、用结构体变量的成员作参数
B、用结构体变量作实参
C、用指向结构体变量的指针作实参
D、用结构体变量名作形参
A、=
B、<
C、<=
D、!=
答案:A
第4题下列引用错误的是:int a[3][4];
A、a[3][4]=3
B、a[1*2][2+1]=4
C、**a=1
D、*a[2]=4
答案:A
多项选择题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

江南大学现代远程教育第一阶段练习题考试科目:《C语言程序设计》第一章至第四章(总分100分)一单选题 (共20题,总分值40 ,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。

)1. 有以下程序main(){ int i=1,j=1,k=2;if((j++‖k++)&&i++) printf("%d,%d,%d\n",i,j,k);}执行后输出结果是(C)。

(2 分)A. 1,1,2B. 2,2,1C. 2,2,2D. 2,2,32. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是(D)。

(2 分)A. 6B. 0C. 2D. 13. 执行以下程序段后,变量a,b,c的值为(C)。

int x=11,y=10,a,b,c;a=(--x==y++)?--x:++y;b=x++; c=y; (2 分)A. a=10,b=10,c=9B. a=9,b=9,c=12C. a=9,b=9,c=11D. a=1,b=9,c=114. 以下程序的输出结果是用(D)表示。

main( ){ int k=17;printf("%d,%o,%x \n",k,k,k);} (2 分)A. 17,021,0x11B. 17,17,17C. 17,0x11,021D. 17,21,115. 已知i、j、k为int型变量,若从键盘输入:1,2,3<回车> ,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是(C)。

(2 分)A. scanf(“%2d%2d%2d”,&i,&j,&k);B. scanf(“%d %d %d”,&i,&j,&k);C. scanf(“%d,%d,%d”,&i,&j,&k);D. scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);6. 以下非法的赋值语句是(C)。

(2 分)A. n=(i=2,++i);B. j++;C. ++(i+1);D. x=j>0;7. 已知c是字符型变量,以下不正确的赋值语句是(A)。

(2 分)A. c=”a”B. c=’a’C. c=’\141’D. c=’\x61’+38. 以下不符合C语言语法的赋值表达式是(D)。

(2 分)A. d=9+e,e++,d+9B. k=i= =jC. n1+=n2+3D. a=b+c=a+79. 若有以下程序:main(){ int k=2,i=2,m;m=(k+=i*=k);printf(“%d,%d\n”,m,i);}执行后的输出结果是(C)。

(2 分)A. 8,6B. 8,3C. 6,4D. 7,410. 字符串”\\\’abcd\123\xAB\t”的长度为(D)。

(2 分)A. 8B. 17C. -9D. 1011. 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是(B)。

(2 分)A. s=a+b;B. s=a+c;C. s=s+c;D. s=b+c;12. 以下选项中合法的实型常数是(C)。

(2 分)A. 5E2.0B. E-3C. .2E1D. 1.3E13. 下列说法中正确的是(B)。

(2 分)A. 在switch语句中一定要使用break语句B. 在switch语句中不一定要使用break语句C. break语句是switch语句的一部分D. break只能用于switch语句中14. C语言中对于嵌套if语句规定else总是与(D)配对?(2 分)A. 第一个ifB. 其之前最近的ifC. 缩进位值相同的ifD. 其之前最近的不带else的if语句15. 以下选项中,与k=n++完全等价的表达式是(A)。

(2 分)A. k=n,n=n+1B. n=n+1,k=nC. k=++nD. k+=n+116. C语言中各种基本数据类型的存储空间长度排列为(C)。

(2 分)A. char≤long≤int≤float≤doubleB. double≤float≤long≤int≤charC. char≤int≤long≤float≤doubleD. float≤int≤long≤char≤double17. 下面的for循环最多可执行(A)次。

for(x=0;y=0;(y!=99)&&(x<4);x++); (2 分)A. 4次B. 5次C. 99次D. 0次18. 下列关于C语言用户标识符的叙述中正确的是(B)。

(2 分)A. 用户标识符中可以出现在下划线和中划线(减号)。

B. 用户标识符中不可以出现中划线,但可以出现下划线。

C. 用户标识符中可以出现下划线,但不可以放在用户标识符的开头。

D. 用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头。

19. 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)。

(2分)A. 6.500000B. 6C. 5.500000D. 6.00000020. 下列判断char类型变量C1是为数字的最简单且正确的表达式(B)。

(2 分)A. '0'<=C1<='9'B. (C1>='0')&&(C1<='9')C. (C1>=0)&&(C1<=9)D. ('0'<=C1)&&('9'<=C1)二填空题 (每空2分,总分值30 )21. break语句的功能____提前结束循环_______ ,contitue语句的功能______结束本次循环______ 。

22. 以下程序实现求100~200,400~600间的全部素数,并以10个数一行的格式输出。

#include <math.h>main(){int m,k,I,n=0;for(m=101;m<=600;m+=2){if(m>200 _______&&_______m<400)_____continue_________;k=sqrt(m);for(I=2;I<=k;I++)if(m% I= =0)________break___________;if( ________I>k_____________) {printf(“%d”,m);n=n+1;}if(n%10= =0) printf(“\n”);}p rintf(“\n”);} (6 分)23. 下述程序段的运行结果是_____________5___________。

int x,y;x=17;y=26;printf(“%d”,y/=(x%=6));24. #include “stdio.h”main(){ char c;scanf(“%c”,&c);switch (c-‘2’){ case 0:case 1: putchar(c+4);case 2: putchar(c+4);break;case 3: putchar(c+3);default: putchar(c+2);break;}printf(“\n”);}当分别输入1,2,5时,输出为______________3_________________、_______________66_______________、_______________87_______________。

25. 斐波纳契数列中头两个数是0和1,从第三个数开始,每个数等于前两个数的和,即:0,1,1,2,3,5,8,13,21,……等。

求斐波纳契数列的前20个数。

要求每行输出5个数。

请填空。

#include <stdio.h>main(){int f,f1,f2,I;printf(“Fibonacci series :\n”);f1=0;f2=____1____________________________;printf(“%6d,%6d,”,f1,f2);for(I=3;I<=20; ______I++_______________){ f=______f1+f2______________________;printf(“%6d,”,f);if(_______I%5==0_____________________)printf(“\n”);f1=f2;f2=_____________f__________________;}printf(“\n”);}三编程题 (共2题,总分值30 )26. 利用循环实现打印以下图形。

(15 分)#include“stdio.h”#include“math.h”main(){ int i,j,k;char m='A';for(i=0;i<=4,i++){ for(j=0;j<=3-i,j++)printf(“”);for(k=0;k<=2*I;k++)if(k==0 || k==2*i)printf(“%c”,m+i);elseprintf(“*”);printf(“\n”);}for(i=0,i<=3;i++){ for(j=0;j<=i;j++)printf(“”);for(k=0;k<=6-2*I;k++)if(k==0||k==6-2*I)printf(“%c”,m+3-i);elseprintf(“*”);printf(“\n”);}}27. 采用二分法求方程2(x³)-4(x²)+3x-6=0在(-10,10)之间的根。

(15 分)#include“stdio.h”#include“math.h”main(){ float a=-10,b=10,ab,fa,fab,fb;fa=a*((2*a-4)*a+3)-6;do{ ab=(a+b)/2;fab=ab*((2*ab-4)*ab+3)-6;if((fa*fab)> 0){a=ab; fa=fab;}else{b=ab; fb=fab;}}while(fabs(fab)> =1e-5);printf("方程的根为 %2f",ab); }。

相关文档
最新文档