C程序设计》课外作业及参考答案
说明: (1)章节顺序按照PowerPoint电子教案;
    (2)教材上的作业注明了章节和题号;
    (3)所用教材是《C程序设计(第二版)》 谭浩强 清华大学出版社;
   
第一章 C语言概述
1.1 简答题:写出C语言的主要特点(教材习题1.1)。
1.2 填空题
1. C语言与            操作系统并称“栾生兄弟”。
2. C语言俗称为            形式。
3. C源程序文件经过            处理后产生目标文件,目标文件经          处理后生成可执行文件。
1.3 单项选择题
1. 以下说法中正确的是       
  (A)C语言程序总是从第一个定义的函数开始执行
 (B)在C语言程序中,要调用的函数必须在main函数中定义
 (C)C语言程序总是main函数开始
 (D)C语言程序中的main函数必须放在程序的开始部分
2. 以下正确的C标识符是       
 (A)_125    (B)C#    (C)C++      (D) A$
1.4 多项选择题
1.  以下关于C语言的说法中,错误的是       
  (A)俗称为“低级语言的高级形式”,因此功能简单
(B)不是结构化程序设计语言
(C)可能直接访问内存
(D)语法限制不严
2.  以下标识符属于C语言关键字的有       
  (A)integer    (B)else    (C)include  (D)while
第二章 displayblock演示C语言基本数据类型、变量、常量与表达式
2.1简答题
1. 求下面算术表达式的值。 (教材习题3.9)
a) x+a%3*(int)(x+y)%2/4
设x=2.5, a=7, y=4.7
b) (float)(a+b)/2+(int)x%(int)y
设a=2, b=3, x=3.5, y=2.5
2. 写出下面程序的运行结果。(教材习题3.10)
main()
{ int i, j, m, n;
i=8; j=10; m=++i; n=j++;
printf("%d,%d,%d,%d", i, j, m, n);
}
3. 写出下面表达式运算后a的值,设原来a=12。设a和n已定义为整型变量。(教材习题3.12)冒泡排序代码c语言
a) a+=a          b) a-=2                        c) a*=2+3   
b) d) a/=a+a      e) a%=(n%=2), n的值等于5    f) a+=a-=a*=a
4. C语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?
2.2 填空题
1. 写出下面各逻辑表达式的值。设a=3, b=4, c=5。(教材习题5.3)
  (1) a+b>c&&b==c              (2) a||b+c&&b-c         
  (3) !(a>b)&&!c||1              (4) !(x=a)&&(y=b)&&0         
  (5) !(a+b)+c-1&&b+c/2         
2. (1)5<<2                (2)0 ! = 1            (3)!!3         
(4)105%10              (5)3/2*2              (6)5^3         
(7)1<2<0              (8) 1%22           
3. 已知int  a = 1, b = 2 , c; 执行下列语句后,写出各变量的值。
  c = ++b―a++ ;    变量(1) a =         ,(2) b=         ,(3) c=        
4. 数学式对应的C语言表达式是         
5. 当算术表达式中出现了float型变量时,系统自动将该型变量值转换为   (1)   类型,然后参与运算,如果出现char型变量时,直接转换为      2      型参与运算。
2.3 单项选择题
1. C语言中,常量0.5F在内存需占用        字节存储。
(A) 1        (B)2            (C)4          (D)8
2. 下列符号中,合法的C常量是       
(A)097      (B)0.5e+1.0      (C)0x5FH      (D) '\\'
3. C语言没有专门的逻辑变量,它表示逻辑真的方法是       
(A)TRUE    (B)0            (C)1     (D)一切非零数值
4. 以下C常量错误的是       
  (A)'\xX0d '  (B)1U        (C)1e2F      (D)010101
5. 以下不正确的字符串常量是           
(A)"12'12"    (B)'abc'        (C)"\\0"图文制作小程序        (D) ""
6. 逻辑运算符两侧运算对象的数据类型           
A)只能是0或非0正数      B)可以是任何类型的数据。
C)只能是整型或字符型数据。 D)只能是01
7. 下列符号中,合法的C常量是            斗地主html5代码
(A)  ‘\t’      (B)  079      (C)  3.5e2.1      (D) 0xch
2.4 多项选择题
1. 以下变量在内存中占2个字节的是          。(只考虑TC2.0)
(A)  int  a;  (B)  int  b[2];  (C)char  c[2];  (D) float  d[2];
2. C语言中,与常量 'A' 等效的常量表达式有         
(A)65      (B)'\x41'      (C)'a'-32      (D)0101
第三章 简单C程序设计
3.1 程序设计题
1. 输入一个华氏温度,要求输出摄氏温度。公式为
  要求输出要有文字说明,取2位小数。(教材习题4.9)
2. 输入年增长率p, 编程计算并输出经过多少年后,生产总值会翻一翻。
3.2 单项选择题
1.已知实型变量a存贮的是一个0~1之间的实数,将a以两位小数百分比形式输出(如:a=0.347592,则输出为34.75%)正确的打印语句是       
(A)printf(“%.2f%%”,a*100);    (B)printf(“%.2f%”,a);
(C)printf(“%.2f%%”,a/100);    (D)printf(“%.2f%%”,100*(a+0.5));
2. 能正确输出字符A的语句是       
(A)putchar(‘\41’);    (B)puthcar(“A”);  (C)printf(“%d”, ‘A’);  (D)putchar(‘\101’);
第四章 C语言的控制语句及基本程序设计技术(统计/计数、递推/迭代、数论问题、字符图形、搜索/穷举求解)
4.1 程序分析题
1. 若a=3, b=2, c=1, 则执行下列if语句后,依次写出a、b、c的值。
if (a>b)  a=b;
if (b>c)  b=c;
  else c=b;  c=a;
2. 执行下列程序后,x和y的值分别是多少。
int x,y;
for (y=1,x=1;y<=50;y++)
  {  if (x>=10) break;
    if(x%2= =1)
      {x+=5; continue;}
    x=3;
  }
3. 写出以下程序的输出结果。
#include <stdio.h>
main()
  { int c='A',a=0,k=1;
while((k+=2)<8)
  { putchar(++c);a+=k;
ios网站资源大全  }
printf("%d\n",a);
return 1;
  }
4. 下面程序的循环体共执行了多少次,输出的结果是什么?
#include "stdio.h"
void main()
  { int m,n;
m=10;n= 1;
do { m; n+=5;
    if(!(n%3)) printf("%4d %4d\n",m,n);
  } while(m>n);
  }
5. 若输入为ABCD,下面程序的输出是什么?
#include <stdio.h>
void main()
  { char ch,n;
学编程能学到什么
for(n=0;(ch=getchar())!=10;n++) putchar(ch+32);
printf("%d\n",n);
  }
4.2 单项选择题
1. 以下程序的输出结果是        
  x=0;do printf(“%d”,x++); while(x<1);
  A  (B01    (C012    D)无任何显示
2. 以下能正确计算10!的程序段是          。 
(A) do{i=1;s=1;s=s*i; i++; }while(i<=10);   
(B) do{i=1;s=0; s=s*i; i++;}while(i<=10);
(C) i=1;s=1; do{s=s*i; i++;}while(i<=10);     
(D) i=1;s=0; do{ s=s*i; i++;}while(i<=10);
3. 若变量已有正确定义,程序 a=0; for (i=1; i<=n; i++) for (j=0; j<=i; j++) a++;  执行后,变量a的值是       
(A)n (n +1 ) / 2        (B)( n + 1 ) ( n + 2 ) / 2
(C)n ( n-1) / 2        (D)n ( n + 3 ) / 2
4. 与语句if (a!=0) … 等效的语句是           
(A)if (!a) …  (B)if (a) …  (C)if (a = = 0) …  (D)if ( a>=0 | | a<=0 ) …

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。