《《c语言程序设计》实验.设计.习题.答案.doc》由会员分享,可在线阅读,更多相关《《c语言程序设计》实验.设计.习题.答案.doc(27页珍藏版)》请在金锄头文库上搜索。
1、实验三3.4编写程序,用getchar函数读入两个字符c1,c2,然后分别用putchar函数输出void main() char c1,c2; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); putchar(n); printf(%c %cn,c1,c2);3.5把790分钟换成用小时和分钟表示,然后输出。void main()int s=790;printf(%d小时,s/60);printf(%d分钟,s%60);3.6将读入三个数a,b,c,然后交换它们的值,把a的值给b,把b的值给c,把c的值给a.main()int a,b
2、,c,t;scanf(%d,%d,%d,&a,&b,&c);t=a;a=b;b=c;c=t;printf(%d,%d,%d,a,b,c); 3.7输入一个double类型的数,使该数保留小数点后两位,对第三位小数进行四舍五入处理,然后输出此数,验证处理是否真确。#includevoid main()float x,s,a; int z; scanf(%f,&x); a=100*x+0.5; z=(int)(a); s=z/100.0; printf(%.2fn,s);main()int a,b,t;double c;scanf(%lf,&c); b=100*c; t=1000*c; a=t%1
3、0; if (a=5) b=b+1; else b=b+0; c=1.0*b/100;printf(%7.2lf/n,c);return 0;void main()int x,y;scanf(%d,&x);if(x-5) y = x ;if(x=0) y = x-1;if(x0) y = x+1;printf(%d,y); 实验四4.2不嵌套if语句void main()int x,y;scanf(%d,&x);if(x-5) y = x ;if(x=0) y = x-1;if(x0) y = x+1;printf(%d,y); 法二:嵌套if语句void main()int x,y;scan
4、f(%d,&x); if(x-5)&(x0) y=x;else if(x=0) y=x-1;else if(x0) y=x+1;printf(%d,y);4.3如下程序运用条件运算符求变量的绝对值?void main() int a,M; scanf(%d,&a); M=a0?a:-a; printf(abs(a)=%d,M);4.4某服装店经营套服,也可单件出售,若买的不少于50套,每套80元,不足50套的每套90元,只买上衣每件60元,只买裤子每条45元,(读入所买上衣C和裤子t的件数,计算应付款m。void main() int c,t,m; printf(input the numbe
5、r of coat and trousers your want buy:n); scanf(%d%d,&c,&t); if(t=c) if(c=50)m=c*80; else m=c*90;elseif(ct)if(t=50) m=t*80+(c-t)*60;else m=t*90+(c-t)*60; else if(c=50) m=c*80+(t-c)*45;else m=c*90+(t-c)*45;printf(%d,m );4.5:从键盘中输入三个数,分别让他们代表三条线段的长度,请编写程序,判断由这三条线段组成的三角形将是什么三角形(不等边,等腰,等边或不构成三角形)?Include
6、main()int a,b,c;scanf(%d %d %d,&a,&b,&c);if(a+bc&b+ca&c+ab)if(a=b)&(b=c) printf(等边三角形);else if(a=b&b!=c)|(b=c&c!=a) printf(等腰三角形); else printf(不等边三角形); else printf(不构成三角形);4.6:判断输入的整数是否既是5又是7的倍数,若是,则输出yes,否则输出novoid main()int x;scanf(%d,&x);if(x%5=0&x%7=0)printf(yes);elseprintf(no);实验五5.2输入一行字母,将字母加
7、密输出(如“a变成c,b变成d,.,z变成b)main() int c; while ( (c=getchar () ) !=n) if (c=A|c=a) c += 2; else if (c= y|c= Y|c= z|c= Z) c=c-24; printf(%c,c); putchar (n) ;5.3利用for循环编写程序法一:#includestdio.hmain()int i,j;for(i=1;i=4;i+)for(j=1;j=6;j+)if(i=2|i=3)if(j=1|j=6)printf(* );else printf( );else printf(* );printf(n
8、);法二:#includestdio.hmain()int i,j;for(i=1;i=4;i+)if(i=1|i=4)for(j=1;j=6;j+)printf(* );printf(n);elseprintf(* );for(j=1;j=4;j+)printf( );printf(* );printf(n);5.4利用循环语句编程,输出三角形状的九九乘法表#includestdio.hmain()int i,j,k;for(i=0;i=9;i+)if(i=0)printf(*);elseprintf(%4d,i);printf(n);for(i=1;i=19;i+)printf(_ );p
9、rintf(n);for(i=1;i=9;i+)printf(%d,i);for(j=1;j=i;j+)k=i*j;printf(%4d,k);printf(n);5.5:用while语句或do-while语句编写程序,计算:e=1+1/1!+1/2!+.+1/n!.#include #include math.hmain()float s=1.0,e=1.0,t;int i=1;while(fabs(t)=1e-5) s=s*i;t=1/s;e=e+1.0/s; i+;printf(%fn,e);printf(%d,i);5.6:如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,则称
10、之为“完数”,例如:6的因子为1,2,3且6=1+2+3,所以6是完数,输出完数1+完数2+.=和值。void main()int i,j,sum,k;for(i=2;i=1000;i+)sum=0;for(j=1;ji;j+)if(i%j=0) sum+=j;if(sum=i)printf(%d的因子:n,i);k=0;for(j=1;ji;j+) if(i%j=0&k=0) printf(%d,j);else if(i%j=0) printf(+%d,j);k+;printf(=%d,sum);printf(n); 实验六6.2:将数组xx(有n个元素)的前K个元素(kn=移到数组的尾部,
11、变为后K个元素,但是数组的这两段(原前K个元素为一段,另外的n-k为一段)例如:若输入7和1 2 3 4 5 6 7,再输入5,则输出6 7 1 2 3 4 5.#includestdio.hmain() int n,k,xx20; int i,j,t; printf(nPlease enter a number); scanf(%d,&n); printf(nPlease enter %d numbers:,n); for(i=0;in;i+) scanf(%d,&xxi); printf(%nPlease enter another number:); scanf(%d,&k); for(i=0;ik;i+) t=xx0; for(j=1;jn;j+) xxj-1=xxj; xxn-1=t; printf(nAfter moving:n); for(i=0;in;i+) printf(%3d,xxi); printf(n);6.3对a数组中n种商品价格进行分段统计,商品各段价格存到b数组中,其中:价格为100到199元的个数存到b1,价格为200到299元的个数存到b2,价格为3