C程序设计第1-4章习题集 联系客服

发布时间 : 星期一 文章C程序设计第1-4章习题集更新完毕开始阅读826f2d27bcd126fff7050be0

C程序设计习题集 C语言教学小组

12. 设a=2,b=3,x=3.5,y=2.5,则(float)(a+b)/2+(int)x%(int)y为 。

13. 设int a; float f; double i ;则表达式10+’a’+i*f值的数据类型是 。 14. 设有以下变量定义,并已赋确定的值,char w; int x; float y; double z;

则表达式:w*x+z-y年求得的数据类型为 double或双精度型 。 15. 若a为int型变量,则表达式 (a=4*5,a*2) , a+6的值 。

16. 假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为 。 17. 定义:double x=3.5,y=3.2;则表达式(int)x*0.5的值是 ,表达式y+=x++的值

是 。

18. 表达式5%(-3)的值是 ,表达式-5%(-3)的值是 。

19. 若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b 的值

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

21. 设x,y,z,k都是int型变量,则执行表达式x=(y=4,z=16,k=32)后,x的值为: 。 22. 若x和a均是int型变量,则执行表达式x=a=4,6*2 后x的值为 。 23. 若a是int型变量,则执行下面表达式a=25/3%3后a的值为 。

24. 若有定义:int a=2 , b=3; float x=3.5 , y=2.5;则表达式(float) (a+b) / 2 + (int)x % (int)y的值类

型为 。

25. 若有以下定义int a=5,n=2; 则执行表达式a%=(n%=2)+1后a的值是 。 26. 若x和n均是int型变量,且x和n的初值均为5,则执行下面表达式

x + = n ++后x的值为 ,n的值为 。 27. C 语句可以分为 等5种类型。 28. C 控制语句有 种。

29. 一个表达式要构成一个C语句,必须 。 30. 复合语句是用一对 界定的语句块。

31. printf函数和scanf函数的格式说明都使用 字符开始。

32. scanf 处理输入数据时,遇到 , , 情况时该数据认为结束. 33. 已有 int i,j; float x; 为将 -10 赋给 i,12 赋给 j,410.34 赋给 x ;则 scanf 函数调用语

句的数据输入形式是 。

34. C 语言本身不提供输入输出语句,其输入输出操作是由 来实现的。 35. 一般地,调用标准字符或格式输入输出库函数时,文件开头应有以下预编译命令: 。 三.程序分析题 一)阅读程序题

1. #include

int main( )

{ int a,b,sum;

a = 35; b =45; sum = a + b; printf(”a+b=%d\\n”,sum);

return 0;} 请写出该程序的输出结果___________。

第 - 9 - 页

C程序设计习题集 C语言教学小组

2. #include

int main( )

{ int i, j, m, n;

i=6; j=9;

m=++i; n=j++;

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

return 0;} 请写出该程序的输出结果___________。

3. 已知’A’的ASCII码为65,

#include int main( )

{ char ch1=’A’;

char ch2=ch1+3;

printf(“%d,%c\\n”,ch1,ch1); printf(“%d,%c”,ch2,ch2);

return 0;} 以下程序的运行结果是___________。

4. 数字字符0的ASCII值为48,若有以下程序

#include int main()

{ char a='1',b='2'; printf(\

printf(\

return 0;}程序运行后的输出结果是___________。

5. 有以下程序

#include int main()

{ int a,b,d=25; a=d/10%9; b=a&&(-1);

printf(\

return 0;}程序运行后的输出结果是___________。

6. 用下面的 scanf 函数输入数据,使 a=3,b=7,x=8.5,y=71.82,c1='A',c2='a',问在键盘上如何输

入? 。

include int main()

{ int a,b;

float x,y; char c1,c2;

scanf(“a=%d b=%d”,&a,&b);

第 - 10 - 页

C程序设计习题集 C语言教学小组

scanf(“ %f %e”,&x,&y);

scanf(“ %c %c”,&c1,&c2); return 0; }

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

include int main()

{ int a=12345;

float b=-198.345, c=6.5;

printf(“a=M,b=%-10.2e,c=%6.2f\\n”,a,b,c); return 0; }

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

include int main()

{ int x=-2345;

float y=-12.3;

printf(“m,.2F”,x,y); return 0;}

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

#include int main() { int a=252;

printf(“a=%o a=%#o\\n”,a,a); printf(“a=%x a=%#x\\n”,a,a); return 0; }

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

#include int main()

{ int x=12; double a=3.1415926;

printf(“m##,%-6d##\\n”,x,x); printf(“.101f##\\n”,a); return 0; }

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

#include int main()

{ int x=1,y=2;

printf(“x=%d y=%d *sum*=%d\\n”,x,y,x+y); printf(“10 Squared is:%d\\n”,10*10); return 0; }

第 - 11 - 页

C程序设计习题集 C语言教学小组

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

#include int main()

{ int x=10; float pi=3.1416;

printf(“(1) %d\\n”,x); printf(“(2) m\\n”,x); printf(“(3) %f\\n”,56.1); printf(“(4) f\\n”,pi); printf(“(5) %e\\n”,568.1); printf(“(6) e\\n”,pi); printf(“(7) %g\\n”,pi); printf(“(8) g\\n”,pi); return 0; }

二)程序填空题

1. 给以下程序输入2个数值给a,b变量,b中的值给a,变量a中的值给b,实现a,b交换,

输出a,b的值。 #include int main()

{ int a,b,_____;

printf(\; __________;__________;__________; printf(\return 0;}

2. 执行以下程序后,a=_____,b=_____,c=_____。

#include int main()

{ int x=10,y=9 ;

int a,b,c ;

a = (x--==y++) ? x-- : y++ ; b = x++ ; c = y ; return 0;}

3. 写出下列表达式的值:

(1) x+a%3*(int)(x+y)%2/4 设x=5.2,a=7, y=7.4 (2) (float)(a+b)/2+(int)x%(int)y 设a=2, b=3, x=5.3, y=5.2

第 - 12 - 页

C程序设计习题集 C语言教学小组

4. 下列程序的输出结果是 16.00,请将程序补充完整。 #include int main()

{ int a=9,b=2;

float x= , y=1.1, z; z=a/2+b*x/y+1/2; printf(\ return 0;}

5. 以下程序实现的功能是输入一个字符,再将该字符输出,

#include int main()

{ int c1;

=getchar(); putchar(c1); return 0; }

6. 以下程序运行结果为:

s1=c,ASCII is 99 x=655.35,y=765.43 请将程序补充完整。 #include

int main()

{ float x=655.3524,y=765.4271;

char s1='c';

printf(\ \ return 0;}

四.编程题

1. 编写程序,输入一个三位数,然后进行个位和百位的置换,如 234 ,转换成432。 2. 编写一个程序,输入三个数,使其按照从小到大的顺序输出。

3. 编写程序,输入两个整数:1500和350,求出它们的商和余数并进行输出。

4. 编写程序,从键盘输入一个梯形的上底a,下底b和高h,输出梯形的面积s。要求使用单精

度浮点型进行计算,输出结果精确到小数点后三位。

5. 编写程序,输入一个小写字母,将该字符转换为大写字母输出。(用putchar()、getchar()函

数编写程序)

6. 编写程序,把560分钟换算成用小时和分钟表示,然后进行输出。

第 - 13 - 页