季《C语言程序设计》作业及答案.pdf_第1页
季《C语言程序设计》作业及答案.pdf_第2页
季《C语言程序设计》作业及答案.pdf_第3页
季《C语言程序设计》作业及答案.pdf_第4页
季《C语言程序设计》作业及答案.pdf_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2013 年秋季学期年秋季学期C 语言程序设计作业语言程序设计作业 作业提交格式要求:请同学们把答案集中单独写在一个.doc 文档中,作为附件上传(不不 要把答案直接填写在题目的空中要把答案直接填写在题目的空中)。特规定格式如下: 一、ABCDD AAAAA 二、 题号12345678910 结果 三、 (1)BeiJing ShangHai (2)x=8,y=7 (3)r=k:i+j=90 以上只是举例,不是正确的输出结果。请按上述规定书写和提交作业结果,不符合以不符合以 上规定的作业将作为上规定的作业将作为 0 分处理分处理。 鼓励独立完成作业,严惩抄袭。鼓励独立完成作业,严惩抄袭。 第一章作业第一章作业 一、将数 213、12.75、79.375 用十六进制表示 1016 1016 1016 1.(213)(D5) 2.(12.75)(C.C) 3.(79.375)(4 .6)F , 一 , 、 。 二、填空 1.在 C 语言中,数值常量 0x9f 的十进制值是159。 2.字母 a 的 ASCII 码为十进制数97。 第三章作业第三章作业 一、选择题: 1、下列变量名中,是非法的。 A) MyCarB) 4aC) my_carD) a48 2、下列变量名中,是合法的。 A) 56AB) _abcC) 48bD) while 3、下列常量中,是十六进制表示的 int 型常量。 A) 78B) 0x7aC) x56D) 063 4、假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b)的值是。 A) 7B) 8C) 6D)2 5、已知 c2 为字符型,则执行语句 c2=A+6-3后,c2 的值为。 A) CB) DC)不确定的值D) 70 6、设 a 为整型变量,b 为字符型变量,c 为 double 型变量,则 a+b+c 为()型 A) intB) floatC) doubleD) char 7、语言中不可用作标识符的字符有() A 字母 B 数字 C % D 下划线 8、设int a;则表达式a=2,4,a+1的值是() A.1 B.2 C.3 D.4 9.设 a 为整型变量,b 为字符型变量,c 为 double 型变量,则 a*b+c 为()型 A. int B. float C. double D. char 10. 若 a 是 int 型变量,则表达式(a=4*5,a*2),a+6 的值为() A. 20B.23C. 26D. 46 第四章作业第四章作业 一、选择题一、选择题 1、在 scanf()函数的格式说明符中,长整型数的输入格式符是。 A. %ldB. %lfC. %dD. %x 2、在 printf()函数的格式说明符中,字符型数的输出格式说明符是。 A. %cB. %fC. %ldD. %s 3、 已知 ch 是字符型变量,下面不正确的赋值语句是。 A) ch=a+b;B) ch=0;C) ch=7+9;D) ch=5+9; 4、要使用 putchar()函数必须在程序前加语句。 A. #include B. include “stdio.h“ C. include D. #include stdio.h 5、若 x 为 int 型变量,则执行以下语句后 x=。 x=7; x+=x-=x+x; A. -14B. -7C.0D.14 二、判断题二、判断题 1、C 语言标准输入操作中,gets()函数一次只可以读取一个字符。 (F ) 2、C 语言标准输出操作中,putchar()函数可以输出显示一个字符串。 ( F) 3、“r“与r是相同的; (F) 三、分析下列程序的输出结果。三、分析下列程序的输出结果。 1. #include void main() char c=p; printf(“%d,%cn”,c,c); printf(“%d,%cn”,a,a); 112,p 97,a 2. #include void main() int a; float d; printf(“Enter a and d: ”); scanf(“%d%f”, printf(“%5d,%8.2fn”,a,d); Enter a and d: 5615.765 5656,15.7715.77 第五章作业第五章作业 一、选择题选择题。 1、下列运算符中优先级最高的是。 A. =A) 执行(m=ab) 以下语句执行后 x,y,z 的值是。 if (xy) z=x;x=y;y=z; A. x=10,y=20,z=30B. x=20,y=30,z=30 C. x=20,y=30,z=10D. x=20,y=30,z=20 5、设 a=3,b=4,c=5,则表达式 !(a+b)+c-1 int 【1】; if (【2】) u=x; else u=y; if (【3】) v=u; else v=z; printf(“v=%d”,v); 【1】:u=0,v=0 【2】:xy 【3】:uz 2、输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母, 则把它变成大写字母;其他字符不变; main() char ch; scanf(“%c”, if (【1】) ch=ch+32; elseif (ch=a while(c=getchar( )!= n) switch(c-2) case 0: case 1: putchar(c+4); case 2: putchar(c+4);break; case 3: putchar(c+3); default: putchar(c+2);break; A. 668966B. 6688766C. 668977D. 66778777 二判断题二判断题 1、条件语句是可以实现多路分支的。( T) 2、任何循环语句的循环体至少都可执行一次。(F ) 3、break 语句可以出现在各种不同循环语句的循环体中。( T) 4、for 循环是只有可以确定的循环次数时才可使用,否则不能用 for 循环。 (F ) 5、While 循环语句的循环体至少执行一次。(F) 三填空题三填空题 1.已知 for(j=1,s=0;j main() int i,t=1,s=0; for (i=1;i0?-1:1) 2 下面程序的功能是打印 100 以内个数为 6 且能被 3 整除的所有数。 #include main() int i,j; for (i=0; 【1】;i+) j=i*10+6; if (【2】)continue; printf(“%d”,j); 【1】:i=9 【2】:j%3!=0 第七章第七章作业作业 一、选择题一、选择题 1、在 C 语言中,引用数组元素时,其数组下标的数据类型允许是。 A.整型常量B. 整型表达式 C.整型常量或整型表达式D. 任何类型的表达式 2、以下能对一维数组 a 进行正确初始化的语句是。 A. int a10=(0,0,0,0)B. int a10=; C. int a=0;D.int a10=10*1; 3、若有说明:int a34;则对 a 数组元素的正确引用是。 A. a24B. a1,3C. a1+10D. a(2)(1) 4、已知 int w24=7,15,8,9,20,25,14,17;则 w01的值是 A8B.9C. 15D. 25 5、若有说明 int a3=1,2,3,4,5,6,7;则 a 数组第一维的大小是。 A. 2B 无确定值C. 3D. 4 6、下面程序的运行结果是。 char c5=a,b,0,c,0; printf(“%s”,c); A. abB. abcC. abcD. ab 7、判断字符串 a 和 b 是否相等,应当使用。 A. if (a= =b)B. if (a=b)C. if (strcpy(a,b)D. if (strcmp(a,b) 8、用数组名作为实参,传给形参的是() A.数组第 0 个元素的值 B.数组全部元素的值 C.数组元素个数 D.数组首地址 9、用 double q35; 定义的数组 q 包含个元素 A. 3B5C. 8D. 15 10、已知 char c6=“ABCDE“, d6;要将c复制到d中,正确的做法是() A. d=c; B. c=d; C. strcmp(c,d); D. strcpy(d,c); 二、判断题二、判断题 1、 数组赋初值时, 初始值表中的数据项的数目可以大于或等于数组元素的个数。 (F) 2. 数组中的元素类型可以不同;(F) 3. 字符串“This“大于字符串“that“;(F) 4. 任何数组的下标都是从 0 开始;(T) 5.字符数组中的一个元素存放一个字符;(T) 三、程序填空题三、程序填空题。 invstring(char a )函数的功能是使输入的一个字符串按逆序存放,在主函数中输入和输出字 符串。 请填空【?】 。 void invstring(char a ) int n,j; char c; n=0;填空: while(an!=【1】) n+;【1】0 for( j=0; j【2】; j+)【2】n/2 c=aj;【3】;【4】;【3】aj=a(n-1)-j 【4】a(n-1)-j=c main( ) char a80; gets(a); invstring(【5】);【5】a puts(a); puts(“n“); 四、分析下面程序的结果。四、分析下面程序的结果。 main ( ) int i,j,s1=0,s2=0 ,a33= 4,9,6,5,3,1,2,8,7; printf(“a:n“); for(i=0; i3; i+) for(j=0;j3;j+)printf(“%3d“,aij); printf(“n“); printf(“n“); for(i=0; i3; i+) s1=s1+aii; s2+=ai2-i; printf(“s1=%d, s2=%dn“,s1,s2); 结果: a: 496 531 287 s1=14,s2=11 第八章第八章作业作业 一、选择题 1.在 C 语言中,下面对函数不正确的描述是()。 A. 当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。 B. 允许函数递归调用。 C. 函数形参的作用范围只是局限于所定义的函数内。 D. 子函数必须位于主函数之前。 2. 以下正确的函数形式是()。 A. double fun(int x,int y) z=x+y; return z; B. fun(int x,y) int z; return z; C. fun(x,y) int x,y; double z; z=x+y; return z; D. double fun( int x,int y) double z; z=x+y; return z; 3. C 语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是()。 A. 地址传递 B. 单向值传递 C. 双向值传递。即由实参传给形参,再由形参传回给实参 D. 由用户指定传递方式 4.一个 C 语言程序是由()。 A. 一个主程序和若干子程序组成 B. 若干函数组成 C. 若干过程组成 D. 若干子程序组成 5.用数组名作为实参,传给形参的是() A.数组第 0 个元素的值 B. 数组首地址 C.数组元素个数 D. 数组全部元素的值 三、写出程序的输出结果 1. void main(void) int a=1,k; for(k=0;k3;k+) printf(“%4d“,f1(a) int f1(int x) static int z=3,y=0; y+; z+; return(x+y+z); 结果: 6810 2. void main() int i=0; while(+ i) if(i= =10) break; if(i%3!=1) continue; printf(“%dn”,i); 结果:1 4 7 第十章作业第十章作业 一、判断题。 1、 指针和一般变量一样都有两个值:一个是它在内存中的地址值,另一个是它所存放 的数据值。T 2、 指针存放的值就是它所指向的变量的地址值。T 3、 指向 int 型变量的指针可以使用 double 型变量的地址值进行赋值。F 4、 定义指针的说明语句中,在指针名前边的*,与执行语句中在指针名前边的*具有相 同功能。F 5、 在给指针赋值时,要求指针与被赋值的地址值类型相同,级别一样。T 6、 数组名是一种地址值,它可以用来给指针赋值,但要求类型相同和级别一致。T 7、 任何两个指针进行比较运算是无意义的。F 8、 指针运算实际是地址运算,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论