当前位置:文档之家› C语言书面作业1 (1) 2

C语言书面作业1 (1) 2

C语言书面作业1 (1) 2
C语言书面作业1 (1) 2

书面作业1(数据类型、变量、输入/输出、运算符与表达式、选择结构、循环结构)

一、判断题:在正确的说法前面填写T,在错误的说法前面填写F(每题1分)[得分: ] ()1. C语言程序中,注释越多越好。

()2. C语言程序中的注释,不会影响程序的执行速度。

()3. C语言规定,在一个源程序中,main函数的位置必须在最开始。

()4. 标识符中可以出现下划线,但它不可以放在标识符的开头。

()5. C语言规定标识符只能由字母、数字和小数点三种字符组成。

()6. unsigned 和void 在C语言中都是保留字。

()7. 在C语言中,变量名越短越好。

()8. 在C语言中,使用短的变量名可以节省程序执行时的内存消耗。

()9.字符型变量用来存放字符常量,且只能存放2个字符。

()10. printf函数是一个标准库函数,它的函数原型在头文件stdio.h中。

()11. scanf函数是一个标准库函数,它的函数原型在头文件string.h中。

()12. printf 是 C 语言的输出语句。

()13. 在printf 函数中,输出项可以是任意合法的表达式。

()14. C 语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。

()15. C语言中,整型数运算速度快,没有误差,应该优先使用。

()16. C语言中,浮点数运算存在误差。不宜使用浮点数做相等运算。

()17. C语言中,不允许将一个浮点数赋值给一个整型变量。

()18. C语言中,不能将整数值赋值给一个字符型变量。

()19. C语言中,不能将一个字符常数赋值给一个整型变量。

()20. C语言中,不同类型的数据对象不能出现在一个表达式中。

()21. C语言中可以把一个字符串赋给一个字符变量。

()22. 在C语言中,模运算(相除后取余数,运算符%)要求参加运算的数必须是整型。()23. 逻辑运算符的优先级别高于算术运算符。

()24. 把k1、k2定义成整型变量并赋初值0的定义语句是:int k1 = k2 = 0;

()25. C语言中,可以在定义变量的同时使变量初始化。

()26. C语言中,算术、关系、逻辑及赋值表达式都有一个值。

()27. 或(||)运算参与运算的两个量都为1时,结果才为1。

()28. 若变量已正确定义,则x1=26.8%3是一个正确的赋值表达式。

()29. 在执行了赋值表达式a = b 后,b中的值将存入a中,且b的值不变。

()30. x *= y + 8 等价于x = x * (y + 8)。

()31. 在进行赋值转换时,变量的类型被自动转换为赋值号右边的表达式值的类型。()32. 在标准C中,运算符"="的作用是判断两个运算数是否相等。

()33. C语言中,goto语句是常用的重要语句。

()34. 嵌套的if语句所实现的功能,也可以用嵌套的switch语句实现。

()35. C语言if语句只能根据关系或逻辑表达式的结果进行选择。

()36. C语言switch语句不能根据浮点型数值进行分支转移。

()37. 用switch语句实现的分支转移,一定可以用嵌套的if语句实现。

()38. for(表达式1;;表达式3)可理解为for(表达式1;1;表达式3)。

()39. 循环语句嵌套的层数越多,说明程序设计技巧和水平越高。

()40. 程序中无限循环会引起死机,C语言程序不应有无限循环。

二、选择题: 在四个选项中选择最合适的一个选项填写在上(每题1.5分)[得分: ]

1.一个C程序的执行是从。

A)本程序的main函数开始的。

B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C)本程序的main函数开始,到本程序文件的最后一个函数结束

D)本程序文件的第一个函数开始,到本程序main函数结束

2.以下叙述正确的是。

A)在C程序中,main函数必须位于程序的最前面

B)C程序的每行中只能写一条语句

C)C语言本身没有输入输出语句

D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误

3.以下叙述不正确的是。

A)一个C源程序可由一个或多个函数组成

B)一个C源程序必须包含一个main函数

C)C程序的基本组成单位是函数

D)在C程序中,注释说明只能位于一条语句的后面

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

A) C语言程序将从源程序中第一个函数开始执行

B) 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

C) C语言规定必须用main作为主函数名,程序将从此开始执行。

D) 以上说法都不正确。

5. 使用scanf函数时,在源程序开头。

A)书写#include ‘stdio.h’ B)书写#include

C)书写#include D)书写#include "scanf.h"

6.C语言中的表达式语句需要符号作为结尾。

A) : B) ; C)。 D) //

7.C 语言程序中多行注释用符号_ _ _。

A)‘{‘ 和’}’ B)‘[‘和’]’

C)“/*”和”*/” D)“*/”和”/*”

8.C语言中注释的位置。

A) 必须在程序的最开始 B) 必须在程序的结尾

C) 可以在程序的任何位置 D) 不可以写到main函数里面

9.C语言程序能够在不同的操作系统下面运行,这说明c语言具有很好的。

A) 灵活性 B)可移植性 C)兼容性 D) 操作性

10.C语言经过编译连接后生成的可执行文件的扩展名为。

A).c B) .cpp C) .exe D) .obj

11.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。

A)必须为字母 B)必须为下划线

C)必须为字母或下划线 D)可以是字母、数字和下划线中任一种字符

12.以下C语言用户标识符中,不合法的是。

A) _1 B) Double C) a_b D) a-b

13. C语言提供的合法数据关键字是。

A) float B) sagned C) Int D) Char

14. 下列标识符组中,合法的用户标识符为。

A) PAd与p#d B) Scanf 与a10

C) void与max D) A*与temp

15.以下选项中,能用作标识符的是。

A) void B) 8_8 C) _0 D) unsigned

16.以下选项中,不合法的用户标识符是。

A) print B) FOR C) &a D) _00

17. 下面不正确的字符串常量是。

A)'abc' B)"12'12" C)"0" D)" "

18. 若以下选项中的变量已正确定义,则正确的赋值语句是。

A) x1 = 26.8 % 3; B) 1 + 2 = x2; C) x3 = 0x12; D) x4 = 1 + 2 = 3;

19. 下列C语言中运算对象必须是整型的运算符是。

A) %= B) / C) = D) *=

20. 若有以下程序段:int c1 = 1, c2 = 2, c3; c3 = 1.0 / c2 * c1;则执行后,c3中的

值是。

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

21. 如果要定义两个整型变量a和b,则下列写法中正确的是。

A)int a; b; B)int a = b = 5;

C)int a = 5, b = 5; D)inta,b;

22. 以下定义变量的语句中,正确的是。

A)int a = b = 0; B)char A = 65 + 1;

C)float a = 1, b = 1++; D)double a = 0.0; b = 1.1;

23. 有整型变量x,单精度变量y = 5.5,表达式x = y * 3 + (int)y % 4执行后,x的值

为()。

A)17 B)17.500000 C)17.5 D)16

24. 已知int x = 1, y;则表达式y = ++x;的值是。

A)1 B)2 C)3 D)表达式错误

25. 下列关于单目运算符++、--的叙述中正确的是。

A)它们的运算对象可以是任何变量和常量

B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量

C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量

D)它们的运算对象可以是char型变量、int型变量和float型变量

26. 已定义ch为字符型变量,下列赋值语句中错误的是。

A)ch='\'; B)ch=62+3; C)ch='\n'; D)ch='\x41';

27. 假定有以下变量定义,则能使值为3的表达式是。

int k=7,x=12;

A)x%=(k%=5) B)x%=(k-k%5)

C)x%=k-k%5 D)(x%=k)-(k%=5)

28. 已定义c为字符型变量,则下列赋值表达式中正确的是。

A)c=’97’ B)c=“97” C)c=97 D)c=“a”

29. 若变量a是int类型,并执行了语句:a=‘A’+1.6;,则正确的叙述是。

A)a的值是字符C B)a的值是浮点型

C)不允许字符型和浮点型相加 D)a的值是字符’A’的ASCII值加1

30. 设a和b均为double型变量,且a的值为5.5,b的值为2.5,则表达式

(int)a + b / b的值是。

A)6.500000 B)6 C)5.500000 D)6.000000

31. 在下列选项中,不正确的赋值语句是。

A)t += 1; B)n1 = n2 = n3 = 0; C)k=i==j; D)b+c=1;

32.已知char a; int b; float c; double d; 则表达式a + b * c - d的结果为_ __型。

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

33. 若x 为int型变量,则执行语句x=10; x += x;后,x的值为______。

A)0 B)10 C)20 D)30

34.假设变量a是int型,b是float型,c是double型,则表达式30 + a + c * b的值的数据类型是。

A) int B) float C) double D)不确定

35.执行下列程序片段时输出结果是。

int x = 13,y = 5;

printf(“%d”,x %= (y /= 2));

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

36. 执行语句scanf (“%c%c%c”,&c1,&c2,&c3),输入abc时,变量c1、c2、c3的值分别为。

A)'a', 'b', 'c' B)'a','b', '' C)'a', '', 'b' D)'a','','c'37.有以下程序段:

int m = 0, n = 0; char c = 'a';

scanf("%d%c%d",&m,&c,&n);

printf("%d,%c,%d\n",m,c,n);

若从键盘上输入:10A10<回车键>,则输出结果是。

A)10,A,10 B)10,a,10 C)10,a,0 D)10,A,0

38.若有以下变量说明和数据的输入方式,则正确的输入语句为。

变量说明:float x1,x2;

输入方式:4.52<回车>

3.5<回车>

A)scanf(“%f,%f”,&x1,&x2); B)scanf(“%f%f”,&x1,&x2);

C)scanf(“%3.2f %2.1f”,&x1,&x2); D)scanf(“%3.2f%2.1f”,&x1,&x2);

39.若a为整型变量,则以下语句。

a = -2L; printf(“%d\n”, a);

A)赋值不合法 B)输出值为-2 C)输出为不确定值 D)输出值为2

40.有以下程序

#include

int main( )

{ int x = 102, y = 012;

printf(“%2d,%2d\n”, x, y);

return 0;

}

执行后输出结果是。

A)10,01 B)02,12 C)102,10 D)02,10

41.设有如下程序段

int x = 2002, y = 2003;

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

则以下叙述中正确的是________。

A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出

B)运行时产生出错信息

C)输出值为2002

D)输出值为2003

42. 若有下列语句

char c=’A’;

printf(“%d”,c);

则输出的结果是。

A) A B) c C) 65 D)语句错误

43. 下列程序输入’a’字母后,执行程序后输出的结果是。

#include

int main( )

{

char c;

c = getchar();

c = c - 32;

printf("%c\n", c);

return 0;

}

A)65 B) A C) 97 D) a

44.执行下列程序片段时输出结果是。

float x = -1023.012;

printf(“\n%8.3f,”, x);

printf(“%10.3f”, x);

A)1023.012, -1023.012 B)-1023.012, -1023.012

C)1023.012,-1023.012 D)-1023.012, 1023.012

45.对于下述语句,若将10赋给变量k1和k3,将20赋给变量k2和k4,则应按方式输入数据。

int k1,k2,k3,k4;

scanf(“%d%d”,&k1,&k2);

scanf(“%d,%d”,&k3,&k4);

A)1020↙ B)10 20↙ C)10,20 ↙ D)10 20↙

1020↙ 10 20↙ 10,20↙ 10,20↙

46.阅读以下程序,若运行结果为如下形式 ,输入输出语句的正确内容是。

int main()

{ int x; float y;

printf("enter x,y:");

输入语句

输出语句

}

输入形式 enter x,y: 2 3.4

输出形式 x+y=5.40

A)scanf("%d,%f",&x,&y);printf("\nx+y= %4.2f",x+y);

B)scanf("%d%f",&x,&y );printf("\nx+y=%4.2f",x+y);

C)scanf("%d%f",&x,&y); printf("\nx+y=%6.lf",x+y);

D)scanf("%d%3.1f",&x,&y );printf("\nx+y=%4.2f",x+y);

47.根据定义和数据的输入方式,输入语句的正确形式为。

已有定义: float fl,f2;

数据的输入方式:4.52

3.5

A) scanf("%f,%f",&f1,&f2); B) scanf("%f%f",&f1,&f2 );

C) scanf("%3.2f%2.1f",&f2,&f1); D) scanf("%3.2f%2.1f",&f1,&f2);

48.逻辑运算符两侧运算对象的数据类型。

A)只能是0或1 B)只能是0或非0正数

C)只能是整型或字符型数据 D)可以是任何类型的数据

49. 下列运算符中优先级最高的是。

A) < B) + C) && D) !=

50.能正确表示"当x 的取值在[1,10]或[200,210]范围内为真,否则为假"的表达式是。

A) (x>=1) &&(x<=10) &&(x> = 200) &&(x<=210)

B) (x>=1) || (x<=10) ||(x>=200) ||(x<=210)

c) (x>=1) &&(x<=10)||(x>= 200) &&(x<=210)

D) (x > =1)||(x< =10) && (x> = 200)||(x<=210)

51.判断char型变量ch是否为大写字母的正确表达式是。

A) 'A'<=ch<='Z ' B) (ch>='A')&(ch<='Z ')

C) (ch>='A')&&(ch<='Z') D) ('A'<=ch)AND('Z'>=ch)

52.设x,y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是。

A) 'y'&&'y' B) x<=y C) x||y+z&&y-z D) !((x

53.已知x=43,ch='A',y=0则表达式(x>=y && ch<'B'&&!Y) 的值是。

A) 0 B) 语法错 C) 1 D) "假"

54. 定义:int x=7,y=8,z=9;后,则下面表达式为0的是。

A)' x ' && ' y ' B)x<=y

C)x||y+z&&y-z D)!((x

55.若希望当A的值为奇数时,表达式的值为"真",A的值为偶数表达式的值为"假"。则以下不能满足要求的表达式是。

A) A%2==1 B) !(A%2==0) C) !(A%2) D) A%2

56.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是______。

A)k%2 B)k%2==1 C)(k%2)!=0 D)!k%2==1

57. 对switch语句的控制表达式的值类型,叙述正确的是。

A)只能是数字 B)可以是浮点数

C)只能是整型或字符型 D)以上叙述都不对

58.下列关于switch和break语句的说法中正确的是。

A)break语句只能用在switch语句中

B)在switch语句中,可以根据需要决定是否使用break语句

C)在switch语句中必须使用break语句

D)以上选项都不正确

59.下面程序运行结果是。

#include

int 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\n",d);

return 0;

}

A)20 B)25 C)15 D)10

60. 以下程序输出结果是。

int main()

{

int x=1,y=0,a=0,b=0;

switch(x)

{

case 1:

switch (y)

{

case 0 : a++ ; break ;

case 1 : b++ ; break ;

}

case 2: a++; b++; break;

case 3: a++; b++;

}

printf("a=%d,b=%d",a,b);

return 0;

}

A)a=1,b=0 B)a=2,b=1 C)a=1,b=1 D)a=2,b=2

61. 以下程序输出结果是。

int main()

{

int a=2, b=7, c=5;

switch (a>0)

{

case 1:

switch (b<0)

{

case 1: printf("@"); break ;

case 2: printf("!"); break ;

}

case 0:

switch (c==5)

{

case 1: printf("*") ; break ;

case 2: printf("#") ; break ;

default : printf("#") ; break ;

}

default: printf("&");

}

printf("\n");

return 0;

}

A)@ B)*& C)@& D)&

62. 已知x、a、b、c、d均为int型变量,则执行如下程序段后,x的值是_______。

a=1; b=2; c=3; d=4;

x=(a

x=(a

x=(a

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

63. 运行下列程序段后x的值是_______。

int a,b,c,x;

a=0; b=0; c=0; x=7;

if(!a) x--; else if(b);

if(c) x=3; else x=4;

A)4 B)6 C)7 D)3

64. 如下程序的输出结果是_______。

#include

int main()

{

int a,b,c,d;

a=2; b=-6; c=5;

if(a

if(b<0) c=0;

else c++;

printf (" %d \n", c);

return 0;

}

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

65. 关于以下三条语句的描述中,正确的是_______。

① if(a) a=1;else a=2; ② if(a==0) a=2;else a=1; ③ if(a!=0) a=1;else a=2;

A)三条语句相互等效 B)三条语句中②与③等效,但与①不等效C)三条语句中①与②等效,但与③不等效 D)三条语句各不等效

66.设j为int型变量,则下面for 循环语句的执行结果是。

for (j=10;j>3;j--)

{

if (j%3)j--;

--j;--j;

printf ("%d",j);

}

A)6 3 B)7 4 C)6 2 D)7 3

67. 以下程序的输出结果是。

#include

int main()

{

int n=4;

while(n--) printf("%d",--n);

return 0;

}

A)2 0 B)31 C)321 D)210

68. 定义如下变量int n=10;则下列循环的输出结果是______。

while(n>=7)

{

n--;

printf(“%d\n”,n);

}

A)10 B)9 C)10 D)9

9 8 9 8

8 7 8 7

7 6

69. 以下程序执行后,输出结果是_______。

#include

int main()

{

int n=0;

while(n<=2)

{

n++;

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

}

return 0;

}

A)1 B)1 C)2 D)2

2 2 3

3

70. 以下程序段。

int main()

{

int x=-1;

do

{

x=x*x;

}while (!x);

printf("It is the %dth day.",x);

return 0;

}

A)是死循环B)循环执行2次C)循环执行1次D)有语法错误

71. 以下描述中正确的是。

A) 由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复

合语句

B) do-while循环由do开始,用while结束,在while(表达式)后面不能写分号

C) do-while循环至少要执行一次循环体中的语句

D) do-while循环中,根据情况可以省略while

72. 以下程序段的循环次数是。

for(i = 2; i == 0; ) printf(“%d” , i--) ;

A)无限次B)0次C)1次D)2次

73. 下面for循环语句。

int i, k;

for (i=0, k=-1; k=1; i++, k++)

printf(“***”);

A)判断循环结束的条件非法B)是无限循环

C)只循环一次D)一次也不循环

74. 下面程序的输出结果是。

int main ( )

{

int k = 0, m = 0, i, j;

for (i=0; i<2; i++)

{

for (j=0; j<3; j++)

k++ ;

k-=j ;

}

m = i+j ;

printf("k=%d,m=%d",k,m) ;

return 0;

}

A)k=0,m=3 B)k=0,m=5 C)k=1,m=3 D)k=1,m=5

75. 下面程序的输出结果是。

int main ( )

{

int i, s, n = 0;

for (i=0; i<=5; i++)

{

s=i%3;

while(s>0)

s--, n++;

}

printf("%d,%d",n,s) ;

return 0;

}

A)5,0 B)6,0 C)5,-1 D)6,-1

76. 以下正确的描述是。

A)continue语句的作用是结束整个循环的执行

B)只能在循环体内和switch语句体内使用break语句

C)在循环体内使用break语句或continue语句的作用相同

D)从多层循环嵌套中退出时, 只能使用goto语句

三、填空题

1.计算机程序设计语言的发展经历了从、到的历程。

2. C语言中的标识符只能由三种字符组成,它们是、和。

3.转义字符'\n'表示_ _,使光标移到屏幕上下一行开头。

4.语句printf("a\bRe\'CH\'y\\\bou\n");的输出结果是。

5.一个表达式的最后加上一个_ _就成了一个语句。

6. C语言提供了6种关系运算符_ __、_ __、_ __、_ __、_ __、_ __。

7. C语言中,关系表达式的值是一个_ __即真或假,一般以_ __代表真,以_ __代表假。

8. C语言提供三种逻辑运算符,包括_ __、_ __、_ __,这三种逻辑运算符中_ 的优先级最高。

9.若a=3, b=2, c=1 则关系表达式"(a>b)= =c" 的值为。

10.若a是int型变量,则执行表达式a=25/3%3后a的值为。

11. printf("%.2f\n",3.5 + 1/2 + 56%10);的输出结果是。

12.若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++

x的值为,n的值为。

13. 表达式1/4+2.75的值是。

14.若有int i=10, j=2;则执行完i*=j+8;后i的值为。

15. 在if-else结构中,else子句不能作为语句单独使用,必须与_ __配对使用,且若

if和else后面有多条语句,则需用_ __将其成为一个复合语句。

16. C语言中唯一的一个三目运算符是_ ,其一般形式为_ _。

17. while循环结构中,当表达式为_ __时执行其中的内嵌语句;循环体如果包含一个

以上的语句,应该用_ __括起来。

18.以下printf语句中%3d的作用是,输出结果是。

#include

int main()

{

int i=3;

printf(“##%3d\n”,i,i);

return 0;

}

19.下面程序的输出结果是。

#include

int main()

{

int x='f';

printf("%c\n", 'A'+(x-'a'+1));

return 0;

}

20.以下程序的输出结果为。

int main()

{

printf(“*%f,%4.3f*\n”,3.14,3.1415);

return 0;

}

21.写出以下程序运行的结果。

#include

int main ( )

{

int i,j,m,n;

i=8;

j=10;

m=++i;

n=j++;

printf(“%d,%d,%d,%d”,i,j,m,n);

return 0;

}

22.写出以下程序运行的结果。

#include

int main()

{

int a = 7, b = 9;

a = a + b;

b = a - b;

a = a - b;

printf ("a=%d, b=%d \n", a,b);

return 0;

}

23. 写出以下程序运行的结果。

#include

int main()

{

int a, b, c;

a = (

b = (

c = 3) * 5)*5;

printf ("a=%d, b=%d, c=%d \n", a, b, c);

return 0;

}

24. 已知字母A的ASCII码为65。以下程序运行后的输出结果是__ ____。

#include

int main()

{

char a, b;

a='A'+'5'-'3'; b=a+'6'-'2';

printf("%d %c\n", a, b);

return 0;

}

25.写出以下程序的输出结果:

#include

int main ( )

{ int y=3,x=3,z=1;

printf(“%d %d\n”,(++x,y++),z+2);

return 0 ;

}

26.下列程序的输出结果是14.00,请填空使程序完整。

int main ( )

{ int a=9,b=2;

float x= , y=1.1 , z;

z=a/2+b*x/y+1/2;

printf(“%5.2f\n”,z);

return 0;

}

27. 阅读以下面程序,填写输出结果。

#include

int main( )

{

int x=5,a=0,b=0;

if(x!=(a+b)) printf("x=5\n");

else printf("a=b=0\n");

return 0;

}

输出结果为:

28. 执行了以下程序片断后,若原来x=9,则输出结果为_ _;若原来x=6,则输出结果为_ _。

if(x++>8) printf("%d",x);

else printf("%d",x--);

29. 执行下面程序

#include

int main( )

{

int x;

scanf("%d",&x);

if(x++>5)

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

else

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

return 0;

}

若输入5,其输出结果是。

30. 以下程序运行后的输出结果是。

#include

int main( )

{

int a=1,b=3,c=5;

if (c=a+b) printf ("yes\n");

else printf ("no\n");

return 0;

}

31. 以下程序将两个数从小到大输出。

#include

int main( )

{

float a,b, t ;

scanf( ,&a,&b);

if (a>b)

{ t=a; ;b=t;}

printf ("%5.2f,%5.2f\n",a,b);

return 0;

}

32. 若有以下程序:

#include

int main( )

{

int a=4,b=3,c=5,t=0;

if(a

if(a

printf("%d%d%d\n",a,b,c);

return 0;

}

执行后输出结果是。

33.写出程序段的输出结果。

int a=100;

if (a>100) printf ("%d\n ",a>100);

else printf ("%d\n ",a<=100);

34. 有以下程序

#include

int main( )

{

int a=5,b=4,c=3,d=2;

if(a>b>c)

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

else if((c-1>=d)==1)

printf("%d\n",d+1);

else

printf("%d\n",d+2);

return 0;

}

执行后输出结果是 。

35. 执行程序之后,输入2↙6↙3↙ ,以下程序运行后的输出结果是______。(↙表示回车) #include

int main()

{

int a,b,c,d;

printf("请输入三个整数:\n");

scanf("%d%d%d",&a,&b,&c);

if(a>b) d=a;

else d=b;

if(c>d) d=c;

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

return 0;

}

36. 以下程序运行后的输出结果是__________

#include

int main()

{ int a=10,b=4,c=3;

if(a

if(a

printf("%d,%d,%d\n",a,b,c);

return 0;

}

37. 写出下面程序运行的结果。

int main()

{

int x=1,y=0;

switch(x)

{

case 1:

switch(y)

{

case 0:printf("**1**\n");break;

case 1:printf("**2**\n");break;

}

case 2:printf("**3**\n");

}

return 0;

}

38. 根据以下函数关系,对输入的每个整数x 值,计算出相应的y 值,请填空使程序完整。

???????<<=+-<<=<<=<=402020

5.0201010

10000x x x x x x y

{

int x,c;

float y;

scanf("%d",&x);

if ()

c= -1;

else

switch (c)

{

case -1 : y=0 ; break ;

case 0 : y=x ; break ;

case 1 : y=10 ; break ;

case 2 :

case 3 : y=-0.5*x+20 ; break ;

default : y=-2 ;

}

if ()

printf ("y=%f",y);

else

printf("error!");

return 0;

}

39. 以下程序的输出结果是。

#include

int main( )

{

int a=-1,b=1,k;

if((++a<0)&&!(b--<=0)) printf("%d %d\n",a,b);

else printf("%d %d\n", b, a);

return 0;

}

40.下面程序的功能是在屏幕上显示如下图形:

1

2 1

3 2 1

4 3 2 1

5 4 3 2 1

#include

int main( )

{

int i=1,j;

while(i<=5)

{

printf("\n");

j=i;

while( )

{

j--;

}

i++;

}

return 0;

}

41. 程序功能:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空,将程序补充完整。

#include

int main()

{

float x,xmax,xmin;

printf("输入成绩:\n");

scanf("%f",&x);

xmax=x;

;

while( )

{

if(x>xmax) xmax=x;

if( ) xmin=x;

scanf( );

}

printf("max=%f,min=%f",xmax,xmin);

return 0;

}

42. 以下程序运行后的输出结果是______。

#include

int main( )

{

int n,s;

s=n=0;

while(s<=10)

{

C语言练习题(带答案)-绝对经典题目不看后悔

1单选题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数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 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 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 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键

C语言作业题整理

1. 第一次 1.1.编写一程序,通过键盘输入一华氏温度,将其转换为摄氏温度后输岀。公式为c=5/9(f —32) #include "stdio.h" main() { float f=O,h=O; printf(”请输入华氏温度:"); scanf("%f",&f); printf("转化为摄氏温度为:"); h=(float)5/9*(f-32); printf("%.2f\n",h); } 1.2.通过键盘输入一小写字母,将其转换为大写字母输岀,并输岀该大写字母的后一位字母和前一位字 母(如果输入该大写字母为A,则其前一位字母为Z;如果输入该大写字母为Z,则其后一位字母为 A)。 #include "stdio.h" main() { char ch1,ch2,ch3,ch; printf("请输入一个小写字母:\n"); while(scanf("%c",&ch),ch<97 || ch>122) { printf("您输入的符号不是小写字母,请重新输入一个小写字母:\n"); } printf("其对应的大写字母和前后的大写字母分别为:\n"); if(ch=='a'){ch2=ch-32;ch仁ch2+25;ch3=ch2+1;} else if(ch=='z'){ch2=ch-32;ch1=ch2-1;ch3=ch2-25;} else {ch2=ch-32;ch1=ch2-1;ch3=ch2+1;} printf("%c,%c,%c\n",ch1,ch2,ch3); } 1.3.通过键盘输入一个两位的整数,试编写程序将其个位与十位分别以字符的方式输岀。输岀形式为: “ thenput number is 你输入的整数,the tens is 十位数字,the units is 个位数字。"如果输入的整 数不正确,则输出“ wrong input ” #include "stdio.h" main() { int a,b1,b2; printf("请输入一个两位正整数:\n"); scanf("%d", &a); if(a<10||a>=100) {

C语言第七、八章补充作业-答案

第七章数组补充作业 【1】在C语言中,引用数组元素时,其数组下标的数据类型允许是 C 。 A)整型常量B)整型表达式 C)整型常量或整型表达式D)任何类型的表达式 【2】以下对一维整型数组a的正确说明是 D 。 A)int a(10); B)int n=10,a[n]; C)int n; D)#define SIZE 10 scanf(“%d”,&n); int a[SIZE]; int a[n]; 【3】若有说明:int a[10];则对a数组元素的正确引用是 D 。 A)a[10] B)a[] C)a(5) D)a[10-10] 【4】以下能对一维数组a进行正确初始化的语句是 C 。 A)int a[10]=(0,0,0,0,0); B)int a[10]={}; C)int a[]={0}; D)int a[10]={10*1}; 【5】以下对二维数组a的正确说明是 B 。 A)int a[3][]; B)double a[1][4]; C)float a(3,4); D)float a(3)(4); 【6】若有说明:int a[3][4];则对a数组元素的正确引用是 D 。 A)a[2][4] B)a[1,3] C)a(2)(1) D)a[1+1][0] 【7】以下不能对二维数组a进行正确初始化的语句是 C 。 A) int a[2][3]={0}; B) int a[][3]={{1,2},{0}}; C) int a[2][3]={{1,2},{3,4},{5,6}}; D) int a[][3]={1,2,3,4,5,6}; 【8】指出下面各说明语句中哪些是合法的:(多选) A. int abcd[0x80]; B. char 9ab[10]; C. char chi[-200]; D. int aaa[5]={3,4,5}; E. float key[]={,,1,0}; F. char disk[]; G. int n,floppy[n]; H. int cash[4]={1,2,3,4,5,6}; 答案: ADE 【9】下面程序中有错误的行是 D (每行程序前面的数字表示行号)。 1 main()

C语言实训作业1

《C语言通识教育》实训指导书 (第一次) (2学时) 何天成 2016年月日

前言 C 语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,C 语言正在被迅速地推广和普及。上机实验是该课程教学的一个重要环节,因此要求学生做一定数量的上机实验。本指导书可增强同学上机实验的针对性。整个教学和实验中,采用VC++6.0 作为实验环境,强调学生切实培养动手实践能力,掌握调试程序的方法,通过调试理解C语言程序运行的过程以及C 语言的语法规则,为后续的课程设计,计算机等级考试及其他应用做好充分的准备。 本实验指导书通过大量的实例,循序渐进地引导学生做好各章的实验。共计约14次实训课,其中每一讲内容分1、2两次上课。每个实验内容结构如下: (1)实验学时 (2)实验目的 (2)预习要求 (4)实验内容 (5)实验注意事项 (6)思考题 其中思考题属于扩展应用部分,学生可以根据自己的学习情况选择完成。 在实验之前,要求学生对实验作好预习工作。在实验中,学生根据实验指导中的内容进行验证与总结,然后再去完成实验内容中安排的任务。一般要求准备好相关代码,实验课中最好以调试和讨论为主。 实验结束后,应及时先以电子版的形式填写实验报告,然后再以A4纸打印。第3次实训课上交前2次实训报告,要求源程序要以标准格式打印实验报告上都必须粘贴上每个程序的运行结果截图,并在每个程序的输出截图中添加上自己的姓名/学号/专业等信息,以表示程序执行结果确是自己调试,而不是copy 别人的运行结果。通报告具体内容可根据实验内容和实验要求进行增删。实验报告一般要求包含:(1)实验题目 (2)设计思路或算法分析 (3)流程图 (4)程序源代码 (5)程序运行结果及分析

c语言第1章练习题答案

第一章 C语言概述练习题 一、选择题 1.C语言是一种( )。 A) 机器语言B) 汇编语言C) 高级语言 D) 低级语言 2.下列各项中,不是C语言的特点是( )。 A) 语言简洁、紧凑,使用方便B) 数据类型丰富,可移植性好 C) 能实现汇编语言的大部分功能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 void Case Size abc define 10. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是 ()。

第六次作业

习题九 一、选择题 9-1.C语言程序由函数组成。它的。 A.主函数必须在其它函数之前,函数内可以嵌套定义函数 B.主函数可以在其它函数之后,函数内不可以嵌套定义函数 C.主函数必须在其它函数之前,函数内不可以嵌套定义函数 D.主函数必须在其它函数之后,函数内可以嵌套定义函数 9-2.一个C语言程序的基本组成单位是。 A.主程序B.子程序C.函数D.过程 9-3.以下说法中正确的是。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 9-4.已知函数abc的定义为: void abc ( ) { ....... } ?则函数定义中void的含义是。 A.执行函数abc后,函数没有返回值B.执行函数abc后,函数不再返回??C.执行函数abc后,可以返回任意类型D.以上三个答案全是错误的 9-5.在以下对C语言的描述中,正确的是。 A.在C语言中调用函数时,只能将实参的值传递给形参,形参的值不能传递给实参B.C语言函数既可以嵌套定义又可以递归调用 C.函数必须有返回值,否则不能使用函数 D.C语言程序中有调用关系的所有函数都必须放在同一源程序文件中 9-6.以下叙述中错误的是。 A.在C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值 B.在C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容 C.在C语言中,外部变量的隐含类别是自动存储类别 D.在C语言中,函数形参的存储类型是自动(auto)类型的变量 9-7.说明语句"static int i=10;"中"i=10"的含义是。 A.只说明了一个静态变量B.与"auto i=10;"在功能上等价 C.将变量i初始化为10 D.将变量i赋值为10 9-8.C语言中的函数。

c语言作业

提交作业规范: (1)你的每次作业的cpp文件放在文件夹中,文件夹命名:学号+姓名+(第几次),(例如:“2014218899张三(第二次)“) (2)上传到文件夹:偶春生\班级。千万别传错。 注意: (1)每做完一题,请用“file”下的“close workspace”关闭工作区,再重新开始做下一题。(2)如果不能联网,请改网关地址:252或253 (3)开机进入“basis” 第一次上机题目: (1)从键盘上输入四个整数,计算并输出四个数的平均值。 (2)输入球的半径,计算并输出球的体积和表面积。 (3)输入一个三位正整数,分别输出该数的个位、十位和百位。(提示:用%运算符提取数字,如123%10=3,用/运算符移除已提取的数字,如123/10 = 12) (4)请测试++、--、关系和逻辑运算符。 第二次上机题目: (1)平面上有一园C:(x-3)2+(y-4)2= 25;输入点P(x,y)的坐标值,判断P点在园C内(包括园上)还是园C外。 (2)输入一英文字符,如果是大写字符,请输出:“您输入的是大写字符。”,如果是小写字符,请输出:“您输入的是小写字符。”, (3)某人某天开始“三天打鱼,两天晒网”,问该人在以后的第n天是打鱼还是晒网?(4)输入火车的出发时间和到站时间,计算火车的运行时间。(出发时间和到站时间用四位整数表示,如1230表示12点30分,假设火车不跨天运行。) (5)从键盘上输入三个整数,分别存放在变量num1, num2, num3中,编写程序对这三个数进行排序,使得num1 <=num2<=num3。 第三次上机题目: (1)输入十个数,分别计算出其中正数、负数的和。 (2)输出1—100内能被3整除或个位数是3的数。 (3)打印出大写英文字母,每行最多输出十个。 (4)输入十个数,求出其中的最小值。 (5)求出e的值,e = 1+1+1/2!+1/3!+…+1/n! (n取10) 第四次上机题目: (1)输出100—1000之间的质数。 (2)任意输入一个数,输出这个数的所有因子。(如输入12,输出1,2,3,4,6,12) (3)输出1-100间的同构数,所谓同构数是指一个数出现在这个数平方的右侧(如6和25均为同构数)。 (4)求x2+y2=2009的整数解。(提示,x,y的范围在[1,45]之间,用双重循环枚举求解)(5)用嵌套循环打印如下图形:

C语言函数习题及答案

第6章函数习题 一、选择题 1. 一个完整的C源程序是【】。 A)要由一个主函数或一个以上的非主函数构成 B)由一个且仅由一个主函数和零个以上的非主函数构成 C)要由一个主函数和一个以上的非主函数构成 D)由一个且只有一个主函数或多个非主函数构成 2. 以下关于函数的叙述中正确的是【】。 A)C语言程序将从源程序中第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束 D)main可作为用户标识符,用以定义任意一个函数 3. 以下关于函数的叙述中不正确的是【】。 A)C程序是函数的集合,包括标准库函数和用户自定义函数 B)在C语言程序中,被调用的函数必须在main函数中定义 C)在C语言程序中,函数的定义不能嵌套 D)在C语言程序中,函数的调用可以嵌套 4. 在一个C程序中,【】。 A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现 C)main函数必须出现在所有函数之后 D)main函数必须出现在固定位置 5. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【】 A)float B)long C)int D)double 6. 以下关于函数叙述中,错误的是【】。 A)函数未被调用时,系统将不为形参分配内存单元 B)实参与形参的个数应相等,且实参与形参的类型必须对应一致 C)当形参是变量时,实参可以是常量、变量或表达式 D)形参可以是常量、变量或表达式 7. C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是 【】。 A)参数的形实(哑实)结合 B)函数返回值 C)全局变量 D)同名的局部变量 8. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是【】。 A)实参与其对应的形参共占存储单元 B)只有当实参与其对应的形参同名时才共占存储单元 C)实参与对应的形参分别占用不同的存储单元

C语言第5次作业 简单程序设计

单选题: 1、以下程序段的输出结果是 int a=1234; printf("%2d\n",a); A.12 B.34 C.1234 D.提示出错、无结果 学生答案: C 参考答案: C 2、若有说明语句:int a,b,c,*d=&c; 则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是 A.scanf("%d%d%d",&a,&b,*d); B.scanf("%d%d%d",&a,&b,&d); C.scanf("%d%d%d",a,b,d); D.scanf("%d%d%d",a,b,*d); 学生答案: B 参考答案: A 3、以下合法的赋值语句是 A.x=y=100 B.d--; C.x+y; D.c=int(a+b); 学生答案: D 参考答案: B 4、设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是 printf("%d,%d\n",x--,--y); A.10,3 B.9,3 C.9,2 D.10,2 学生答案: D 参考答案: D 5、以下程序的输出结果是 main()

{ int a=3; printf("%d\n",(a+=a-=a*a));} } A.-6 B.12 C.0 D.-12 学生答案: D 参考答案: D 6、以下程序段的输出结果是 char s[]="\\141\141abc\t"; printf ("%d\n",strlen(s)); A.9 B.12 C.13 D.14 学生答案: A 参考答案: A 7、下列程序执行后的输出结果是 main() { int x='f'; printf("%c \n",'A'+(x-'a'+1)); } A.G B.H C.I D.J 学生答案: A 参考答案: A 8、下列程序执行后的输出结果是 main() { char x=0xFFFF; printf("%d \n",x--); } A.-32767 B.FFFE C.-108 D.-32768

C语言上机作业试题5套含答案

第一次上机作业(2014): 要求: ?独立完成,上机调试通过后上交 ?作业提交邮箱: ?邮件主题命名:班级学号姓名(第1次作业), 例如:电1301班2王鹏(第1次作业) ?以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。 ?程序必须采用缩进格式 1.大写字母转换成小写字母 从键盘输入一个大写英文字母,输出相应的小写字母。 例:输入G 输出g 2.求平方根 输入一个实数x,计算并输出其平方根(保留1 位小数)。 例:输入17 输出The square root of 17.0 is 4.1 3.温度转换 设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32) a)输入华氏温度(实型) b)输出的摄氏温度结果保留两位小数 例:Please input Fahrenheit temperature: 76.8 The corresponding Celsius temperature is 24.89 4. 计算旅途时间 输入二个整数time1 和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 (输入的有效的时间范围是0000 到2359,不需要考虑出发时间晚于到达时间的情况。) 例:输入712 1411 (出发时间是7:12,到达时间是14:11) 输出The train journey time is 6 hours 59 minutes. 5. 数字加密 输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。 例:输入1257 输出The encrypted number is 4601 思考题:你能否编程找出谁做的好事? 有四位同学中的一位做了好事,不留名,表扬信来了之后,校长问这四位是谁做的好事。 ?A说:不是我。 ?B说:是C。 ?C说:是D。 ?D说:他胡说。 已知三个人说的是真话,一个人说的是假话。现在要根据这些信息,找出做了好事的人。 第二次上机作业(2014): 要求: ?独立完成,程序必须采用缩进格式,上机调试通过后上交

C语言练习题集(带答案解析)

精品文档 1. ( A )是构成C 语言程序的基本单位。 A 、函数 B 、过程 C 、子程序 D 、子例程 2. C 语言程序从 ____ C ________ 开始执行。 A ) 程序中第一条可执行语句 B )程序中第一个函数 C )程序中的main 函数 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 6. 下列C 语言用户标识符中合法的是( B )。 A) 3ax B)x C)case D)-e2 E)u nion 7. 下列四组选项中,正确的 C 语言标识符是 (C )。 A ) %x B ) a+b C ) a123 D ) 8、 下列四组字符串中都可以用作 A 、print _3d db8 aBc B C 、str_1 Cpp pow while D 9. C 语言中的简单数据类型包括( A 、整型、实型、逻辑型 C 、整型、字符型、逻辑型 C 语言程序中的标识符的是( A ) 、I\am one_half start$it 3pai 、Pxq My->book line# His.age D )。 B 、整型、实型、逻辑型、字符型 D 、整型、实型、字符型 10. 在C 语言程序中,表达式 5%2的结果是—C_ A)2.5 B)2 C)1 D)3 11. 如果int a=3,b=4 ;则条件表达式"a

第六次c语言作业

第六次课作业 下次课默写交换排序、选择排序和冒泡排序。 习题6-1 题码:章节:数组考查点:一维数组的定义、引用及格式输出难度:2 编写一程序p717.C实现以下功能 输入10个整型数存入一维数组,输出值和下标都为奇数(数组第1个元素的下标为0)的元素及其个数。编程可用素材:printf("Input 10 integers.\n")...、printf("count=...\n"...、 printf("a[...]=...\n"...。 程序的运行效果应类似地如图1所示,图1中的2 45 34 56 78 12 41 55 86 37是从键盘输入的内容。 图1 程序运行效果示例 习题6-2 题码:章节:数组考查点:一维数组定义、输入和输出的掌握,对递推算法的掌握难度:2 编写一程序p725.C实现以下功能 利用数组,求斐波拉契数列的前n(n的范围为:3~20)项,并输出到屏幕上(数和数之间用字符'\t'隔开),斐波拉契公式:f(1)=1,f(2)=1,f(n)=f(n-1)+f(n-2) (n≥3)。编程可用素材:printf("input a data(3--20): ")...。 程序的运行效果应类似地如图1所示,图1中的11是从键盘输入的内容。 图1 程序运行效果示例 习题6-3 题码:章节:数组考查点:一维数组的应用难度:2 编写一程序p718.C实现以下功能 有一递推数列,满足f(0)=0,f(1)=1,f(2)=2, f(n+1)=2f(n)+f(n-1)f(n-2) (n>=2), 编写程序求f(n)的值(n由键盘输入,13>=n>=2)。编程可用素材:printf(“Input n (13>=n>=2): ”)...、printf(“\nf(...)=...\n”...。 程序的运行效果应类似地如图1所示,图1中的10是从键盘输入的内容。 图1 程序运行效果示例 习题6-4 题码:章节:数组考查点:键盘输入技巧的掌握和二维数组的应用,判断条件的设定难度:2 编写一程序p217.C实现以下功能 求任意的一个m×m矩阵的对角线上元素之和,m(2<=m<=20)及矩阵元素从键盘输入(只考虑int型,且不需考虑求和的结果可能超出int型能表示的范围)。编程可用素材:printf("Please input m: ")...、 printf("\nPlease input array:\n")...、printf("\nsum=...\n"...。 程序的运行效果应类似地如图1所示,图1中的5和 1 45 67 235 464 35 6 89 32342 8 347 9346 47 95 746 46 785 436 19434 634 3235 567 24 8465 25 是从键盘输入的内容。

C语言上机作业题及答案

实验一: 1、已知华氏温度,根据转换公式计算相应的摄氏温度。 摄氏温度= 5*(华氏温度-32)/9 2.任意输入一个有五位数字的正整数,逆序输出每一数位上的数字。 如: 输入 12345 输出 5 4 3 2 1 #include"stdio.h" main() { double t,T; printf ("已知华氏温度,根据转换公式计算相应的摄氏温度"); scanf ("%lf",&t); T=(5*(t-32)/9); printf ("摄氏温度=%lf",T); } #include"stdio.h" main() { int value,a,b,c,d,e,m,n,h; printf ("任意输入一个有五位数字的正整数,逆序输出每一数位上的数字"); scanf ("%d",&value); a=value/10000; m=value%10000; b=m/1000; n=m%1000; c=n/100; h=n%100; d=h/10; e=h%10; printf ("%d%d%d%d%d",e,d,c,b,a); } 实验二: 1.一个成年人的身高与其父母的身高密切相关,根据以下人体标准身高预测公式计算自己或某个同学的身高,并跟实际身高比较,给出结论是否符合该公式(误

差在3厘米范围内即视为相符)。 男性身高=(父亲身高+母亲身高)×1.08÷2(厘米) 女性身高=(父亲身高×0.923+母亲身高)÷2(厘米) 2.从键盘上输入税前收入,根据以下公式及规则,计算个人所得税税额并输出。应纳个人所得税税额=(税前收入—起征点额度)*适用税率—速算扣除数 其中,起征点额度是3500元,其他如下: 应纳税所得额税率速算扣除数 不超过1500元的部分 3% 0 超过1500元至4500元的部分 10% 105 超过4500元至9000元的部分 20% 555 超过9000元至35000元的部分 25% 1005 超过35000元至55000元的部分 30% 2755 超过55000元至80000元的部分 35% 5505 超过80000的部分 45% 13505 如:某人月收入5000元,则应纳个人所得税税额为(5000-3500)* 10% - 105 = 45元。 #include #include main() { float A,a,H,h,b; printf("父亲身高(厘米)\n"); scanf("%f",&A); printf("母亲身高(厘米)\n"); scanf("%f",&a); printf("孩子实际身高(厘米)\n"); scanf("%f",&H); printf("请选择孩子性别:女=0,男=1\n"); scanf("%f",&b); if(b) h=(A+a)*1.08/2; else h=(A*0.923+a)/2; if(fabs(H-h)<=3) printf("实际身高符合该公式\n"); else

C语言作业题

1.第一次 1.1.编写一程序,通过键盘输入一华氏温度,将其转换为摄氏温度后输出。公式为c=5/9(f -32) #include "stdio.h" main() { fl oat f=0,h=0; printf("请输入华氏温度:"); scanf("%f",&f); printf("转化为摄氏温度为:"); h=(fl oat)5/9*(f-32); printf("%.2f\n",h); } 1.2.通过键盘输入一小写字母,将其转换为大写字母输出,并输出该大写字母的后一位字母和前一位字 母(如果输入该大写字母为A,则其前一位字母为Z;如果输入该大写字母为Z,则其后一位字母为A)。 #include "stdio.h" main() { char ch1,ch2,ch3,ch; printf("请输入一个小写字母:\n"); whil e(scanf("%c",&ch),ch<97 || ch>122) { printf("您输入的符号不是小写字母,请重新输入一个小写字母:\n"); } printf("其对应的大写字母和前后的大写字母分别为:\n"); if(ch=='a'){ch2=ch-32;ch1=ch2+25;ch3=ch2+1;} else if(ch=='z'){ch2=ch-32;ch1=ch2-1;ch3=ch2-25;} else {ch2=ch-32;ch1=ch2-1;ch3=ch2+1;} printf("%c,%c,%c\n",ch1,ch2,ch3); } 1.3.通过键盘输入一个两位的整数,试编写程序将其个位与十位分别以字符的方式输出。输出形式为: “the input number is 你输入的整数,the tens is 十位数字,the units is 个位数字。”如果输入的整数不正确,则输出“wrong input” #include "stdio.h" main() { int a,b1,b2; printf("请输入一个两位正整数:\n"); scanf("%d",&a); if(a<10||a>=100) { printf("输入不符合要求");

C语言作业

实验一 C程序的运行环境及简单程序编写(一) 一、实验目的 1. 了解VC++6.0集成环境的基本操作方法。 2. 了解在该系统上如何编辑、编译、连接和运行一个C程序。 3. 通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1. 打印输出你的姓名,年龄,地址信息。 2. 编写程序,实现输出 ********************************************* C语言程序设计 ********************************************* 3. 编写程序,求2个整数的和、差、积、商。 实验二C程序的运行环境及简单程序编写(二) 一、实验目的 1. 编写运行简单的C程序,了解C源程序的特点。 二、实验内容 1. 编写程序,已知长方形的长为8cm,宽为3cm,求长方形的周长和面积。 2. 在上一题的源代码中,用2种注释方法,添加注释内容: 这是一个简单的C语言程序。 3. 编写程序,实现输出三行文字,第一行 Print: (1)\\\\\\\\\\ (2)&&&&&&&&&& (3)|||||||||| 实验三数据的存储与运算(一) 一、实验目的

1. 掌握变量的定义及使用 2. 掌握整型数据在程序中的表示及使用 二、实验内容 1.教材P19例2.1 2. 编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的面值为20美 元、10美元、5美元和1美元钞票来付款。 运行结果: Ener a dollar amount:93 Result: $20 bills:4 $10 bills:1 $5 bills:0 $1 bills:3 3. 输入2个变量的值,交换这2个变量的值后输出。 Input (x,y):2,3 output(x,y):3,2 实验四数据的存储与运算(二) 一、实验目的 1. 掌握整型数据在程序中的表示及使用 2. 掌握实型数据在程序中的表示及使用。 二、实验内容 1.教材P24例2.2 2.教材P46习题1 3. 编写一个程序,要求用户输入一个两位数,然后逆序打印出这个数。 Enter a two-digit number:28 The reversal is :82 实验五数据的存储与运算(三) 一、实验目的 1. 掌握符号常量、字符型数据、字符串的应用 2. 掌握强制类型的转换 二、实验内容 1.给出园半径,求园的体积v=4/3πr3 2.将小写字母转换为大写字母,并将其按字符和整数两种方式输出。 3.输入从午夜开始的秒数total_sec,请计算出等价的时间,用小时(0 ~23)、分钟(0 ~59) 和秒(0 ~59)表示。(建议使用%运算符) Enter total seconds:2590 Time:0:43:10 4.编程计算1/2+1/3+1/5的结果。 实验六数据的存储与运算(四)

C语言作业2

期待的输出时间限制内存限制#include main() { int a,b,c,q,e,f,g,h,i,j,k,m,n,p,x,y,z; scanf("%1d",&a); scanf("%1d%1d%1d%1d%1d",&b,&c,&q,&e,&f); scanf("%1d%1d%1d%1d%1d",&g,&h,&i,&j,&k); x=a+c+e+g+i+k; y=b+q+f+h+j;

n=m-1; z=n%10; p=9-z; printf("%d\n",p); } H2:数制转换(选作) 成绩: 5 / 折扣: 0.8 我们通常使用的都是十进制的数字,但其实在生活中也经常会使用其它进制。 这个题目会给你两个不同的数字,它们不属于同一进制,要求你计算出当它们分别处于何种进制之中时,两个数字相等。譬如12 和 5 ,在十进制下它们是不等的,但若12 使用 3 进制而5 使用六进制或十进制时,它们的值就是相等的。因此只要选择合适的进制,12 和5 就可以是相等的。 程序的输入是两个数字M 和N( 其十进制的值不超过1000000000) ,它们的进制在2~36 之间。对于十以下的数字,用0~9 表示,而十以上的数字,则使用大写的A~Z 表示。 求出分别在2~36 哪种进制下M 和N 相等。若相等则输出相应的进制,若不等则输出错误信息。当然了,对于多种可能成立的情况,找出符合要求的进制最小的一组就行了。信息的格式见测试用例。 测试输入期待的输出 制 #include"string.h" #include"stdio.h"

{ char a[N],b[N],d[N],e[N],d0[N]; int i,j,o,r,g,h,w,t,l,k,max1,max2; double p[N],q[N]={0},u[N],v[N]={0},c[N],f[N],m,n; for(i=0;i='\x30') c[i]=b[i]-'0'; if(b[i]<='\x5A'&&b[i]>='\x41') c[i]=b[i]-'7'; } for(i=0;i='\x30') f[i]=e[i]-'0'; if(e[i]<='\x5A'&&e[i]>='\x41') f[i]=e[i]-'7'; } max1=c[0]; for(i=1;i

c语言第1、2章练习题答案

第1、2章练习题 1.以下叙述正确的是()。B A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如fun(fun(x)) C)C语言函数不可以单独编译D)C语言除了main函数外,其他函数不可以作为单独文件形式存在 2.以下叙述正确的是()。C A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句 C)简单的C语句必须以分号结束D)C语句必须在一行内写完 3.以下叙述中正确的是()。C A)C程序中的注释只能出现在程序的开始位置和语句的后面 B)C程序书写格式严格,要求一行内只能写一条语句 C)C程序书写格式自由,一条语句可以写在多行上 D)用C语言编写的程序只能放在一个程序文件中 4.下列叙述中错误的是()。A A)一个C语言程序只能实现一种算法B)C语言程序可以由多个程序文件组成 C)C语言程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在5.以下叙述中正确的是()。C 页脚内容1

A)C语言程序将从源程序中的第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序从此开始执行,在此结束 D)main可作为用户标识符,用以命名任意一个函数作为主函数 6.对于一个正常运行的C程序,以下叙述正确的是()。A A)程序的执行总是从main函数开始,在main函数中结束 B)程序的执行总是从程序的第一个函数开始,在main函数结束 C)程序的执行总是从main函数开始,在程序的最后一个函数中结束 D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束7.下列叙述正确的是()。D A)每个C语言程序文件中都必须有一个main( )函数 B)在C语言程序中main( )函数的位置是固定的 C)C语言程序中所有函数之间都可以相互调用,与函数所在的位置无关 D)在C语言程序的函数中不能定义另一个函数 8.下列叙述中错误的是()。B A)C程序在运行过程中所有计算机都以二进制方式进行 B)C程序在运行过程中所有计算机都以十进制方式进行 页脚内容2

c语言练习题带详解答案

一、编程题 1.输入2个整数,求两数的平方和并输出。 #include int main(void) { intt a ,b,s; printf("please input a,b:\n"); scanf("%d%d”,&a,&b); s=a*a+b*b; printf("the result is %d\n",s); return 0; } 2. 输入一个圆半径r,当r>=0时,计算并输出圆的面积和周长,否则,输出提示信息。 #include #define PI 3.14 int main(void)

{ double r ,area , girth; printf("please input r:\n"); scanf("%lf",&r); if (r>=0) { area =PI*r*r; girth =2*PI*r ; printf("the area is %.2f\n", area); printf("the girth is %.2f\n", girth);} else printf("Input error!\n"); return 0; } 3、已知函数y=f(x),编程实现输入一个x值,输出y值。 2x+1 (x<0) y= 0 (x=0)

2x-1 (x>0) #include void main() { int x,y; scanf(“%d”,&x); if(x<0) y=2*x+1; else if(x>0) y=2*x-1; else y=0; printf(“%d”,y); } 4.从键盘上输入一个百分制成绩score,按下列原则输出其等级:score≥90,等级为A;80≤score<90,等级为B;70≤score<80,等级为C;60≤score<70,等级为D;score<60,等级为E。 #include void main(){ int data;

C语言练习作业及参考答案

习题一 1、C语言源程序最多可能由____ABCD____________部分组成? A) 预处理部分B)变量说明部分 C) 函数原型声明部分D)函数定义部分 2、一个完整的C语言源程序最少必须有___C____。 A)若干个主函数B)若干个函数 C)且只能有一个主函数D)一个函数 3、C语言以函数为源程序的基本单位最主要有利于__B_____。 A)程序设计结构化B)程序设计模块化 C)程序设计简单化D提高程序设计有效性 4、要使得C语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过______________B_______________________。 A)编辑和链接B)编译和链接 C)修改和运行D运行并输入数据 5、一个C程序的执行是从______A______。 A)本程序的main函数开始,到main函数结束。 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 6、以下叙述正确的是__A______。 A)在C程序中,main函数必须位于程序的最前面 B)C程序的每行中只能写一条语句 C)C语言本身没有输入输出语句 D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误 7、以下叙述不正确的是___D_____。 A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main函数 C)C程序的基本组成单位是函数 D)在C程序中,注释说明只能位于一条语句的后面 8、C语言规定:在一个源程序中,main函数的位置是___A_____。 A)必须在最开始 B)必须在系统调用的库函数的后面 C)可以任意 D)必须在最后

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