当前位置:文档之家› c语言程序设计学习指导与练习提高-参考答案

c语言程序设计学习指导与练习提高-参考答案

c语言程序设计学习指导与练习提高-参考答案-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN第1章 C语言概述知识点巩固习题一、选择题二、基本概念填空题1. 小写2. 有且仅有3. 函数4. 执行部分5. 编译连接6. /* */7. Alt+Enter 8. F29. F6 10. F10第2章程序的灵魂—算法知识点巩固习题一、基本概念填空题1. 一个或多2. 流程图 N-S3. 判断4. 分支5. 顺序结构循环结构6. 一个一个7. 结构8. 适合9. 一个算法应包含有限个操作步骤10. 略二、算法填空题1.(1)a与b互换(2)输出a,c,b(3)输出a,b,c2.(1)n=1 (2)a>max(3)n=n+13.(1)sum=sum+n (2)输出sum4.(1)n被5整除(2)输出n不能被3和5整除第3章数据类型、运算符与表达式知识点巩固习题一、选择题二、基本概念填空题1. unsigned2. #define 符号常量名常量3. 预定义标识符用户标识符4. 字母数字下划线字母下划线5. 换行6. 4.07. a/(b*c) 8.(1)58.(2)5 8.(3)39. float a1=1,a2=1; 10. 65535 0 111 0000000000000000 11. 0 1 12. ! && ||13. 非0 0 1 0 14. 1 015. x>20&&x<30||x<-100提高题一、选择题二、基本概念填空题1. 2. 11 123. 将10赋值给s4. \ 'A' '\0'5. 36. 0.027. cos3)+8*exp(x) 8. -b+acb49. 20 3 10. 1211. 145 12. 313. 14. 1015. 1 16. 算术关系逻辑逗号条件赋值第4章顺序结构程序设计知识点巩固习题一、选择题二、填空题1. ;2. 花括号(“{}”)3. 12454.(1)-200 25004.(2)i=-200, j=2500 4.(3)i=-200j=25005. a=,a= ,a= 513.,a= 513.6. 25 21 37三、完善程序题1. a=b b=c2. ch=ch-32 ch3. scanf("%f%f",&x,&y); z4. #define PI scanf("%f",&r,) v=3*PI*r*r*r提高题一、选择题二、填空题1. 02. 100 300 400三、完善程序题1. a1000 a10 a10 a方法1:a-b a-b方法2:a/b a/b第5章选择结构程序设计知识点巩固习题一、选择题二、填空题1. yes2. -43. 14. 10 20 05. 5 0 3三、完善程序题1. a%2==1 "no\n"2. ch>=’A’&&ch<=’Z’ ch+323. z=-2*x/Pi x==0 z=2*x/Pi4. temp=a b=temp5. x%3==0||x%7==0 f=16. (int)(score/10) default:grade='E'提高题一、选择题二、填空题1. 32. *#3. m=1 m=3三、完善程序题1. b<=c b<=a&&b<=c printf("%d,%d,%d\n",c,a,b) printf("%d,%d,%d\n",c,b,a)2. x>=1&&x<10 y=3*x-113. k==1 k==2 k==34. ch=ch+3 ch=ch+3-265. scanf("%ld",&i) b2+200000* b=i* b10+(i-1000000)*第6章循环结构程序设计知识点巩固习题一、选择题二、填空题1. 1 2 32. 363. 74. 1 35. 1206. 5 4 67. 05 8. *#*#*#$9. 3,3 10. 18三、完善程序题1. while(i<=100) i++2. amin=x x!=-1 x<amin3. int ok ok i++ yes no4. r!=0 n r m%n5. >=1e-6 xn1 (xn0+a/xn0)/26. #include<> x0=x x0-f/f1 fabs(x-x0)>=1e-57. 4-i 2*i-18. n<=13 t=n9, prime=1 m%n==0 prime10. b=i+111. break continue12. sn=tn=0 i<=n a=a*1013. int n t=t*n14. j=n/10%10 i*i*i+j*j*j+k*k*k==n15. s=s+2*h h=h/2提高题一、选择题二、填空题1. m=2 求m和n的最大公约数2. -23. 16,604. This Is Book!5. 101,-1三、完善程序题1. (ch=getchar())!='#' letter++ ch>='0'&&ch<='9' other++2. fabs(t) x*x/n (2*n+1)3. f1*f2<0 x=(x1+x2)/2 x2=x x1=x4. fz+fm i++5. n=0 i%7==26. k*k break n/10%107. (a!=c&&b!=c&&a!= 'X'&&c!= 'X'&&c!= 'Z'8. d=1 a%i==0&&b%i==0&&c%i==0 d=d*i9. n!=0 n/10 continue i10. s=0 m==s m%i==0第7章数组知识点巩固习题一、选择题二、基本概念填空题1. 首地址2. 有限3. 行列下标值相等4. 两个原序列同为升序或同为降序5. gets(str);6. 0三、阅读程序题1. s=12342. *************************3. 求数组最大元素的下标4. s=155. 0 1 26. 0 0 0 0 10 1 20 1 27. 6 8. 将两个字符串合并,并输出合并串的串长9. e,hello 10. 将读入的十进制正整数转换成十六进制序列y, ,0四、完善程序题1. x=x/2 x!=0 i-12. a/100%10 aa[i]=aa[i]%10 i<23. k=SIZE-1 j<k4. find=1 low=mid+1 high=mid-15. i==j a[i][4-i]=16. a[m-1][0] a[m][n-1]=a[m-1][n]7. k++ a[i][j] printf("\n")8. " " strcmp(a,max)>09. i=0 a[i++]=b[j] a[i]= '\0'10. char s[ ] j=0,k=0 s[k]= '\0'11. a[i]!=’\0’ a[i]+3-26 a[i]+3提高题一、选择题二、阅读程序题1. 将任意读入的整数插入有序数组后,使之依然有序2. 2 5 8 *#WaMP*三、完善程序题1. a[i++] b[j++] break2. x%10 m<n m>=n3. a[k]=k a[k]!=0 a[j]%a[k]==04. a[i][0]=a[i][i]=1 a[i-1][j-1]+a[i-1][j] j<=i5. (N+1)/2 a[j][N-k] printf("\n")6. i=0,j=strlen(str)-1 str[j] str[j]7. a[i]-97 i+978. <> s=0 strlen(a)9. toupper(c)- 'A'+10 c-‘0’ d*r+cr第8章函数知识点巩固习题一、选择题二、填空题1. 30,20,102. 83. hlo4. 6 7 85. 110…f(1)6. 2 11 3 11 4 11 210…f(2)100…main()7. 2,5,1,2,3,-2 8. 15,64,69. c=0c=-1c=-2三、完善程序题1. i<2 j<4 arr[i][j]>max max=arr[i][j]2. ch ch=='#' i++3. str[num]!= '\0' num4. float fmax(x,y) (x>y)x:y5. return(1) return(n+sum(n-1))6. void inverse(char str[ ]) j=strlen(str) i<j-17. str[i++]=str2[j] str[i]= '\0' stringcat(s1,s2,s)8. return x return((2*n-1)*x*p((n-1),x)-(n-1)*p((n-2),x))/n提高题一、选择题二、填空题1. 212. 43. 0123454. 3 1 55. 567 16. 5,257. 1 1 1 10 121 2 2 9 131 3 3 8 14三、完善程序题1. str[i] word=0 num++2. m%k==0 prime(n-i)3. y>x&&y>z return z j%x1==0&&j%x2==0&&j%x3==04. m=1 m*i m=0 fun(k)5. s[i]=k (i+1)%5==0 sum=06. #include <> flag=0 len++ place=start7. (i=n/10)!=0 n%10第9章预处理命令知识点巩固习题一、选择题5. B二、基本概念填空题1. 不占用2. 无三、阅读程序题1. 152. ar=9 ar=9 ar=11提高题一、选择题二、阅读程序题1. 8 92. 12三、完善程序题#include ""第10章指针知识点巩固习题一、选择题二、基本概念填空题1. NULL 合法空间的地址2. a[5]元素的地址 a[5]元素的值3. 54.(1)&a[1] 即数组a的第二行的首地址4.(2)&a[2][0] 4.(3)&a[1][2]4.(4)a[0][2]5. 12 126. ABCD A7. 3 字符串“”三、阅读程序题1. 2,52. ga3. xyabcABC4. ABCDBCDCDD5. 6,6 9,96. 调用函数求得任意输入的两整数之和7. 10,20 10,208. 48 62 659. AD BC BB 10. 1四、完善程序题1. p p=a *p2. p=a p-a3. getchar() ‘\0’ ++4. 方法1:&a[0][0] i*4+j方法2:i/4 i%4 &a[0][0] i*4+j方法3:p=a p+i/4 i%45. t[80] strcmp(c[i],c[i+1])>0 puts6. char a[10] strcmp(a,p[i])<07. max_value(a,10) p++ *p>m8. t=*x *x=*y *y=t9. *t++ str1,str210. p[n]!=c p+n提高题一、选择题二、基本概念填空题1. 3*i+j i j2. nanjing i e g3. BBBAAA123三、阅读程序题1. 152. 4,53. 8retupmo puter4. elpoeP anihC5. hane四、完善程序题1. break ‘\0’ *p++2. s+n-1 break p2—3. *(text+i) n++ j=04. fac[left] fac[right] fac[left] fac[left++]5. j++ j++ j++ a!=0 r<10 i-16. exit(0) *(p+i)=*p1 p++7. *fun)(double) (*fun)(a+i*h) mypoly第11章结构体、共用体与枚举类型知识点巩固习题一、选择题二、基本概念填空题3.5. 346. 20 w[0].a[3] w[1]. pw->a[1] (*pw).a[1] pw-> (*pw).三、阅读程序题1. 92. 0:706,1:9083. 48四、完善程序题1. t=a[i] a[i]=a[k] a[k]=t2. scanf("%s",name) stu[j].dps++3. a[i].con++ a[j].con++4. (d-1)5. return h p1!=NULL p1=p1->link p1->link=h6. p2->next head head->next p2->next=p1提高题一、选择题二、阅读程序题1. 51 200 31 4060213. 2,54. 4,85. 2,5dime dollar三、完善程序题1. break Find(a,num,n) q-> q->2. free(p2) NULL3. v2=h p=v2->next4. h!=NULL break (NP)malloc(sizeof(ND)) h=p p++第12章位运算知识点巩固习题一、选择题二、基本概念填空题1. 2. a&03. a|077774. x|0xff005. a=012500>>26. ch|0x20提高题阅读程序题a1f6第13章文件知识点巩固习题一、选择题二、基本概念填空题1. rewind2.三、阅读程序题1. 将文件复制到文件中2. Like C四、完善程序题1. fgetc(fp) fclose(fp)2. fopen(fname, "w") ch3. w提高题一、选择题二、阅读程序题1. 2. The fifth record is:#,9,三、完善程序题1. int argc; char *argv[] argv[1] NULL fgetc(fp)2. int x[ ][6],int n \\ fp, "%3d",a[i][j] fp3. "a" fgetc(fp1) c,fp24. filename fp fp。

相关主题