当前位置:文档之家› C语言 习题三 参考答案

C语言 习题三 参考答案

C语言 习题三 参考答案
C语言 习题三 参考答案

第三章习题参考答案

一、单项选择题

1、C语言中字符型(char)在内存中的形式存储是()。

A)源码 B)补码 C)反码D)ASCII码

2、运算符有优先级,在C语言中关于运算符优先级的正确叙述是()。

A)所有单目运算的级别相同

B)单目运算高于双目运算

C)赋值运算级别最低

D)求余运算比乘除运算级别高

3、C语言并不是非常严格的算法语言,在以下关于C语言的不严格的叙述中,错误的说法是()。

A)任何不同数据类型都不可以通用

B)有些不同类型的变量可以在一个表达式中运算

C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型

D)同一个运算符号在不同的场合可以有不同的含义

4、以下选项中属于C语言的数据类型是()。

A)复数型 B)逻辑型C)双精度型 D)集合型

5、在C语言中,int、char和short三种类型数据所占的内存()。

A)均为2个字节 B)由用户自己定义

C)由所用机器的字长决定 D)是任意的

6、下列常数中不能作为C语言的常量的是()。

A)0xa5 B)2.5e-2 C)3e2 D)0582

7、设int类型的数据长度为2字节,则unsigned int类型数据的取值范围是()。

A)0至255 B)0至65535 C)-256至255 D)-32768至32767

8、在C语言中,数字029是一个()。

A)八进制数 B)十六进制数 C)十进制D)非法数

9、下列可以正确表示字符型常数的是()。

A)”a”B)'\t’ C)”\n” D)297

10、以下错误的转义字符是()。

A)'\\’ B)'\'’ C)'\81’ D)'\0’

11、C语言中整数-8在内存中的存储形式是()。

A)1111 1111 1111 1000 B)1000 0000 0000 0000

C)0000 0000 0000 1000 D)1111 1111 1111 0111

12、已知 int i; float f; 正确的语句是()。

A)(int f)%i B)int(f)%i C)int(f%i) D)(int)f%i

13、已知:char a; int b;float c; double d; 执行语句c=a+b+c+d; 后,变量c的数据类型是()。

A)int B)char C)float D)double

14、已知:int i,a;执行语句“i=(a=2*3,a*5),a+6;后,变量i的值是()。

A)6 B)12 C)30 D)36

15、已知:int i=5;执行语句i+= ++i;i的值是()。

A)10 B)11 C)12 D)A,B,C答案都不对

16、字符串”\\ \22a,0\n”的长度是()。

A)8 B)7 C)6 D)5

17、已知:char c='A';int i=1,j;执行语句j=!c&&i++;则i和j的值是()。

A)1,1 B)1,0 C)2,1 D)2,0

18、已知:int x=1,y=2,z;则执行z=x>y?++x:++y;则z的值为()。

A)1 B)2 C)3 D)4

19、为了求出s=10!的值,则变量s的类型应当为()。(10!=3628800)

A)int B)unsigned C)long D)以上三种类型均可以

20、已知:float x=1,y;则 y= ++x* ++x的结果为()。

A)y=9 B)y=6 C)y=1 D)表达式是错误的

21、已知“int a=4,b=5,c;”,则执行表达式“c=a=a>b”后变量a的值为()。

A)0 B)1 C)4 D)5

22、已知:char w;int x;float y;double z;则表达式为为w*x+z-y的结果的类型是()。

A)float B)char C)int D)double

23、选出使变量i的运行结果为4的表达式()。

A)int i=0,j=0; B)int i=1,j=0;

(i=3,(j++)+i) j=i=((i=3)*2);

C)int i=0,j=1;D)int i=1,j=1;

(j==1)?(i=1):(i=3);i+=j+=2;

24、已知:int x;则使用逗号运算的表达式“(x=4*5,x*5),x+25”的结果为( 1 ),变量x的值为( 2 )。

(1)A)20 B)100 C)表达式不合法D)45

(2)A)20 B)100 C)125 D)45

25、执行下面的语句后x的值为()。

int a=14,b=15,x;

char c='A';

x=sizeof(c);

A)A B)41H C)0 D)1

26、若定义了int x;则将x强制转化为双精度类型应该写成()。

A)(double)x B)x(double) C)double(x) D)(x)double

二、填空题

1、负数在计算机中是以______形式表示。(补码)

2、双精度实数的表示范围是___________,其有效位数是________。(-10308~-10-308 ,10-308~10308,15 ~ 16 位)

3、一个整型数与一个实型数的运算结果是________型。(实型)

4、“=”是________运算符,其结合性是由______。(赋值从右向左)

5、表达式的运算对象可以是常量、变量和________。(函数调用)

6、已知在ASCII代码中,字母A的序号为65,以下程序的输出结果是________。

(65,89)

#include "stdio.h"

main()

{char c1='A',c2='Y';

printf("%d,%d\n",c1,c2);

}

三、应用题

1、下面程序的输出结果试__________。(10 9)

main()

{int x=10,y=10;

printf("%d %d\n",x--,--y);

}

2、分析下面程序执行后的结果。

main()

{int a=3,b=7;

printf(“%d\n”,a++ + ++b); (11)

printf(“%d\n”,b%a); (0)

printf(“%d\n”,a/b); (0)

printf(“%d\n”,a+b); (12)

printf(“%d\n”,a*=b+1); (36)

}

3、C语言中,怎样区分求负与减法运算?怎样区分取地址运算和按位与运算?答:区别是:求负:单目,右结合

减法:双目,左结合

取址:单目,右结合

按位与:双目,左结合

C语言习题及标准答案

习题一 【习题1-1】C语言源程序最多可能由________________部分组成? A) 预处理部分B)变量说明部分 C) 函数原型声明部分D)函数定义部分 【习题1-2】一个完整的C语言源程序最少必须有_______。 A)若干个主函数B)若干个函数 C)且只能有一个主函数D)一个函数 【习题1-3】C语言以函数为源程序的基本单位最主要有利于_______。 A)程序设计结构化B)程序设计模块化 C)程序设计简单化D提高程序设计有效性 【习题1-4】要使得C语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过____________________________________ ___。 A)编辑和链接B)编译和链接 C)修改和运行D运行并输入数据 【习题1-5】选择一个C语言集成开发环境并启动它,然后分别输入【例1-1】、【例1-2】、【例1-3】的源程序,依次编译、链接、运行,看看能否达到预想的结果?从中了解程序的开发过程。 习题二 一、单项选择题 【习题2-1】已知’A’的ASCII代码是65,以下程序的输出结果是( )#include "stdio.h" main( ) { int c1=65,c2=66; printf("%c,%c",c1,c2); } A.因输出格式不合法,输出错误信息B.65,66 C.A,B????D.65,66 【习题2-2】若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是() A. a=a+b,b=a-b,a=a-b;??B.t=a,a=b,b=t; C.a=t,t=b,b=a; ??? D. t=b;b=a;a=t; 【习题2-3】若k是整型变量,则以下程序段的输出是( ) k=-8567; printf (“|%d|\n”,k);

C语言第三章复习题及答案

C语言复习题1 一、选择题 1.C语言提供的合法的数据类型关键字是(B)。 (A)Double (B)short (C)integer (D)Char 2.在C语言中,合法的长整型常数是(A )。 (A)0L (B)4962710 (C)0.054838743 (D)2.1869e10 3.若有说明和语句: int a=5; a++; 此处表达式a++的值是( C)。 (A)7 (B)6 (C)5 (D)4 4.C语言中最简单的数据类型包括(B )。 (A)整型、实型、逻辑型 (B)整型、实型、字符型 (C)整型、字符型、逻辑型 (D)整型、实型、逻辑型、字符型 5.以下说法中正确的是( C)。 (A)C语言程序总是从第一个定义的函数开始执行 (B)在C语言程序中,要调用的函数必须在main()函数中定义 (C)C语言程序总是从main()函数开始执行 (D)C语言程序中的main()函数必须放在程序的开始部分 6.在C语言中,要求运算数必须是整型的运算符是( A )。 (A) % (B) / (C) < (D) ! 7.以下有4个用户标识符,其中合法的一个是(C )。 (A) for (B) 4d (C) f2_G3 (D) short 8.假定x和y为double型,则表达式x=2,y=x+3/2的值是( D )。 (A) 3.500000 (B) 3 (C) 2.000000 (D) 3.000000 9.下面程序的输出是( C )。 (A) 0 (B) 1 (C) 3 (D) 不确定的值 main() { int x=10,y=3; printf("%d\n",y=x/y);} 10.执行下面程序中输出语句后,a的值是( C )。 (A) 65 (B) 20 (C) 15 (D) 10 main() {int a; printf("%d\n",(a=3*5,a*4,a+5));} 11.C语言提供的合法的关键字是( D )。 (A)Switch (B)cher (C)Case (D)default 12.在C语言中,合法的字符常量是( B )。 (A)'\084' (B)'\x43' (C)'ab' (D)"\0" 13.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是( C )。 (A)1 (B)2 (C)2.0 (D)2.5 14.以下叙述中错误的是( B )。 (A)算法正确的程序最终一定会结束 (B)算法正确的程序可以有零个输出 (C)算法正确的程序可以有零个输入

C语言题库及答案

C语言题库及答案

姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项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.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 8、下列四组字符串中都可以用作C语言程序中的标识符的是( A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

C语言程序设计第三版习题库答案

C 语言程序设计(第三版)习题库 1、设圆半径r=,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 #include<> main(){ floatr,h,C1,Sa,Sb,Va,Vb; scanf(__”%f ”__,&r); scanf(”%d ”,__&h _);; C1=2**r; Sa=*r*r; Sb=4*Sa; Va=4**r*r*r/3; Vb=Sa*h; printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb ); } 2、输入一个华氏温度,要求输出摄氏温度。公式为c=5(F-32)/9 输出要求有文字说明,取位2小数。 #include<> main(){ floatF,c; scanf("%f",&F); ____c=5*(F-32)/9______; printf("c=%.2f",c); } 3、有一函数:?? ???≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。 #include<> main(){ intx,y; printf("输入x :"); scanf("%d",&x); if(x<1){/*x<1*/ y=x; printf("x=%3d,y=x=%d\n",x,y);

}elseif(____x<10_______){/*1≤x-10*/ _____y=2*x-1_______; printf("x=%3d,y=2*x-1=%d\n",x,y); }else{/*x≥10*/ y=3*x-11; printf("x=%3d,y=3*x-11=%d\n",x#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d\n",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }scanf("%d",&x);

C语言练习题-第三章参考答案(已勘误)

C语言练习题---第三章 1、有以下程序 #include<stdio.h> main() {short c=124; c=c_______; printf(“%d\n”,C); } 若要使程序的运行结果为248,应在下划线处填入的是 A)>>2 B)|248 C)&0248 D)<<1 2、以下程序运行后的输出结果是2008。 #include<stdio.h> main() {int a=200,b=010; printf(”%d%d\n”,a,b); } 3、有以下程序 #include<stdio.h> main() {int x,y; Scanf(“%2d%ld”,&x,&y);printf(“%d\n”,x+y); } 程序运行时输入:程序的运行结果是34579。 4、有以下程序 #include Void main() { char a,b,c,d; scanf(”%c%c”,&a,&b); c=getchar(); d=getchar(); printf(”%c%c%c%c\n”,a,b,c,d); } 当执行程序时,按下列方式输入数据(从第一列开始,代表回车,注意:回车是一个字符) 12

34 则输出结果是:() A、1234 B、12 C、12 D、12 3 34 5、有以下程序,其中k的初值为八进制数 #include main() {int k=011; printf(”%d\n”,k++); } 程序运行后的输出结果是D (A)12 (B)11 (C)10 (D)9 6、有以下程序(暂不做) #include void fun (char*c,int d) {*c=*c+1;d=d+1; printf(”%c,%c,”,*c,d); } main() {char b=’a’,a=’A’; fun(&b,a); printf(”%c,%c\n”,b,a); } 程序运行后的输出结果是A A)b,B,b,A B)b,B,B,A C)a,B,B,a D)a,B,a,B 7、以下程序 #include #define SUB(a) (a)-(a) main() {int a=2,b=3,c=5,d; d=SUB(a+b)*c; printf(”%d\n”,d); } 程序运行后的结果是C A)0 B)-12 C)-20 D)10 8、有以下程序 #include main()

C语言考试题库及答案复习整理

C 语言理论上机考试选择题部分(共200题) 1、下面程序的输出是___D______ #include 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=b 2、在下列选项中,不正确的赋值语句是__D______. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C 语言字符常量是______A____. A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9的值是 ________D____. A) true B) 非零值 C) 0 D) 1 5、C 语言提供的合法的数据类型关键字是_____B____. A) Double B) short C) integer D) Char 6、字符(char)型数据在微机内存中的存储形式是__D__. A) 反码 B) 补码 C) EBCDIC 码 D) ASCII 码 7、C 语言程序的基本单位是_____C______. A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句

a+=a-=a*a 后,a 的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是____B______. #include void main() {int x=023; printf("%d\n",--x); } A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是_____C____. #include void main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 3 D) 不确定的值 12、已知字母A 的ASCII 码为十进制的65,下面程序的输出是______A_____. #include 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) 不确定的值 13、若要求在if 后一对圆括号中表示a 不等于0的关系,则能正确表示这一关系的表达式为____D__. A) a<>0 B) !a C) a=0 D) a

C语言 习题三 参考答案

第三章习题参考答案 一、单项选择题 1、C语言中字符型(char)在内存中的形式存储是()。 A)源码 B)补码 C)反码D)ASCII码 2、运算符有优先级,在C语言中关于运算符优先级的正确叙述是()。 A)所有单目运算的级别相同 B)单目运算高于双目运算 C)赋值运算级别最低 D)求余运算比乘除运算级别高 3、C语言并不是非常严格的算法语言,在以下关于C语言的不严格的叙述中,错误的说法是()。 A)任何不同数据类型都不可以通用 B)有些不同类型的变量可以在一个表达式中运算 C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D)同一个运算符号在不同的场合可以有不同的含义 4、以下选项中属于C语言的数据类型是()。 A)复数型 B)逻辑型C)双精度型 D)集合型 5、在C语言中,int、char和short三种类型数据所占的内存()。 A)均为2个字节 B)由用户自己定义 C)由所用机器的字长决定 D)是任意的 6、下列常数中不能作为C语言的常量的是()。 A)0xa5 B)2.5e-2 C)3e2 D)0582 7、设int类型的数据长度为2字节,则unsigned int类型数据的取值范围是()。 A)0至255 B)0至65535 C)-256至255 D)-32768至32767 8、在C语言中,数字029是一个()。 A)八进制数 B)十六进制数 C)十进制D)非法数 9、下列可以正确表示字符型常数的是()。 A)”a”B)'\t’ C)”\n” D)297 10、以下错误的转义字符是()。 A)'\\’ B)'\'’ C)'\81’ D)'\0’ 11、C语言中整数-8在内存中的存储形式是()。 A)1111 1111 1111 1000 B)1000 0000 0000 0000 C)0000 0000 0000 1000 D)1111 1111 1111 0111 12、已知 int i; float f; 正确的语句是()。 A)(int f)%i B)int(f)%i C)int(f%i) D)(int)f%i 13、已知:char a; int b;float c; double d; 执行语句c=a+b+c+d; 后,变量c的数据类型是()。 A)int B)char C)float D)double 14、已知:int i,a;执行语句“i=(a=2*3,a*5),a+6;后,变量i的值是()。 A)6 B)12 C)30 D)36 15、已知:int i=5;执行语句i+= ++i;i的值是()。 A)10 B)11 C)12 D)A,B,C答案都不对

C语言第三章习题带答案-2012.10.9更新

练习3-1答案 一、选择题 1.在C语言库函数中,可以输出double型变量x值的函数是( D )。 A.getchar B.scanf C.putchar D.printf 2.执行语句:printf("The program\'s name is c:\\tools\book.txt");后输出是( D )。 A.The program's name is c:tools book.txt B.The program's name is c:\tools book.txt C.The program's name is c:\\tools book.txt D.The program's name is c:\toolook.txt 3.以下程序的输出结果是( D )。(注:□表示空格) main() {printf("\n*s1=%15s*", "chinabeijing"); printf("\n*s2=%-5s*", "chi"); } A.*s1=chinabeijing□□□* B.*s1=chinabeijing□□□*s2=**chi* *s2=chi□□* C.*s1=*□□chinabeijing* D.*s1=□□□chinabeijing* *s2=□□chi* *s2=chi□□* 4.选择程序的运行结果,①是( B )、②是( B )、③是( D )、④是( C )。 #include main() {int a=-10, b=-3; printf("%d\n", a%b); /*输出①*/ printf("%d\n", a/b*b); /*输出②*/ printf("%d\n", -a%b); /*输出③*/ printf("%d\n", a-=b+++1); /*输出④*/ } ①A.-2 B.-1 C.0 D.1 ②A.-10 B.-9 C.-8 D.0 ③A.-2 B.-1 C.0 D.1 ④A.-10 B.-9 C.-8 D.-7 5.以下C程序正确的运行结果是( D )。(注:□表示空格) main() {int y=2456; printf("y=%3o\n", y); printf("y=%8o\n", y); printf("y=%#8o\n", y); } A.y=□□□2456 B.y=□□□4630 y=□□□□□□□□2456 y=□□□□□□□□4630 y=#########2456 y=#########4630

C语言习题级答案3

测试题3 1.C语言中不合法的字符常量是C A、’\65’ B、’\xff’ C、’\028’ D、’&’ 2.具有相同类型的指针变量p与数组a,不能进行的操作是(C)。 A、p=&a[0]; B、p=a; C、p=&a; D、*p=a[0]; 3.若有x=22,y=26,z=0;,则执行下面语句后,z的输出结果是(B ) z=x>y?x:y A、72 B、26 C、48 D、22 4.对于建立函数的目的,正确的说法是D A、提高程序的执行效率 B、减少程序的篇幅

C、减少程序文件所占的内存 D、提高程序的可读性 5.有定义:char*p1,*p2;则下列表达式中正确合理的是C A、p1/=5 B、p1+=5 C、p1=&p2 D、p1*=p2 6.以下程序的运行结果是(B)。 main() { int i=1,sum=0; while(i<10) sum=sum+1;i++; printf("i=%d,sum=%d",i,sum); } A、i=10,sum=9 B、运行出现错误 C、i=2,sum=1 7.若变量已正确定义且k 的值是4,计算表达式( j =4, k--) 后,j和k的值为(C) A、j=4, k=4 B、j=3, k=3 C、j=4, k=3 D、j=3, k=4

8.给出以下定义: char x[ ]="abcdefg"; char y[ ]={'a','b','c','d','e','f','g'}; 则正确的叙述为(A) A、数组x的长度大于数组y的长度 B、数组x和数组y等价 C、数组x和数组y的长度相同 D、数组x的长度小于数组y的长度 9.在下述程序中,判断i > j共执行了多少次 C #include main() { int i = 0, j = 10, k = 2, s = 0; for( ; ; ) { i += k; if(i > j) { printf(“%d\n”, s); break; }

c语言习题及答案

第一章1.1 题目内容: 使用printf()在屏幕上输出hello world! 提示: #include int main() { printf("hello world!\n"); return 0; } 输入格式: 无 输出格式: 输出提示信息:"hello world!\n" 输入样例: 输出样例: hello world! #include int main() { printf("hello world!\n"); return 0; } 1.2 在屏幕上输出多行信息(3分) 题目内容: 使用printf()函数在屏幕上输出以下多行信息: hello world! hello hit! hello everyone! 提示: 在printf()函数中转义字符‘\n’表示换行。

输入格式: 输出格式: 输出提示信息: "hello world!\n" "hello hit!\n" "hello everyone!\n" 输入样例: 输出样例: hello world! hello hit! hello everyone! #include int main() { printf("hello world!\n"); printf("hello hit!\n"); printf("hello everyone!\n"); return 0; } 1.3 计算半圆弧的周长及半圆面积(3分) 题目内容: 编程并输出半径r=5.3的半圆弧的周长及该半圆的面积,的取值为3.14159。要求半径r和必须利用宏常量表示。输入格式: 无 输出格式: 半圆的面积输出格式: "Area=%f\n" 半圆弧的周长输出格式: "circumference=%f\n" 输入样例: 输出样例: Area=44.123632 circumference=16.650427 #include #define PI 3.14159 #define R 5.3 int main() { printf("Area=%f\n", R*R*PI/2); printf("circumference=%f\n", 2*R*PI/2); return 0; }

C语言程序设计程序填空题库及答案

程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); }

【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言谭浩强版本第三章课后练习题答案

第三章课后练习题 一、单项选择题 1.根据C语言的语法规则,不能做变量名的是: A)do B)Name C)R5 D)_exam 2.下列四组选项中,全是C语言关键字的选项是:感觉没有答案 A)define IF type B)getc char printf :printf是函数名 C)include case scanf :同上 D)while go pow :同上 3.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符: A)必须为字母 B)必须为下划线 C)必须为字母或下划线 D)可以是字母、数字和下划线中任一种字符 4.在C语言中,合法的字符常量是: A) 3 B)‘S’ C)'ab' D)"A" 5.若已定义x和y为double类型,则表达式:x=1,y=x+3/2中y的值是: A) 1 B) 2 C) 3 D) 2.5 6.C语言提供的不合法的数据类型关键字是: A)double B)short C)integer D)char 7.合法的C语言中,合法的字符串是: A)'\t' B)"A" C)‘a’ D)‘a\t’ 8.执行语句int a=5; a++;后,a的值是: A)7 B) 6

C) 5 D) 4 A) 9.以下选项中属于C语言的数据类型是: A)复合型 B)双精度型 C)数学型 D)集合型 10.Vc6.0下各种基本数据类型的存贮空间正确的长度排列是: A)int< Char<=float

c语言习题答案

实验一 (1)编程求37+29的值,实习VC环境。 #include void main() { int a,b,sum; a=37; b=29; sum=a+b; printf("sum=%d",sum); } (2)从键盘输入三个整数,求出最大数并输出。 #include void main() { int a,b,c,y; int max(int x,int y); printf("input a,b,and c:"); scanf("%d,%d,%d",&a,&b,&c); y=max(a,b); y=max(y,c); printf("\nmax=%d\n",y); } int max(int x,int y) { int z; if(x>y) z=x; else z=y; return(z); } (3)通过上机实践,运行下列程序并分析输出结果。 A 程序代码 #include void main() { char ch='a'; printf("%c对应的ASCII码是:%d\n",ch,ch); } 程序输出结果:a对应的ASC||码是:97

B 程序代码 #include void main() { int a=168; float b=123.456; float x=35.567,y; printf("a=%5d\n",a); printf("a=%-5d\n",a); printf("b=%6.2f\n",b); printf("b=%e\n",b); y=(int)(x*100+0.5)/100.0; printf("x=f,y=%f\n",x,y); } 程序输出结果: a=168 a=168 b=123.46b=1.234560e+002 x=f,y=35.567001 C程序代码 #include void main() { int a=168; printf("十进制数%d对应的八进制数是%o\n",a,a); printf("十进制数%d对应的十六进制数是%x\n",a,a); } 程序输出结果: 十进制数168对应的八进制数是250 十进制数168对应的十六进制数是a8

c语言第三、四章(习题册答案)

第三章数据类型、运算符和表达式 一、选择题: 1、以下选项中,不正确的C 语言浮点型常量是(C)。 A. 160. B. 0.12 C. 2e4.2 D. 0.0 2、以下选项中,(D)是不正确的C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" 3、在C 语言中,字符型数据在计算机内存中,以字符的(C)形式存储。 A. 原码 B. 反码 C. ASCII 码 D. BCD码 4、若x、i、j和k都是int型变量,则计算下面表达式后,x的值是(C)。 x=(i=4,j=16,k=32) A. 4 B. 16 C.32 D.52 5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 6、表达式!x||a==b 等效于(D)。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) 7、设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是(B)。 A. 0,0 B. 0,1 C. 1,0 D. 1,1 8、设有语句int a=3;,则执行了语句a+=a-=a*=a;后,变量a 的值是(B)。 A. 3 B. 0 C. 9 D. -12 9、在以下一组运算符中,优先级最低的运算符是(D)。 A. * B. != C. + D. = 10、设整型变量i 值为2,表达式(++i)+(++i)+(++i)的结果是(B)。 A. 6 B. 12 C. 15 D. 表达式出错 11、若已定义x 和y为double 类型,则表达式x=1,y=x+3/2 的值是(C)。 A. 1 B. 2 C. 2.0 D. 2.5 12、设a=1,b=2,c=3,d=4,则表达式:a10 && a<15 D. !(a<=10) && !(a>=15) 14、设f是实型变量,下列表达式中不是逗号表达式的是(D)。 A. f= 3.2, 1.0 B. f>0, f<10 C. f=2.0, f>0 D. f=(3.2, 1.0) 15、表达式18/4*sqrt(4.0)/8值的数据类型是(C)。 A. int B. float C. double D. 不确定 16、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句 C2=’A’+’6’-‘3’;后c2中的值是(A)。 A. D B. 68 C. 不确定的值 D. C 17、以下用户标识符中,合法的是(B)。 A. int B. nit C. 123 D. a+b 18、C 语言中,要求运算对象只能为整数的运算符是(A)。

大学C语言考试题库及答案

精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 大学C语言考试题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题库吧。加油! 一单项选择题库 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项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.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C )。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

C语言习题册答案集

第1章绪论 一、选择题 1~5 CABCD 6~10 BDCBC 11~15 AADCC 二、程序填空题 1、一个C语言程序是由函数组成的。 2、C源程序的后缀名为 3、在C程序中,main()函数最多有 1 个。 4、一个C语言程序总是从主函数/main( ) 开始执行。 5、在C语言里输入是由 scanf 函数实现,输出是由 printf 函 数实现。 6、C语言中,当复合语句多于一条时,要求有一对 { } 括号。 7、一个C源程序必须经过_ 编译__和_链接__生成exe文件才能运行 8、在一个C程序中注释部分两侧的分界符分别为_/*_____和_*/___ 9、编写计算机所程序所使用的语言称为__程序设计语言______。 10、程序设计语言的发展经历了三个阶段__机器语言__、_汇编语言_ 和__高级语言__

第2章基本数据类型及顺序结构程序设计 一、选择题 01~05 ACDDA 06~10 ACAAC 11~15 BDBBC 16~20 DABAA 21~25 DBDAA 26~30 ADDCB 31~35 BDCAB 二、程序填空题 1、__基本数据类型、_构造类型___ 和___其它类型_______。 2、 4 、 4 、 8 、 1 。 3、 double 4、 x<-5||x>5或 abs(x)>5 5、 y%2==1 或y%2!=0 6、 x%3==0&&x%7==0或x%21==0 , 7、 10 , 10 。 8、printf(“****a=%d, b=%d****”,a,b) 。 9、a:b ; c:t1 ; 10、 x%10 , x/10%10 ; 三、程序阅读题 1、 G 。 2、 2, 1 。 3、 0 。 4、 16 。 5、2,50 。 6、 b 。 7、 3 。 8、10,20,0 。 9、 2, 。 10、67, e 。

c语言程序设计第三章课后答案

/*习题3 2*/ #include main() { int rate; double salary,tax; printf("enter salary:\n"); scanf("%lf",&salary); if(salary<=850) rate=0; else if(salary>850&&salary<=1350) rate=5; else if(salary>1350&&salary<=2850) rate=10; else if(salary>2850&&salary<=5350) rate=15; else rate=20; tax=rate*(salary-850)/100; printf("tax=%.2lf\n",tax); } /*习题3 4*/ #include main() { int n,i,A=0,B=0,C=0,D=0,E=0; double grade,sum=0,ave; printf("enter n:\n"); scanf("%d",&n); printf("enter n ge grade\n"); for(i=1;i<=n;i++) { scanf("%lf",&grade); sum=sum+grade; if(grade>=90&&grade<=100) A=A+1; else if(grade>=80&&grade<=89) B=B+1; else if(grade>=70&&grade<=79) C=C+1; else if(grade>=60&&grade<=69) D=D+1; else E=E+1;

C语言函数题库及答案

C语言函数题库及答案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

第六部分函数 一、单项选择题 1.C语言中的函数返回值的类型是由(D)决定 A.return语句中的表达式B.调用函数的主调函数 C.调用函数时临时D.定义函数时所指定的函数类型 2.下面不正确的描述是(B)。 A.调用函数时,实参可以是表达式 B.调用函数时,实参和形参可以共用内存单元 C.调用函数时,将形参分配内存单元 D.调用函数时,实参与形参的类型必须一致 3.在C语言中,调用一个函数时,实参变量和形参变量之间的数据传递是 (D) A.地址传递B.值传递 C.由实参传递给形参,并由形参传回给实参D.由用户指定传递方式 4.下面的函数调用语句中含有(A)个实参 inta,b,c; intsum(intx1,intx2); …… total=sum((a,b),c); A.2B.3C.4 D.5 5.在C语言中(C) A.函数的定义可以嵌套,但函数的调用不可以嵌套

B.函数的定义和调用均不可以嵌套 C.函数的定义不可以嵌套,但是函数的调用可以嵌套 D.函数的定义和调用均可以嵌套 6.关于C语言中的return语句正确的是(C) A.只能在主函数中出现 B.在每个函数中都必须出现 C.可以在一个函数中出现多次 D.只能在除主函数之外的函数中出现 7.两个形参中,第一个形参为指针类型、第二个形参为整型,则对函数形参的说明有错误的是(D) (floatx[],intn) (float*x,intn) (floatx[10],intn) (floatx,intn) 8.在C语言中,函数的数据类型是指(A) A.函数返回值的数据类型 B.函数形参的数据类型 C.调用该函数时的实参的数据类型 D.任意指定的数据类型 9.已知如下定义的函数: fun1(a) {printf("\n%d",a); } 则该函数的数据类型是(C)

c语言编程例题及答案

实验报告三 (四学时) 2.1 实验目的 (1)掌握函数的定义和调用; (2)了解函数间的参数传送; 2.2 基础实验 【题目3-1】编写函数实现将输入的字母转换成大写字母(若输入小写则转换,大写字母直接输出,其他字符请输出提示“请输入字母”)。 算法分析: 1、输入:通过键盘接收一个字符; 2、条件判断:调用判别函数 3、函数功能为:蒋所输入字符进行判别处理,若输入小写则转换,大写字母直接输出,其他字符请输出提示“请输入字母” 4、程序结束。 【实验3-1】代码及运行结果:

【题目3-2】从键盘输入若干个同学计算机课程期末考试成绩(学生人数可由用户输入),求该课程的期末成绩的平均分并输出。 函数功能要求:实现若干(例如5名)同学的的期末成绩输入,并统计出平均分。 算法分析: 1、输入:通过键盘接收同学个数; 2、调用求平均分函数 3、输出平均成绩 4、程序结束。 【实验3-2】代码及运行结果: 【题目3-3】请用函数编写程序实现:计算3 到100 之间所有素数的平方根之和,并输出。s=148.874270。

算法分析: 1、编写函素数判别函数,确定返回标记,如果是素数返回1,否则返回0 2、编写主函数,用一重循环遍历100以内所有数据 2.1、通过素数判别函数对循环的数据进行是否为素数的判别 2.2、返回判别为真的整数,并输出 3、程序结束。 【实验3-3】代码及运行结果: #include #include int Prime(int x) { int i ; if(x<=1) return 0; for(i=2;i<=x-1;i++) { if(x%i==0) { return 0; } } return 1; } int main() { double i,sum; i=3; sum=0; while(i<=100) { if(Prime(i)) { sum=sum+sqrt(i); } else { sum=sum+0; } i++; } printf("sum=%f\n",sum); return 0; }。

相关主题
文本预览
相关文档 最新文档