《C++基础知识》习题参考答案(1)

合集下载

C习题及答案

C习题及答案

C习题及答案第一、二章C语言概述与算法一、选择题(四个选项中只有一个是正确的----下同)1. 一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是A) 有零个或多个输入B) 有零个或多个输出C) 有穷性D) 可行性2. 以下叙述中正确的是A) C语言的源程序不必通过编译就可以直接运行B) C语言的每条可执行语句最终都将被转换成二进制的机器指令C) C语言的源程序经编译形成的二进制代码可以直接运行D) C语言的函数不可以单独进行编译3. 对用C语言编写的代码程序,以下叙述中哪个是正确的A) 可立即执行B) 是一个源程序C) 经过编译即可执行D) 经过编译解释才能执行4. 结构化程序由三种基本结构组成, 由这三种基本结构组成的算法A) 可以完成任何复杂的任务B) 只能完成部分复杂的任务C) 只能完成符合结构化的任务D) 只能完成一些简单的任务5.有一个命名为C001.C的C语言源程序,当正常执行后,在当前目录下不存在的文件是A)C001.OBJ B)C001.DAT C)C001.EXE D)C001.C二、填空题1.结构化程序由、、三种基本结构组成。

2.模块化程序设计的设计原则是和。

3.组成C程序的基本单位是,其组成部分包括和。

4.C程序中的main称,它可以出现在程序的位置。

5.由“/*”和“*/”括起来的内容称为,它的作用是。

6.描述算法的常用方法有:。

第三章数据类型、运算符与表达式一、选择题1.与十进制数97不等值的字符常量是A) ’a’ B) ’\101’ C) ’\x61’ D) ’\141’2.在编写了一个C语言源程序C001.C并正确执行之后,当前目录下哪个文件不存在A) C001.C B) C001.OBJ C) C001.DAT D) C001.EXE3.以下选项中正确的整型常量是A) 5.B)-10 C)1.000 D)4/54.以下选项中正确的实型常量是A) 0 B)3. 1415 C)0.03x102D).325.以下选项中不正确的实型常量是A)2.670E-1 B)0.05e+1.5 C)-77.77 D)456e-26.以下选项中不合法的用户标识符是A)wb-1 B)file C)Main D)PRINTF7.以下选项中不合法的用户标识符是A)_123 B)printf C)A$ D)Dim8.C语言中运算对象必须是整型的运算符是A)% B)/ C)* D)+9.可在C程序中用作标识符的一组标识符是A)void B)as_b3 C)For D)2cDefine _123 -abc DOWORD If case SiG10.若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7; B)a=7+b+c,a++ C)int(12.3%4) D)a=a+7=c+b11.以下非法的赋值语句是A) n=(i=2,++i); B)j++; C) ++(i+1); D) x=j>0;12.设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是A) 6.500000 B) 6 C) 5.500000 D) 6.00000013.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是A) 6 B) 0 C) 2 D) 114.以下叙述中正确的是A)a是实型变量,C允许以下赋值a=10,因此可以这样说实型变量中允许存放整型值。

C语言基础题及答案

C语言基础题及答案

C语言基础题及答案1、一个C语言的源程序中[正确答案:A]。

A)必须有一个主函数B)可以有多个主函数C)必须有主函数和其他函数D)可以没有主函数2、关于C程序的主函数,以下描述中正确的是[正确答案:B]。

A)C程序的第一个函数称为主函数,程序从该函数开始运行。

B)C程序的主函数即是main函数,程序从该函数开始运行。

C)C程序可以有多个主函数,程序从第一个主函数开始运行。

D)C程序可以没有主函数,程序从第一个函数开始运行。

3、C程序中,return语句的作用是[正确答案:D]。

A)终止程序运行B)返回到上层循环C)返回到外层结构D)返回到上层函数4、C语言程序的3种基本结构是[正确答案:A]。

A)顺序结构,选择结构,循环结构B)递归结构,循环结构,转移结构C)嵌套结构,递归结构,顺序结构D)循环结构,转移结构,顺序结构5、以下对C程序的描述中正确的是[正确答案:A]。

A)C程序总是从main()函数开始执行。

B)C程序可以从程序中的任何函数开始执行。

C)C程序总是从第一个定义的函数开始执行。

D)C程序中的main()函数必须放在程序的开始部分。

6、关于C程序第1行的包含语句,以下写法中正确的是[正确答案:D]。

A)#include stdio.h B)#include'stdio.h'C)#include(stdio.h)D)#include<stdio.h>7、关于C语言程序,正确的编程流程应该是[正确答案:A]。

A)编辑→保存→编译→运行B)编译→编辑→运行→保存C)保存→运行→编辑→编译D)运行→编译→保存→编辑8、下列的哪个不是C语言的关键字[正确答案:D]。

A)while B)auto C)break D)printf9、下列的哪个不是C语言的算术运算符[正确答案:C]。

A)+B)%C)=D)-10、下列的哪个不是C语言的关系运算符[正确答案:C]。

A)>=B)<=C)=D)!=11、下列的哪个是错误的描述[正确答案:D]。

c语言入门经典 习题答案

c语言入门经典 习题答案

c语言入门经典习题答案C语言入门经典习题答案C语言是一种广泛使用的编程语言,它被广泛应用于系统软件、应用软件、驱动程序、网络软件等领域。

对于初学者来说,掌握C语言的基础知识是非常重要的。

而经典的C语言习题则是帮助初学者巩固知识、提高编程能力的重要途径。

下面是一些C语言入门经典习题的答案,希望能够对初学者有所帮助:1. 编写一个程序,输入两个整数,输出它们的和。

```c#include <stdio.h>int main() {int a, b;printf("请输入两个整数:");scanf("%d %d", &a, &b);printf("它们的和是:%d\n", a + b);return 0;}```2. 编写一个程序,输入一个整数,判断它是奇数还是偶数。

```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数\n", num);} else {printf("%d是奇数\n", num);}return 0;}```3. 编写一个程序,输入一个字符,判断它是大写字母、小写字母还是数字。

```c#include <stdio.h>int main() {char ch;printf("请输入一个字符:");scanf(" %c", &ch);if (ch >= 'A' && ch <= 'Z') {printf("%c是大写字母\n", ch);} else if (ch >= 'a' && ch <= 'z') {printf("%c是小写字母\n", ch);} else if (ch >= '0' && ch <= '9') {printf("%c是数字\n", ch);} else {printf("%c是其他字符\n", ch);}return 0;}```以上是一些C语言入门经典习题的答案,希望对初学者有所帮助。

C语言基础知识课后习题答案

C语言基础知识课后习题答案

C语言基础知识课后习题答案说明:1、原先的少部分题目有错,请用红色的部分替换掉;2、如果红色部分有文字“删除该行”,就直接删除该行;第一章C语言的基础知识第一节对C语言的初步认识习题1. 下列叙述中错误的是BA)任何一个C程序都必须有且仅有一个main函数,C语言总是从main函数开始执行。

B)C语言中的变量,可以先使用后定义。

C)所有的C语言语句最后都必须有一个分号D)C程序书写格式自由,语句可以从任一列开始书写,一行内可以写多个语句。

第二节熟悉Visual C++习题1. C语言源程序名的后缀是 BA).exe B).c C).obj D).cp 2. 下列叙述中错误的是DA)计算机不能直接执行用C语言编写的源程序B)C程序经C编译后,生成后缀为.obj的文件是一个二进制文件C)后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件D)后缀为.obj和.exe的二进制文件都可以直接运行3. 用C语言编写的代码程序BA)可立即执行B)是一个源程序C)经过编译即可执行D)经过编译解释才能执行第三节标识符习题1. 按照C语言规定的用户标识符命名规则,不能出现在标识符中的是BA)大写字母B)连接符C)数字字符D)下划线2. 以下选项中不合法的标识符是 CA)print B)FOR C)&a D)_003. 以下叙述中错误的是AA)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识4. 可在C程序中用作用户标识符的一组标识符是AA)and B)Date C)HiD)case_2007 y-m-d Dr.T omBigl5. 以下不合法的用户标识符是CA)j2_KEY B)Double C)4d D)_8_6. 以下不能定义为用户标识符的是DA)Main B)_0 C)_int D)sizeof7. 下列选项中,不能用作标识符的是DA)_1234_ B)_1_2 C)int_2_ D)2_int_8. 以下4组用户定义标识符中,全部合法的一组是AA)_main B)If C)txt D)intenclude -max REAL k_2sin turbo 3COM _001第四节数制转换习题1.十进制整数360的八进制为__________,十六进制为_____________。

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。

b) 一个C程序中至少应包括一个 main函数。

c) 在C语言中,输出操作是有库函数 printf( )函数完成。

二、单选题1、A2、C3、B解析:第1题答案:A 。

因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。

且到main函数结束。

第2题答案:C 。

因为 main函数没有限制必须位于程序的最前面。

C程序书写自由,一行内可写几个语句。

在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。

不过C语言本身并没有输入输出语句,输入输出是由函数完成的。

第3题答案:B。

因为一个C语言程序是由若干个函数组成的。

但至少包含一个main 函数,且main函数的位置不限。

三、编程题1、编写一个输出“Welcome to C!”信息的小程序。

解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。

海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。

*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。

*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。

程序设计基础c语言邹启明综合练习题答案

程序设计基础c语言邹启明综合练习题答案

程序设计基础c语言邹启明综合练习题答案1.下列不是C语言特点的是()。

[单选题] *A.C语言简洁、紧凑B.比较难学(正确答案)C可以直接对硬件进行操作D.C语言移植性好2.计算机最基本的操作单元不包括()。

[单选题] *A.位B.字节C.地址D.元组(正确答案)3.计算机唯一能识别的语言是()。

[单选题] *A.机器语言(正确答案)B.汇编语言C高级语言D.面向对象语言4.下列说法错误的是()。

[单选题] *A.C语言程序由若干个函数组成B.C语言是一种结构化程序设计语言C.C语言包含的数据类型不多(正确答案)D.C语言的语法限制不太严格5.下面对C语言特点的描述不正确的是()。

[单选题] *A.C语言兼有高级语言和低级语言的双重特点,执行效率高B.C语言既可以用来编写应用程序,又可以用来编写系统软件C.C语言中的变量可以不定义,直接使用(正确答案)D.C语言是一种结构化设计语言6.下列不是C语言中的关键字的是()。

[单选题] *A.caseB.typedefC.staticD.null(正确答案)7.二进制语言属于()。

[单选题] *A.面向机器语言(正确答案)B.面向过程语言C.面向问题语言D.面向汇编语言8.C语言具有低级语言的功能,主要是指()。

[单选题] *A.程序的可移植性B.程序的使用方便性C.能直接访问物理地址,可进行位操作(正确答案)D.具有现代化语言的各种数据结构9.C语言程序能够在不同的操作系统下运行这说明C语言具有很好的()。

[单选题] *A.适应性B.兼容性C.移植性(正确答案)D.操作性10. ()用符号来替代二进制序列。

[单选题] *A.机器语言B.汇编语言(正确答案)C.高级语言D.自然语言11.1983年,为C语言制定了一套标准,成为现行的C语言标准。

()。

[单选题] *A.ISOB.NSFC.CITTD.ANSI(正确答案)12.C语言一共有个关键字。

c基础考试题及答案

c基础考试题及答案

c基础考试题及答案1. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable-nameC. variable$nameD. variable_name答案:D2. 在C语言中,哪个关键字用于声明一个函数?A. defineB. functionC. voidD. int答案:C3. C语言中,用于定义一个整型变量的关键字是什么?A. intB. integerC. numberD. long答案:A4. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -D. /答案:A5. 若有以下C语言代码段:```cint a = 10;int b = 20;int c = a + b;```则变量c的值是多少?A. 10B. 20C. 30D. 40答案:C6. C语言中,哪个函数用于计算并返回一个字符串的长度?A. strlen()B. length()C. size()D. length_str()答案:A7. 在C语言中,以下哪个选项不是控制语句?A. ifB. switchC. while答案:B8. 在C语言中,以下哪个选项是正确的数组声明?A. int numbers[];B. int numbers[10];C. int numbers[10] = {1, 2, 3};D. All of the above答案:D9. C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. copystr()C. str_copy()D. string_copy()答案:A10. 若有以下C语言代码段:```cchar str[] = "Hello, World!";printf("%c", str[0]);```则输出结果是什么?A. HB. eC. lD. !答案:A。

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

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

C语言基础练习100题(含答案)雷柳青编排1、下面程序的输出是________#include<stdio.h>void main(){ int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b2、在下列选项中,不正确的赋值语句是________.A) ++t; B) n1=(n2=(n3=0));C) k=i=j; D) a=b+c=1;3、下面合法的C语言字符常量是__________.A) '\t' B) "A" C) 65 D) A4、字符(char)型数据在微机内存中的存储形式是____.A) 反码B) 补码C) EBCDIC码D) ASCII码5、设int a=12,则执行完语句a+=a-=a*a后,a的值是________A) 552 B) 264 C) 144 D) -2646、执行下面程序中的输出语句后,输出结果是______.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15 D) 107、下面程序的输出是__________.#include<stdio.h>void main(){int x=023;printf("%d\n",--x);}A) 17 B) 18 C) 23 D) 248、下面程序的输出是___________.#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值9、以下程序的输出结果是________.#include<stdio.h>void main(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10 910、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y));上面程序片段的输出结果是_______.A) 200 B) 100C) 100 200 D) 输出格式符不够,输出不确定的值11、阅读下面的程序#include<stdio.h>void main(){int i,j;i=010;j=9;printf("%d,%d",i-j,i+j);}则程序的运行结果是________.A) 1,19 B) -1,19 C) 1,17 D) -1,1712、阅读下面的程序#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d",i,j,m,n);}程序的运行结果是_________.A) 8,10,8,10 B) 9,11,8,10C) 9,11,9,10 D) 9,10,9,1113、若已定义int a,则表达式a=10,a+10,a++的值是___.A) 20 B) 10 C) 21 D) 1114、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是________.A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=4515、下面程序的输出结果是________.#include<stdio.h>void main(){int a=-1, b=4, k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,316、下面程序的输出结果是_______.#include<stdio.h>void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}A) 1,0 B) 0,1 C) 1,1 D) 0,017、若有以下定义和语句:int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b,c);则输出结果是_________.A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,1018、已知有double型变量x=2.5,y=4.7,整型变量a=7, 则表达式x+a%3*(int)(x+y)%2/4 的值是_________.A) 2.4 B) 2.5 C) 2.75 D) 019、设有以下语句:int x=10;x+=3+x%3,则x的值是._________A) 14 B) 15 C) 11 D) 12 20、若d为double型变量,则表达式d=1,d+5,d++的值是_______.A) 1 B) 6.0 C) 2.0 D) 1.021、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值__________.A) 0 B) 1 C) 12 D) 622、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是____.A) 0 B) 2 C) 1.5 D) 123、在C语言中,以下叙述不正确的是________.A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同D) C语言中变量必须先定义后引用24、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是________.A) 10<a<15 B) a==11||a==12||a==13||a==14 C) a>10&&a<15 D) !(a<=10)&&!(a>=15)25、如果c为字符型变量,判断c是否为空格不能使用________.(假设已知空格ASCII码为32)A) if(c=='32') B) if(c==32)C) if(c=='\40') D) if(c==' ')26、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是________.#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;else k=cp-'A'+10;printf("%d\n",k);}A) 2 B) 4 C) 1 D) 1027、执行下面程序后,运行结果是________.#include <stdio.h>void main( ){ int x=41,y=1;if (x%3==0 && x%7==0){ y+=x;printf("y=%d\n",y);}else{y=x;printf("y=%d",y);}}A) y=41 B) y=43 C) y=42 D) y=128、运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是______.#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y,&z);if (x<y)if (y<z)printf("%d\n",z);else printf("%d\n",y);else if (x<z)printf("%d\n",z);else printf("%d\n",x);}A) 34 B) 12 C) 9 D) 不确定的值29、运行下面程序时,从键盘输入字母H,则输出结果是________.#include <stdio.h>void main( ){ char ch;ch=getchar( );switch(ch){ case 'H':printf("Hello!\n");case 'G':printf("Good morning!\n");default:printf("Bye_Bye!\n");}}A) Hello! B) Hello!Good Morning!C) Hello! D) Hello!Good morning! Bye_Bye!Bye_Bye!30、执行下列程序段后的输出结果是_________.int x=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);A) 3 B) 2 C) 1 D) 431、设ch是char型变量,值为'A',则表达式ch=(ch>='A' && ch<='Z')?ch+32:ch的值是_____.A) Z B) a C) z D) A32、下面程序的输出结果是________.#include <stdio.h>void main( ){ int x=8,y=-7,z=9;if (x<y)if (y<0) z=0;else z-=1;printf("%d\n",z);}A) 8 B) 1 C) 9 D) 033、运行下面程序时,若从键盘输入"3,4 <CR>",则程序的输出结果是_______.#include <stdio.h>void main( ){ int a,b,s;scanf("%d,%d",&a,&b);s=a;if (s<b) s=b;s=s*s;printf("%d\n",s) ;}A) 14 B) 16 C) 18 D) 2034、下列程序的执行结果是_________.#include <stdio.h>void main( ){ int x=0,y=1,z=0;if (x=z=y)x=3;printf("%d,%d\n",x,z);}A) 3,0 B) 0,0 C) 0,1 D) 3,135、能够完成如下函数计算的程序段是______.┌-1 x<0y= ┤0 x=0└ 1 x>0A) y=1; B) if (x>=0)if(x!=0) if(x>0) y=1;if(x>0) y=1; else y=0;else y=0; else y=-1;C) y=0; D) y=-1;if (x>=0) if (x>0) y=1;if (x>0) y=1; else y=0;else y=-1;36、以下程序的执行结果是________.#include <stdio.h>void main( ){ int x=1,y=0;switch (x){case 1:switch (y){case 0:printf("first\n");break;case 1:printf("second\n");break;}case 2:printf("third\n");}}A) first B) firstsecond thirdC) first D) secondthird37、以下程序的执行结果是________.#include <stdio.h>void main( ){ int a,b,c,d,x;a=c=0;b=1;d=20;if (a) d=d-10;else if(!b)if (!c) x=15;else x=25;printf("d=%d\n",d);}A) d=20 B) d=10 C) d=15 D) 2538、下列程序执行后的输出结果是________.#include <stdio.h>void main( ){ int x,y=1,z;if ((z=y)<0) x=4;else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}A) 4,1 B) 6,1 C) 5,0 D) 出错信息39、有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是__________.A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=240、下面程序的输出结果是_________.#include <stdio.h>void main( ){ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);elseprintf("%d %d\n",b,a);}A) -1 1 B) 0 1 C) 1 0 D) 0 041、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x; m=(m<y)?m:y; m=(m<z)?m:z;则该程序段执行后,m的值是_________.A) 4 B) 3 C) 2 D) 142、以下程序的输出结果是_________.main( ){ int a=100;if (a>100) printf("%d\n",a>100);else printf("%d\n",a<=100);}A) a<=100 B) 100 C) 0 D) 143、若执行下面的程序从键盘上输入9,则输出结果是.______________#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);}A) 11 B) 10 C) 9 D) 844、以下程序段运行结果是________.int x=1,y=1,z=-1;x+=y+=z;printf("%d\n",x<y?y:x);A) 1 B) 2 C) 4 D) 不确定的值45、有以下程序#include <stdio.h>void main( ){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是________.A) 2,1 B) 3,2 C) 4,3 D) 2,-146、运行下面程序时,若从键盘输入数据为"123",则输出结果是_______.#include "stdio.h"void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch (place){ case 3: printf("%d%d%d\n",k,j,i);break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}}A) 123 B) 1,2,3 C) 321 D) 3,2,147、执行下列程序后的输出结果是_______.#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);}A) 4 B) 3 C) 2 D) 148、以下条件表达式中能完全等价于条件表达式if(x)中的x 的是____.A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)49、若运行下面程序时,给变量a输入15,则输出结果是______.#include <stdio.h>void main( ){ int a,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 15 D) 1050、执行下面程序的输出结果是________.#include <stdio.h>void main( ){ int a=5,b=0,c=0;if (a=a+b) printf("****\n");else printf("####\n");}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出****D) 输出####51、为了避免嵌套的if-else语句的二义性,C语言规定else总是与______组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if52、以下程序段__________.x=-1;do{x=x*x;} while (!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误53、对下面程序段描述正确的是_______.int x=0,s=0;while (!x!=0) s+=++x;printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次54、下面程序段的输出结果是_______.x=3;do { y=x--;if (!y) {printf("*");continue;}printf("#");} while(x=2);A) ## B) ##* C) 死循环D)输出错误信息55、下面程序的运行结果是_______.#include<stdio.h>void main( ){ int a=1,b=10;do{ b-=a;a++;} while(b--<0);printf("%d,%d\n",a,b);}A) 3,11 B) 2,8 C) 1,-1 D) 4,956、下面程序段的运行结果是__________.int n=0;while (n++<=2)printf("%d",n);A) 012 B) 123 C) 234 D) 错误信息57、下面程序段的运行结果是________.int x=0,y=0;while (x<15) y++,x+=++y;printf("%d,%d",y,x);A) 20,7 B) 6,12 C) 20,8 D)8,2058、下面程序的运行结果是________.#include<stdio.h>void main(){ int s=0,i=1;while (s<=10){ s=s+i*i;i++;}printf("%d",--i);}A) 4 B) 3 C) 5 D) 659、下面程序段的运行结果是________.for(x=10;x>3;x--){ if(x%3) x--;--x; --x;printf("%d ",x);}A) 6 3 B) 7 4 C) 6 2 D) 7 3 60、下面程序的运行结果是________.#include<stdio.h>void main( ){ int a,b;a=-1;b=0;do {++a;++a;b+=a;} while(a<9);printf("%d\n",b);}A) 34 B) 24 C) 26 D) 2561、下面程序段的运行结果是___________.for(i=1;i<=5;)printf("%d",i);i++;A) 12345 B) 1234 C) 15 D) 无限循环62、下面程序的输出结果是__________.#include<stdio.h>void main( ){ int n=4;while (n--) printf("%d ",n--);}A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 063、以下程序运行后的输出结果是________.#include<stdio.h>void main(){ int i=10,j=0;do{ j=j+1; i--;}while(i>2);printf("%d\n",j);}A) 50 B) 52 C) 51 D) 864、有如下程序#include<stdio.h>void main(){ int x=23;do{ printf("%d",x--);}while(!x);}该程序的执行结果是_______A) 321 B) 23C) 不输出任何内容D) 陷入死循环65、以下程序段的执行结果是_______.int i,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m++;printf("%d\n",m);A) 12 B) 15 C) 20 D) 2566、下面程序的输出结果是___________.#include<stdio.h>void main( ){ int i;for(i=1;i<6;i++){ if (i%2!=0) {printf("#");continue;}printf("*");}printf("\n");}A) #*#*# B) ##### C) ***** D) *#*#*67、下面程序的输出结果是__________.#include<stdio.h>void main( ){ int x=10,y=10,i;for(i=0;x>8;y=++i)printf("%d %d ",x--,y);}A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 168、执行以下程序后,输出的结果是__________.#include<stdio.h>void main( ){ int y=10;do {y--;}while (--y);printf("%d\n",y--);}A) -1 B) 1C) 8D) 069、有如下程序#include<stdio.h>void main( ){ int n=9;while(n>6) {n--;printf("%d",n);}} 该程序段的输出结果是__________.A) 987 B) 876 C) 8765 D) 987670、有如下程序#include<stdio.h>void main( ){ int i,sum=0;for(i=1;i<=3;sum++) sum+=i;printf("%d\n",sum);}该程序的执行结果是___________.A) 6 B) 3 C) 死循环D) 071、以下循环体的执行次数是_______#include<stdio.h>void 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) 072、在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为________.#include <stdio.h>void main( ){ char ch;while ((ch=getchar( ))!='\n'){ if (ch>='A' && ch<='Z') ch=ch+32;else if (ch>='a' && ch<'z') ch=ch-32;printf("%c",ch);}printf("\n");}A) ABCdef B) abcDEF C) abc D) DEF73、下面程序的输出结果是__________.main( ){int i,k=0, a=0, b=0;for(i=1;i<=4;i++){k++;if (k%2==0) {a=a+k; continue;}b=b+k;a=a+k;}printf("k=%d a=%d b=%d\n",k,a,b);}A) k=5 a=10 b=4 B) k=3 a=6 b=4C) k=4 a=10 b=3 D) k=4 a=10 b=474、执行下面程序段后,k的值是_________.int i,j,k;for(i=0,j=10;i<j;i++,j--)k=i+j;A) 9 B) 11 C) 8 D) 1075、以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成绩,当输入负数时结束输入。

VC习题参考答案

VC习题参考答案

VC习题参考答案1.7指针和引用55.已知intd=5,某pd=&d,b=3;求下列表达式的值。

A.某pd某bB.++某pd-bC.某pd++D.++(某pd)答:15,3,5,656.选择填充。

(1)选择正确的说明语句为()。

A.intN['b'];B.intN[4,9];C.intN[][];D.int某N[10];答:B(2)若有定义:inta=100,某p=&a;则某p的值是()。

A.变量p的地址B.变量a的地址值C.变量a的值D.无意义答:C.(3)下述程序的输出结果是()。

#includevoidmain(){inta[5]={2,4,6,8,10};int某p=a,某某q=&p;cout<A.4,4B.2,2C.4,2D.4,5答:B(4)下述程序片段的输出是()。

inta[3][4]={{1,2,3,4},{5,6,7,8}};int某,某p=a[0];某=(某p)某(某p+2)某(某p+4);cout<A.15B.14C.16D.13答:A(5)若有以下定义,则下列对数组引用正确的是()。

int(某q)[3]=newint[2][3];A.q[2][3]B.某qC.某(某q+2)D.某(某(q+2)+3)答:C(6)若要用如下程序片段使指针变量p指向一个存储动态分配的存储单元:float某p;p=(float某)newfloat;则空白处应填入:A.float某B.某floatC省略;D.(float)(7)下列表示引用的方法中,()是正确的。

已知:intm=10;A.int&某=m;B.int&y=10;C.int&z;D.float&t=&m;答:A57.分析下列程序的结果。

#includeint&fun(intn,int[]){int&m=[n];returnm;}voidmain(){int[]={15,4,3,2,1,0};fun(3,)=10;cout<答:1058.用指针作为函数的参数,设计一个实现两个参数交换的函数。

c程序设计第三版习题参考解答(全)

c程序设计第三版习题参考解答(全)

c程序设计第三版习题参考解答(全) C程序设计第三版习题参考解答本文为《C程序设计第三版习题参考解答》的全文内容。

为了更好地适应题目要求,文章将按照解答问题的方式进行分段,每个问题对应一个小节。

以下是各个问题的解答:第一章:C概述和程序设计基本原则1. 什么是计算机程序?计算机程序是一系列指令的集合,用于告诉计算机执行特定的任务。

它由一系列语句组成,每条语句都包含了计算机可以理解和执行的命令。

2. C语言的起源和发展历程是什么?C语言是由贝尔实验室的Dennis Ritchie于20世纪70年代初开发的一种通用高级编程语言。

C语言基于早期的B语言进行了扩展和改进,成为了应用广泛且高效的编程语言。

3. 编译和解释有什么区别?编译是将源代码一次性转换为机器语言的过程。

它将整个源代码文件编译成可执行文件,然后可以直接在计算机上运行。

解释是逐行解析源代码并立即执行的过程。

解释器逐行读取源代码并将其转换为机器代码,然后立即执行转换后的代码。

4. C程序的一般结构是什么样的?C程序的一般结构包括预处理指令、函数声明、全局变量声明、main函数以及其他函数的定义。

预处理指令用于包含头文件、定义宏等。

函数声明用于声明函数的名称和参数。

全局变量声明用于声明全局变量。

main函数是C程序的入口点,也是程序执行的起始位置。

第二章:C基本语法和数据类型1. C中的注释有哪些类型?在C中,注释分为单行注释和多行注释。

单行注释以"//"开头,多行注释以/*开头,以*/结尾。

2. 什么是变量?变量是在程序中用来存储数据的存储区域。

每个变量都有一个名称和一个数据类型,可以通过变量名来引用它所存储的数据。

3. C语言中的常量有哪些类型?C语言中的常量分为整型常量、实型常量、字符常量和字符串常量。

整型常量表示整数值,实型常量表示实数值,字符常量表示单个字符,字符串常量表示一串字符。

4. C语言中的运算符有哪些类型?C语言中的运算符包括算术运算符、关系运算符、逻辑运算符、赋值运算符、自增自减运算符等。

《C语言程序设计基础》教材参考题答案_20140211

《C语言程序设计基础》教材参考题答案_20140211

word完美格式《C语言程序设计基础》教材参考答案包括各单元:一.随堂练习二.单元总结三.单元练习四.实训指导单元一程序设计宏观认识一.随堂练习【随堂练习1-1】1.根据上述示例模仿编程,输入正方形的边长,计算其面积。

#include <stdio.h>void main( ){ int a,s; //数据准备,边长a,面积sprintf("请输入正方形的边长:");scanf("%d",&a); //数据输入s=a*a; //数据计算printf("该正方形的面积为:%d.\n",s);}【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例1.2】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。

答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例1.2】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。

答:函数首部: void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。

【随堂练习1-3】1.在VC++6.0环境中完成【例1.2】程序开发过程。

(略)2.查阅【例1.2】所对应的工程文件夹,了解相关文件的含义。

工程文件夹中:.CPP:用C/C++语言编写的源代码文件。

.DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。

项目文件,文本格式。

.DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpace中。

C复习题(全部答案)

C复习题(全部答案)

C复习题(全部答案)一、C++基础、变量、常量部分试题:(一)单选题8.由C++语言编写的代码程序()A.可直接执行(.e某e才可以直接执行)B.是一个源程序C.经过编译即可执行(经过编译链接才可以执行)9.按照C++语言规定的用户标识符命名规则,不能出现在标识符中的是()A.大写字母10.下列选项中,不能用作标识符的是()A._1234_11.以下选项中合法的用户标识符是()A.long(关键字)12.以下不能定义为用户标识符的是()A.Main13.列定义变量的语句错误的是()A.int_int;14.在C++语言中,非法的字符常量是()A.‘\\t’29.以下程序的输出结果是()voidmain(){intk=11;cout<A.k=11,k=12,k=1141.B.k=11,k=13,k=13D.k=11,k=13,k=bC.k=11,k=013,k=0某bB.‘\\017’C.\D.‘\\某aa’B.doubleint_;C.charFor;D.floatUSA;B._0C._intD.izeof(运算符)B._2TetC.3Dma某D.A.datB._1_2C.int_2_D.2_intB.中划线C.数字字符D.下划线D.经过编译解释才能执行不属于C++语言关键字的是()。

A.intB.breakC.whileD.character42.是C++语言提供的合法关键字的是()。

A.FloatB.ignedC.integerD.Char43.下列说法中,错误的是()。

A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数(二)填空题1.一个C++源程序至少有并且只能有一个main(主)函数。

c语言编程题入门题库及详解答案

c语言编程题入门题库及详解答案

c语言编程题入门题库及详解答案C语言编程题入门题库及详解答案1. 编写一个C程序,实现输入两个整数,输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```2. 编写一个C程序,实现输入一个字符,判断它是大写字母、小写字母还是其他字符。

```c#include <stdio.h>int main() {char ch;printf("请输入一个字符:");scanf("%c", &ch);if (ch >= 'A' && ch <= 'Z') {printf("这是一个大写字母。

\n");} else if (ch >= 'a' && ch <= 'z') {printf("这是一个小写字母。

\n");} else {printf("这不是字母。

\n");}return 0;}```3. 编写一个C程序,实现输入三个整数,找出最大值并输出。

```c#include <stdio.h>int main() {int a, b, c, max;printf("请输入三个整数:");scanf("%d %d %d", &a, &b, &c);max = a;if (b > max) max = b;if (c > max) max = c;printf("最大值是:%d\n", max);return 0;}```4. 编写一个C程序,实现输入一个整数,判断它是否为素数。

c语言题库及答案详解

c语言题库及答案详解

c语言题库及答案详解C语言题库及答案详解C语言,作为一种广泛使用的编程语言,以其高效、灵活和跨平台的特性,在软件开发、系统编程等领域占据着重要地位。

为了帮助学习者更好地掌握C语言,本文将提供一些常见的C语言题目及其详细解答。

1. 基础语法题- 题目:请编写一个C程序,输出"Hello, World!"。

- 答案:以下是一个简单的C程序示例,用于输出"Hello,World!"。

```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```2. 变量与数据类型题- 题目:声明一个整型变量`a`,初始化为10,并打印其值。

- 答案:在C语言中,可以使用`int`关键字来声明整型变量。

以下是实现题目要求的代码。

```c#include <stdio.h>int main() {int a = 10;printf("The value of a is: %d\n", a);return 0;}```3. 控制结构题- 题目:编写一个程序,判断输入的年份是否为闰年。

- 答案:闰年的判断规则是:如果年份能被4整除但不能被100整除,或者能被400整除,则该年为闰年。

```c#include <stdio.h>int main() {int year;printf("Enter a year: ");scanf("%d", &year);if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {printf("%d is a leap year.\n", year);} else {printf("%d is not a leap year.\n", year);}return 0;}```4. 数组与循环题- 题目:编写一个程序,求一个整数数组中所有元素的和。

C语言程序设计(第二版)习题参考答案1

C语言程序设计(第二版)习题参考答案1

C语言程序设计(第二版)习题参考答案1习题1一、判断题1.在计算机中,小数点和正负号都有专用部件来保存和表示。

2.二进制是由0和1两个数字组成的进制方式。

3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。

4.在整数的二进制表示方法中,0的原码、反码都有两种形式。

5.有符号数有三种表示法:原码、反码和补码。

6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。

解:1.F2.T3.T4.T5.T6.T二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是A.原码B.反码C.补码D.移码2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数A.112B.120C.121D.1223.关于ASCII码,在计算机中的表示方法准确地描述是A.使用8位二进制数,最右边一位为1B.使用8位二进制数,最左边一位为1C.使用8位二进制数,最右边一位为0D.使用8位二进制数,最左边一位为04.设在机器字长4位,某=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。

A.某∧Y=1000B.某∨Y=1111C.某⊕Y=0011D.¯=1000Y5.下列叙述中正确的是()。

A.高级语言就是机器语言B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。

A.生成可执行文件B.生成目标文件C.输出运行结果D.自动保存源文件7.下列叙述中不正确的是()。

A.main函数在C程序中必须有且只有一个B.C程序的执行从main函数开始,所以main函数必须放在程序最前面C.函数可以带参数,也可以不带参数。

C++基础1级基础水平测试题

C++基础1级基础水平测试题

C++基础1级基础水平测试题一、单项选择题1.在每个 C++程序中都必须包含有这样一个函数,该函数的函数名为( ) [单选题]A.main(正确答案)B.MAIND. function2.C++语言中的每条基本语句以()作为结束符 [单选题]A、回车符B、;(正确答案)C、。

D、/3.C++中执行该指令cout<<"2+3";正确的结果是() [单选题]A、出错B、5C、2+3(正确答案)D、3+24.C++中运行以下编码其结果是:()return 0;cout<<2+3; [单选题]A、5(正确答案)B、无结果C、2+3D、语法错误5.以下变量命名格式错误的是() [单选题]A、xm_B、2A(正确答案)C、ABCD、nj_26.阅读程序写结果#include <iostream>using namespace std;int main(){cout<<"99+1=";cout<<100;return 0;}最后输出的结果是?() [单选题]A、99+1=B、99+1=100(正确答案)C、99D、1007.运行下面程序会出现的结果是()#include <iostream>using namespace std;int main(){cout<<"23";return 0;} [单选题]A、6B、23(正确答案)C、32D、38.运行下面程序会出现的结果是()#include <iostream>using namespace std;int main(){cout<<(3>4);return 0;} [单选题]A、0(正确答案)B、1C、3>4D、报错,无法运行9.下列()不是非法的标识符。

[单选题]A.3yB.5BC.99ZG2D.p7y(正确答案)10.实验中学的操场,长200米,宽100米,求操场的周长是多少米?括号内应该填入哪个代码?()#include <iostream>using namespace std;int main(){int a,b,c;a=200;b=100;c=_________________ ;cout<<c;return 0;} [单选题]A.abB.a/bC.(a+b)2(正确答案)D.(a+b)/211.int的数据类型是什么?() [单选题]A.整型(正确答案)B.字符型C.浮点型D.双浮点型12.假设a=0;a++;++a;a=?() [单选题]A.a=0B.a=1C.a=2(正确答案)D.a=313.假设a=123,b=456,编写代码a=b;那么a=?() [单选题]A.123B.456(正确答案)D.12345614.倘若想要计算a乘以b的值,下列哪一行代码可以得到正确的值?() [单选题]A.cout<<ab<<endl;(正确答案)B.cout<<"ab"<<endl;C.cout<<axb<<endl;D.cout<<a<<<<b<<endl;15.#include<iostream>using namespace std;int main(){int sum;sum=0;sum=sum+1;sum=sum+2;sum=sum+3;sum=sum+4;out<<"1+2+3+4="<<sum<<endl;return 0;}请问,sum的值是?() [单选题]A.2B.7C.9D.10(正确答案)16.n=n2的简写方式为?( ) [单选题]A.n=2(正确答案)C.2n=D. 2=n17.C++中的单行注释如何编写?() [单选题]A.//(正确答案)B./ /C.///D./18.为了让计算机完成一个完整的任务而编写的一串指令序列称为()。

《浙工大C语言课本习题答案》

《浙工大C语言课本习题答案》

《浙⼯⼤C语⾔课本习题答案》C程序设计习题参考答案习题⼀ (2)习题⼆ (3)习题三 (5)习题四 (8)习题五 (14)习题六 (17)习题七 (20)习题⼋ (26)习题九 (33)习题⼗ (35)习题⼗⼀ (36)习题⼀1. 填空题⑴计算机程序设计语⾔按其发展可分为三类,即机器语⾔、汇编语⾔和⾼级语⾔。

⑵ C程序是由函数构成的,⼀个C程序中⾄少包含 1个main函数。

因此,函数是C程序的基本单位。

⑶ C程序注释是由 /* 和 */ 所界定的⽂字信息组成的。

⑷函数体⼀般包括函数⾸⾏和函数体。

⑸在任何C程序中都必须且只能有⼀个主函数, 主函数名必须为 main 。

2. 判断下列各个叙述的正确与否⑴ C程序的执⾏总是从该程序的main函数开始,在main函数最后结束【√】⑵ C程序的注释部分可以出现在程序中任何位置,它对程序的编译和运⾏不起任何作⽤,但可以增加程序的可读性【√】⑶由“/*”与“*/”界定的注释必须在同⼀⾏【╳】⑷通过了编译、连接的程序就是正确的程序【╳】⑸有计算结果输出的程序⼀定是正确的程序【╳】⑹编译错误是语法错误,运⾏结果错误是逻辑错误【√】⑺编译时在信息窗⼝出现包含“error”的信息,说明程序存在警告性错误【╳】⑻源程序每次修改后,都必须重新编译、连接【√】3. 简答题⑴算法的含义、特点是什么?解答:算法是解题⽅法的精确描述。

有穷性、确定性、有多或零个输⼊、有1或多个输出、有效性。

⑵写出⼀个C程序的基本结构。

由编译预处理命令、注释、1个main和若⼲个⾃定义函数构成,函数格式如下:函数类型函数名(类型标识符形参,类型标识符形参,...){ 类型声明语句; 执⾏语句部分; }⑶写出在你使⽤的计算机系统上,进⼊C环境以及运⾏、调试程序的简要步骤。

⑷输⼊x后计算其正弦值的源程序如下。

编译信息是否表⽰有致命性错误?应如何修改?解答:致命性错误为第6⾏函数sin未声明,应加⼊编译预处理命令 #include4. 编程题⑴请上机调试、运⾏本章课本上C语⾔程序例题4~6(注释部分可以不必输)⑵仿照例6编程,输⼊两个变量后,输出其中较⼤的值。

c语言分章节试题及答案

c语言分章节试题及答案

c语言分章节试题及答案1. 变量声明- 题目:在C语言中,以下哪个选项是正确的变量声明方式?A. int a = 0;B. int a = 0.0;C. int a = "hello";D. int a = 0, b = 0;- 答案:A和D。

2. 数据类型- 题目:以下哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string- 答案:D。

3. 运算符优先级- 题目:在C语言中,以下哪个运算符的优先级最高?A. 乘法B. 加法C. 赋值D. 条件运算符- 答案:A。

4. 函数定义- 题目:以下哪个是正确的C语言函数定义?A. int myFunction(int a, int b) { return a + b; }B. int myFunction(int a, int b) { return a - b; }C. int myFunction(int a, int b) { return a * b; }D. All of the above- 答案:D。

5. 数组初始化- 题目:以下哪个是正确的C语言数组初始化方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[5] = {1, 2, 3};C. int arr[5] = {1, 2, 3, 4};D. int arr[5] = {1, 2, 3, 4, 5, 6};- 答案:A。

6. 指针- 题目:以下哪个选项正确地声明了一个指向整数的指针?A. int *ptr;B. int ptr[];C. int *ptr = 0;D. int ptr = 0;- 答案:A和C。

7. 字符串操作- 题目:以下哪个函数用于比较两个字符串是否相等?A. strcat()B. strcmp()C. strcpy()D. strlen()- 答案:B。

8. 条件语句- 题目:以下哪个是C语言中正确的if语句?A. if (x > 10)x = 20;B. if (x > 10)x = 20C. if (x > 10)x = 20;else x = 10;D. All of the above- 答案:A。

C语言基础知识练习及答案

C语言基础知识练习及答案

一、单项选择题1. C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。

A、”.c”B、“.obj”C、“.exe”D、“.bas”2. 以下选项中不正确的整型常量是_C____。

A、12LB、-10C、1,900D、123U3. 表达式___C___的值是0。

A、3%5B、3/5.0C、3/5D、3<54. 表达式!(x>0||y>0) 等价于__D___。

A、!x>0||!y>0B、!(x>0)||!(y>0)C、!x>0&&!y>0D、!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。

A、4&&3B、+aC、a=b=5D、int(3.14)6. 若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,___B___是正确的输入。

A、2030,40B、20 30 40C、20, 30 40D、20, 30,407. 执行语句printf(”__D____”, 2); 将得到出错信息。

A、%dB、%oC、%xD、%f8. 设变量定义为“int s[ ]="hello\nworld\n";”,则数组s中有__B____个元素。

A、12B、13C、14D、159. 设变量定义为“int a[2]={1,3}, *p=&a[0]+1;”,则*p的值是___B__。

A、2B、3C、4D、&a[0]+110. 若变量已正确定义并赋值,表达式-k++ 等价于__A____。

A、-(k++)B、(-k)++C、-(k+1)D、-(++k)11. 在C 语言程序中,在函数内部定义的变量称为__D____。

A、全局变量B、全程变量C、外部变量D、内部变量12. 若x是整型变量,表达式(x=10.0/4.0) 的值是__D___ 。

C语言考试复习专用三套题附答案(1)

C语言考试复习专用三套题附答案(1)

《C语言程序设计》习题集习题一一、语言基础(共20分,每题2分)(二)说明语句char s=‘\t’,使s包含了几个字符?。

A)1 B)2 C)3 D)说明有错(三)设a=6,b=4,则表达式b*=a+3A)3 B)18 C)(四)若给定表达式(m)?a++:a--和等价。

A)m==0 B)m!=0 C)m=0 D)m=1(五)设有说明语句int a[10],则数组a包括了个数组元素。

A)1 B)9 C)10 D)20(六)以下函数test返回值类型为。

test(int x){ printf(“%f\n”,(float)x);}A)int B)float C)void D)不确定或错误二、阅读下列程序,写出运行结果(共18分,每题3分)[程序1]#include <stdio.h>void main( ){ int a=1,b=4,c=2; 运行结果: 1a=(a+b)/c;printf(“%d \n”,--a);}[程序2]void main ( ){ char c1=67; /*‘A’的ASCII码值为65 */if (‘A’ <=c1 && c1<=’Z’) 运行结果: 67,Dprintf(“%d,%c”,c1,c1+1);else printf(“%c”,c1); }[程序3]viod main ( ){ int a=0, n=5; 运行结果: 1,5,4,3,2,0for ( ; ; ){ a++; n--;printf(“%d,”,a);a=n;if (n==0) break;}printf(“%d”,a);}[程序4]main ( ){ int i, j; 运行结果: 1,2,4,8,16,32,64,128,256,512 static int a[10]={1,1,1,1,1,1,1,1,1,1};for (i=0;i<10;i++)for (j=0;j<i;j++)a[i]=a[i]+a[j];for (i=0;i<10;i++)printf(“%d,”,a[i]);}[程序5]int k=2;f (int m) 运行结果: 6,8{ m+=k;k+=m; 5,9printf(“%d,%d \n”,m,k++);}main ( ){ int i=4;for (i++);printf(“%d,%d \n”,i,k); }[程序6]void main ( ){ static int a[10],i; 运行结果: 1 3 5 7 9for (i=0;i<10;i++)a[i]=i+1;for (i=0;i<10;i=i+2)printf(“%d”,*(a+i));}三、阅读分析下列程序,在处填上适当的内容使程序(或函数)完整(共21分,每空3分)(一)以下程序输出所有大写字母和其对应的ASCII码值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C++基础知识》习题参考答案
一、选择题
1、在C++语言里,自定义的标识符 D
A.能使用关键字且不区分大小写B.不能使用关键字且不区分大小写
B.能使用关键字且区分大小写D.不能使用关键字且区分大小写
2、在C++语言中,070是 A
A.八进制数 B.十进制数C.十六进制数D.非法数
3、设int a= 10,b= 11,c= 12;表达式(a+b)< c && b = = c的值是 B
A.2 B. 0 C.-2 D.1
4、下列符号中, B 不是分隔符
A.;
B. //
C. ( )
D. { }
5、以下_ A __不能用作标识符
A. a6.3
B. _1234
C. GetName
D. b_tree
6、表达式 D _是满足:当c的值为1、3、5三个数时值为“真”,否则值为
“假”的表达式
A. (c=1)||(c=3)||(c=5)
B. (c!=1)&&(c!=3)&&(c!=5)
C. (c==1)&&(c==3)&&(c==5)
D. (c==1)||(c==3)||(c==5)
7、设有说明“int I=10;float x;”,执行“x=5/I”后,x的值为 B
A. 0.5
B. 0
C. 1.0
D. 以上皆否
8、int a=11,b=011;cout<<a++<<’\t’<<++b;输出为 A (提示:注
意变量b以及++运算符的位置)
A.11 10
B.12 11
C.11 12
D.12 10
9、执行以下程序:
char c=0;cout<<c<<‘\n’;输出结果是 D
A.’\0’
B.语法错,不能执行
C.0
D.一个空行
10、设有说明:int x=4,y=6; float f;执行表达式f=(x=4.5)+(y=7.5)后,测x,y,f的值分别为 B
A.4,6,10
B.4,7,11
C.4,6,12
D.4,7,12
11、设以下变量均为int类型,则值不等于7的表达式是 C
A.(x=y=6, x+y, x+1)
B.(x=y=6, x+y, y+1)
C.(x=6, x+1, y=6, x+y)
D.(y=6, y+1, x=y, x+1)
12、设有说明“int a, b, c; a=b=c=5;”,执行语句“b+=++a>b&&++c>b;”,则
a、b、c的值分别是 D
A. 6、6、5
B. 6、1、6
C. 6、7、6
D. 6、6、6
13、在C++语言中,要求操作数必须是整型的运算符是 D
A. /
B. ++
C. !=
D. %
14、若x和y都是int型变量,x=100,y=200,则下面程序片段cout<<(x,y)<<endl; 的输出结果是 A
A.200
B.100
C.100 200
D.输出格式符不够,输出不确定的值
15、设有下列语句“int x; x=’f’-5;”,则x的值为 B
A.a
B.97
C.107
D.64
16、设有说明“int x=5,y=7,z=8;”, 则执行表达式“z+=x++||y++||++z;”后,x,y,z的值为 A (注意表达式的优化问题)
A.6,7,9
B.6,8,10
C.6,8,8
D.6,8,1
二、填空题
1. C++目标程序经__编译和连接_______后生成扩展名为exe的可执行程序文件。

2. 如果要把从键盘上输入的每个字符,包括回车或空格赋给字符变量ch,应该
应执行的语句__ch =cin.get() 或cin.get(ch)___________。

3. sizeof运算符的作用是_求出指定类型或变量所占内存的字节数_____。

4. 已知x为float型,执行语句 (int)x 之后,x为___float_______类型。

5. ‘a’和“a”占用的内存字节数分别为_ 1 ___和___ 2 ___。

6.设有变量说明:int a=3,b=4,c=5;运行表达式(a=c)&&(b=c)后, 表达式的结果
是 1 ,a,b,c的值分别是 5 5 5 。

7. 在C++中,有两种注释方法,分别是: //注释单行 ______和__/*和*/注释多行 ___。

8. 设有语句:int b1,b2;unsigned char c=254;char d=254;b1=c;b2=d; 则b1的值是_____254__________,b2的值是________-2_______。

相关文档
最新文档