大学大一c语言程序设计实验室上机题全部代码答案(实验报告)
C语言实验报告实验1-1:hello world程序:源代码:#include<stdio.h>main() printf("hello world!n"); system("pause"); 实验1-2:完成3个数据的输入、求和并输出计算结果的程序:源代码:#include<stdio.h>main() int i,j,k,sum; scanf("%d%d%d",&i,&j,&k); sum=i+j+k; printf("sum=%d",sum); system("pause"); 实验1-3:在屏幕上输出如下图形:A BBB CCCCC源代码:#include<stdio.h>main() printf(" An"); printf(" BBBn"); printf(" CCCCCn"); system("pause"); 实验2-1:计算由键盘输入的任何两个双精度数据的平均值源代码:#include<stdio.h>main() double a,b; scanf("%lf%lf",&a,&b); printf("%.1lfn",(a+b)/2); system("pause"); 实验2-2:写一个输入7个数据的程序,把输入的数据代入a + b * (c d ) / e * f g 表达式进行运算源代码:#include<stdio.h>main() float a,b,c,d,e,f,g,x; scanf("%f%f%f%f%f%f%f",&a,&b,&c,&d,&e,&f,&g); x=a + b * (c - d ) / e * f - g; printf("x=%f",x); system("pause"); 实验2-3:编写一个C语言程序,测试下列各表达式: i, j i + 1 , j + 1 i+ , j+ +i , +j i+j源代码:#include<stdio.h>main() int i=1,j=1; printf("%d %dn",i+1,j+1); printf("%d %dn",i+,j+); printf("%d %dn",+i,+j); printf("%dn",(i+)+(+j); system("pause"); 实验2-4:输入存款金额money,存期year和年利率rate,根据下列公式计算存款到期时的利息interest(税前),输出时保留2位小数。 interest = money(1+rate)year - money源代码:#include<stdio.h>#include<math.h>main() int year=2; float rate=0.1,money=1000; float futureMoney; futureMoney=money*pow(1+rate),year); printf("%10.2f",futureMoney); system("pause"); 实验2-5:输入华氏温度,输出对应的摄氏温度。计算公式如下: c = 5 * ( f - 32) / 9 其中,c表示摄氏温度,f表示华氏温度源代码:#include<stdio.h>main()int c,f;scanf("%d",&f);c = 5 * ( f - 32) / 9;printf("%d",c);system("pause");实验3-1:编写一个程序完成输入一个整数,输出它的符号源代码:#include<stdio.h>main() int i; scanf("%d",&i); if(i>0) printf("+"); else printf("-"); system("pause"); 实验3-2:请编写居民应交水费,并提供各种测试数据。 居民应交水费y(元)与月用水量x(吨)的函数关系式如下: 0 x < 0 y = f(x) = 4x / 3 0 x 15 2.5x 10.5 x > 15源代码:#include<stdio.h>main()float x,y;scanf("%f",&x);if(x<0)printf("0");else if(x>=0&&x<=15)y=4*x/3;printf("%f",y);else if(x>15)y=2.5*x-10.5;printf("%f",y); system("pause");实验3-3:请根据输入的学生成绩给出成绩等级的判断,判断规则如下: 如果输入的成绩大于等于90,则输出优秀; 如果输入的成绩小于90、大于等于80,则输出良好; 如果输入的成绩小于80、大于等于70,则输出中等; 如果输入的成绩小于70、大于等于60,则输出及格; 其他输出不及格源代码:#include<stdio.h>main()int x;scanf("%d",&x);if (x>=90)printf("优秀n");else if (x>=80&&x<90)printf("良好n");else if (x>=70&&x<80)printf("中等n");else if (x>=60&&x<70)printf("及格n");elseprintf("不及格n");system("pause");实验3-4:运输公司对用户计算运费。路程(s)越远,每公里运费越低。标准如下: s = 250km 没有折扣 250km s < 500km 2%折扣 500km s < 1000km 5%折扣 1000km s < 2000km 8%折扣 2000km s < 3000km 10%折扣 3000km s 15%折扣 设每公里每吨货物的基本运费为p,货物重为w,距离为s,折扣为d,则总运费的计算公式为: f = p * w * s * ( 1 d ) 请编程实现:从键盘输入基本运费p,货物重w,距离s,计算输出用户最终需要支付的运费源代码:#include<stdio.h>main()int p,w,s,f;scanf("%d%d%d",&p,&w,&s);float d;f = p * w * s * ( 1 - d );if (s=250)d=0;printf("%d",f);else if (s>=250&&s<500)d=0.02;printf("%d",f);else if (s>=500&&s<1000)d=0.05;printf("%d",f);else if (s>=1000&&s<2000)d=0.08;printf("%d",f);else if (s>=2000&&s<3000)d=0.1;printf("%d",f); else if (s>=3000) d=0.15;printf("%d",f);system("pause");实验4-1:已知xyz + yzz = 532,其中x、y、z都是数字(09),编写一个程序求出x、y、z分别代表什么数字源代码:#include<stdio.h>main() int x,y,z; for(x=1;x<=9;x+) for(y=1;y<=9;y+) for(z=1;z<=9;z+) if(100*x+10*y+z+100*y+10*z+z=532) printf("%d %d %d",x,y,z); system("pause"); 实验4-2:编写一个程序打印如下对称图形(行数由键盘输入19范围的值),例如下面是输入的数字4时的情形: 4444444 33333 222 1 222 33333 4444444源代码:#include<stdio.h>main() int i,j,k,n; printf("请输入一个数字n"); scanf("%d",&n); i=n; for(i=0;i<2*n-1;i+) k=i; if(i>=n) k=2*n-2-i; for(j=0;j<k;j+) printf(" "); for(j=0;j<2*(n-k)-1;j+) printf("%d",n-k);