收藏 分销(赏)

C语言程序设计实验与习题指导同步自测答案.doc

上传人:w****g 文档编号:6413326 上传时间:2024-12-08 格式:DOC 页数:14 大小:51.04KB 下载积分:8 金币
下载 相关 举报
C语言程序设计实验与习题指导同步自测答案.doc_第1页
第1页 / 共14页
C语言程序设计实验与习题指导同步自测答案.doc_第2页
第2页 / 共14页


点击查看更多>>
资源描述
C语言程序设计实验与习题指导同步自测答案 2.1.3 同步自测 一、选择题 1.D 2.C 3.D 4.C 5.A 6.B 7.D 8.C 二、填空题 1.①c ②exe 2.①main 3.①函数说明部分 ②函数体 4.①主或main ②主或main 5.①; 2.2.3 同步自测 一、选择题 1.B 2.D 3.C 4.C 5.C 6.B 7.D 8.A 9.C 10.B 11.D 12.D 13.D 14.C 15.C 16.D 17.C 18.C 19.B 20.A 21.D 22.A 23.D 24.C 25.D 26.B 27.B 28.D 29.D 30.C 31.A 32.B 33.D 34.B 35.C 2.3.3 同步自测 一、选择题 1.B 2.C 3.D 4.A 5.B 6.A 7.A 8.A 9.D 10.B 2.4.3 同步自测 一、选择题 1.B 2.A 3.B 4.C 5.B 6.D 7.C 8.A 9.D 10.B 二.编程题 1. #include<stdio.h> void main() { int x,y; printf("请输入自变量x的值: "); scanf("%d",&x); if(x<0) y=3*x+1; else if(x<5) y=2*x; else y=x+2; printf("\n函数y的值为: %d",y); } 2. #include<stdio.h> void main() { int a,b,c,d,t; printf("请输入四个整数:\n"); scanf("%d%d%d%d",&a,&b,&c,&d); if(a>b) {t=a;a=b;b=t;} if(a>c) {t=a;a=c;c=t;} if(a>d) {t=a;a=d;d=t;} if(b>c) {t=b;b=c;c=t;} if(b>d) {t=b;b=d;d=t;} if(c>d) {t=c;c=d;d=t;} printf("按新顺序输出的数为: %d %d %d %d",a,b,c,d); } 2.5.3 同步自测 一、选择题 1.C 2.C 3.D 4.D 5.D 6.C 7.D 8.B 9.A 10.B 11.B 12.B 13.B 14.B 15.C 二、填空题 1.①getchar() 2.①n++ 3.①′\n′ ②num++; 4.①n<=m ②total=total+sum 5.①(i/100)*(i/100)*(i/100)+ ((i/10)%10)*((i/10)%10)*((i/10)%10)+(i%10)*(i%10)*(i%10) ②g==i 6.①10 7.①i%j==0 8.①b 9.①y=1 ②x%i==0 10.①2*x+4*y==90 三.读程序写结果题 1. 8,17 2. 5723 3. 4 四.编程题 1. main() { int x,y,a,b; for(x=100;x<1000;x++) {y=0; a=x; while(a) { y=y*10+a%10; a=a/10; } if(x+y==1333) printf("a=%d;b=%d;c=%d\n",x/100,(x/10)%10,x%10); } } 2. main() { long x,y/* 存放x */,n/* 记录x的位数 */,s/* 存放x*x */; long z /* 存放被取的顺序从右到左的相应部位数字 */,t/*十进制的权*/; for(x=1;x<=100;x++) { y=x; n=0; z=0; t=1; while(y) { n++; /* 记录x的位数 */ y=y/10; } s=x*x; for(;n>0;n--) { z+=(s%10)*t; /* 取相应部位数字 */ t*=10; s=s/10; } if(x==z) printf("%-10ld",x); } } 3. main() { int i; for(i=1;i<=100;i++) if((i+3)%5==0&&(i-3)%6==0) { printf("%d",i); break; } } 4. main() { int x,a,b,c; for(x=100;x<1000;x++) { a=x/100; b=(x/10)%10; c=x%10; if(a*a*a+b*b*b+c*c*c==1099) printf("%-10d",x); } } 5. main() { int x,a,b,c,count=0; for(x=100;x<1000;x++) { a=x/100; b=(x/10)%10; c=x%10; if(a+b+c==5) count++; } printf("共有%d个其各位数字之和是5的数字",count); } 2.6.3 同步自测 一、选择题 1.B 2.C 3.D 4.B 5.A 6.D 7.D 8.D 9.D 10.B 11.B 12.A 13.D 14.D 15.B 16.B 17.A 18.A 19.B 20.A 21.A 22.D 23.D 24.A 25.A 二、填空题 1.① fac(n-1) 2.①a*a%8!=1 3.①a%b 4.①i++ 5.①j!=0 或 j ② n%10+’0’ 6.① x>=’a’&&x<=’z’ 7.① x=n ②n%10 ③x 三、读程序写结果题 4. 1 2 3 1. 9,19 2. f=6 3. 1 2 3 5. 30 6. -5,-12,-7 7. 10,20,30 8. !EDCBA 9. 4321 10. 7 15. 123 456 3 3 -2 2,5,1 123,456 14. 1,7,3 10,7,3 1,7,4 10,7,4 6,7,4 12. 17,7,7 17,8,11 11. 2 13. 5,25 16. j=2 S=10 17. 15,145 18. 6 四、编程题 1. #include <stdio.h> void delspace(char *s) { int i,j; for(i=0,j=0;s[i]!=’\0’;i++) if(s[i]!=’ ’) {s[j]=s[i];j++} s[j]=’\0’; } 2. #include <stdio.h> #include <math.h> void main() { int adddigit(int num); int n; scanf(“%d”,&n); printf(“sum=%d\n”,addigit(n)); } int addigit(int num) { int s=0; num=abs(num); do{s+=num%10; num/=10; }while(num); return s; } void main() { char *str; printf(“input string:”); gets(str); delspace(str); printf(“%s”,str); } 3. #include <stdio.h> #include <math.h> void main() {int isprime(int x); int a; printf(“please input the number:\n”); scanf(“%d”,&a); if(isprime(a)) printf(“the %d is a prime\n”,a); else printf(“the %d is not a prime\n”,a); } int isprime(int x) { int j; for(j=2;j<=sqrt(x);j++) if(x%j==0) return 0; return 1; } 2.7.3 同步自测 一、选择题 1.C 2.A 3.C 4.A 5.D 6.C 7.C 8.D 9.B 10.B 11.D 12.C 13.D 14.D 15.B 二、填空题 1.① k=p 2.① a[i][j]<min 3.① i+j==2 4.① continue 5.① j=3 ② a[j-1][k-1] 6.① x/10 或int(x/10) 7.① !(s[i]>=’0’&&s[i]<=’9’) 8.① a[n-i-1]=temp 三、读程序写结果题 1. max=10,row=2,colum=1 2. 18,10 3. countryside 4. xbcdBCD 四、编程题 1. 参考程序及评分标准一: #include<stdio.h> #define N 5 viod main() { int a[N+1],x,i,k; for(i=0;i<N;i++) scanf("%d",&a[i]); scanf("%d",&x); //2分 for(i=0;a[i]<x&&i<N;i++) ; //3分 for(k=N;k>i;k--) a[k]=a[k-1]; a[i]=x; //3分 for(i=0;i<=N;i++) printf("%5d",a[i]); putchar(‘\n’); //2分 } 参考程序及评分标准二: #include<stdio.h> #define N 5 viod main() { void insert(int v[],int n,int x); int a[N+1],x,i; for(i=0;i<N;i++) scanf("%d",&a[i]); scanf("%d",&x); //2分 insert(a,N,x); //2分 for(i=0;i<=N;i++) printf("%5d",a[i]); putchar(‘\n’); //2分 } void insert(int v[],int n,int x) { int i,k; for(i=0;v[i]<x&&i<n;i++) ; //2分 for(k=N;k>i;k--) v[k]=v[k-1]; v[i]=x; //2分 } 3. #include <stdio.h> #include <string.h> void main() { void copystr(char *p1,char *p2,int m); 2. #include<stdio.h> #include<string.h> void main() { void reverse(char s[]); char s1[80]; gets(s1); reverse(s1); puts(s1); } void reverse(char s[]) { int i,j,c; for(i=0,j=strlen(s)-1;i<j;i++,j--) { c=s[i]; s[i]=s[j]; s[j]=c; } } char str1[20],str2[20]; scanf(“%s”,str1); scanf(“%d”,&m); if(strlen(str1)<m) printf(“input error”); else { copystr(str1,str2,m); printf(“the result is :%s”,str2); } } void copystr(char *p1,char *p2,int m) { int n=0; while(n<m-1) {n++; p1++;} while(*p1!=’\0’) {*p2=*p1;p1++;p2++;} *p2=’\0’; } 2.9.3 同步自测 一、选择题 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服