C语言上机实验 答案.docx
- 文档编号:10366764
- 上传时间:2023-02-10
- 格式:DOCX
- 页数:47
- 大小:36.23KB
C语言上机实验 答案.docx
《C语言上机实验 答案.docx》由会员分享,可在线阅读,更多相关《C语言上机实验 答案.docx(47页珍藏版)》请在冰豆网上搜索。
C语言上机实验答案
实验一上机操作初步(2学时)
一、实验方式:
一人一机
二、实验目的:
1、熟悉VC++语言的上机环境及上机操作过程。
2、了解如何编辑、编译、连接与运行一个C程序、
3、初步了解C程序的特点。
三、实验内容:
讲明:
前三题为必做题目,后两题为选做题目。
1、输出入下信息:
(实验指导书P79)
*************************
Very Good
*************************
2、计算两个整数的与与积、(实验指导书P81)
3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕、(书P3)
4、在屏幕上显示一个文字菜单模样的图案:
=================================
1输入数据2修改数据
3 查询数据4 打印数据
=================================
5、从键盘上输入两个整数,交换这两个整数、
四、实验步骤与过程:
五、实验调试记录:
六、参考答案:
1、#include <stdio、h〉
voidmain()
{ printf(“********************\n”);
printf(“ VeryGood\n");
printf(“********************\n”);
}
2、#include 〈stdio、h〉
void main()
{ inta,b,c,d;
printf(“Pleaseentera,b:
”);
scanf(“%d,%d",&a,&b);
c=a+b;d=a*b;
printf(“%d+%d=%d\n",a,b,c);
printf(“%d*%d=%d\n”,a,b,d);
}
3、#include 〈stdio、h>
#include <math、h>
voidmain()
{ doublex,s;
printf(“Pleaseinputvalueofx:
”);
scanf(“%lf",&x);
s=cos(x);
printf(“cos(%lf)=%lf\n”,x,s);
}
4、#include
voidmain()
{ printf(“==================================\n”);
printf(“ 1输入数据 2 修改数据\n”);
printf(“ 3查询数据 4打印数据\n”);
printf(“===================================\n");
}
5、#include<stdio、h〉
voidmain()
{int x,y,t;
printf(“Pleaseenter x andy:
”);
scanf(“%d%d”,&x,&y);
t=x; x=y;y=t;
printf(“Afters\n”,x,y);
}
实验二 简单的C程序设计(4学时)
一、实验方式:
一人一机
二、实验目的:
1、掌握C语言的数据类型、
2、学会使用C语言的运算符及表达式、
3、掌握不同数据类型的输入输出方法、
三、实验内容:
讲明:
前四题为必做题目,后两题为选做题目、
1、输入r1、r2,求出圆形垫片面积、(实验指导书P84)
2、输入华氏温度h,输出摄氏温度c。
(实验指导书P85)
3、从键盘输入一个3位整数,将输出该数的逆序数。
(实验指导书P89)
4、输入并运行以下程序,分析运行结果、
#include <stdio、h>
voidmain()
{int i,j;
i=8;j=10;
printf(“%d,%d\n”,++i,++j);
i=8;j=10;
printf(“%d,%d\n”,i++,j++);
i=8; j=10;
printf(“%d,%d\n”,++i,i);
i=8;j=10;
printf(“%d,%d\n”,i++,i);
}
5、输入三角形三条边的边长,求三角形的面积。
(书P55)
6、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。
(书P55)
四、实验步骤与过程:
五、实验调试记录:
六、参考答案:
1、#include<stdio、h〉
#definePI3、14
voidmain( )
{floatr1,r2;
double s1,s2,s;
printf(“Pleaseenter r1,r2:
\n");
scanf(“%f%f”,&r1,&r2);
s2=r2*r2*PI; s1=r1*r1*PI; s=s2-s1;
printf(“s=%lf\n”,s);
}
2、#include
voidmain()
{floath,c;
printf(“请输入华氏温度:
");
scanf(“%f”,&h);
c=5、0/9*(h-32);
printf(“\n摄氏温度:
%f\n",c);
}
3、#include〈stdio、h〉
void main()
{ inta,b,c,x,y;
printf(“请输入一个3位的正整数:
\n");
scanf(“%d”,&x);
a=x/100;/*求x的百位数*/
b=(x—a*100)/10; /*求x的十位数*/
c=x-a*100-b*10; /*求x的个位数*/
y=c*100+b*10+a;
printf(“%d:
%d\n”,x,y);
}
4、运行结果:
9,11
8,10
9,8
8,8
5、#include #include〈math、h> voidmain() { int a,b,c; doublearea,s; printf(“Pleaseentera,b,c: "); scanf(“%d,%d,%d”,&a,&b,&c); s=(double)(a+b+c)/2; area=sqrt(s*(s—a)*(s-b)*(s—c)); printf(“area=%、2lf\n",area); } 6、#include 〈stdio、h> voidmain() {chara,b,c; floatx; printf(“Please enter: \n"); a=getchar(); b=getchar();c=getchar(); x=(a+b+c)/3、0; printf(“(a+b+c)/3=%、2f\n”,x); } 实验三选择结构程序设计(2学时) 一、实验方式: 一人一机 二、实验目的: 1、熟练掌握if语句与switch语句。 2、练习并掌握多分支选择结构的编程方法。 3、学习调试与修改程序的步骤、 三、实验内容: 讲明: 前三题为必做题目,后两题为选做题目、 1、读入3个分不表示箱子长、宽、高的整数值,判断并输出该箱子是立方体依然长方体。 (实验指导书P104) 2、输入某一年月,输出该月的天数、(实验指导书P105) 3、有一函数: x (x<1) y= 2x—1 (1≤x<10) 3x-11(x≥10) 编写程序,输入x值,输出y值、 4、从键盘输入一个字符,假如该字符为小写字母,则转换为大写字母输出;假如该字符为大写字母,则转换为小写字母输出;假如为其她字符,原样输出。 (书P94) 5、输入4个整数,要求按由小到大的顺序输出、 四、实验步骤与过程: 五、实验调试记录: 六、参考答案: 1、#include<stdio、h> voidmain() { intl,w,h; printf(“请输入箱子的长、宽、高: \n”); scanf(“%d%d%d”,&l,&w,&h); if(l==w&&w==h) /*假如长、宽、高相等,则为立方体*/ printf(“该箱子是立方体、”); else printf(“该箱子是长方体。 ”); } 2、#include〈stdio、h〉 voidmain( ) {intyear,month,days; printf(“Pleaseenter yearandmonth: \n”); switch(month) { case2: if(year%4==0&&year%100! =0||year%400==0) days=29; else days=28; break; case 1: case3: case5: case 7: case8: case10: case12: days=31;break; case4: case 6: case 9: case 11: days=30; } printf(“%d年%d月有%d天\n”,year,month,days); } 3、#include<stdio、h> void main( ) {floatx,y; printf(“Pleaseinputx: \n”); scanf(“%f”,&x); if(x<1) y=x; elseif(x<10) y=2*x—1; else y=3*x-11; printf(“y=%f\n”,y); } 4、#include <stdio、h〉 voidmain() {charx; printf(“Entera char: \n"); x=getchar(); if(x>=‘a'&&x<=‘z') x=x—32; elseif(x〉=‘A'&&x〈=‘Z') x=x+32; putchar(x); } 5、#include 〈stdio、h> voidmain() { inta,b,c,d,t; printf(“请输入4个整数: "); 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(“排序结果如下: \n"); printf(“%d,%d,%d,%d\n",a,b,c,d); } 实验四循环结构程序设计(4学时) 一、实验方式: 一人一机 二、实验目的: 1、熟练掌握while语句、do—while语句与for语句。 2、练习并掌握循环结构的嵌套形式。 3、掌握循环结构的程序设计方法。 三、实验内容: 讲明: 前四题为必做题目,后两题为选做题目、 1、从键盘上输入若干个学生的成绩,统计并输出最高成绩与最低成绩,当输入负数时结束输入、(实验指导书P117) 2、求所有的水仙花数。 水仙花数是一个3位数的自然数,该数各位数的立方与等于该数本身、(实验指导书P118) 3、判断输入的某个数是否为素数。 若是,输出YES,否则输出NO。 (书P123) 4、计算π的近似值。 公式如下: π/4=1—1/3+1/5-1/7+……,直到最后一项的绝对值小于10—6为止。 (书P123)‘ 5、计算s=1! +2! +……+20! 的值并输出。 6、输入10个整数,统计并输出其中正数、负数与零的个数。 四、实验步骤与过程: 五、实验调试记录: 六、参考答案: 1、#include〈stdio、h> voidmain() { floatx,max,min; printf(“Pleaseinputscores: ”); scanf(“%f”,&x); max=min=x; while(x〉=0) { if(x〉max) max=x; if(x〈min) min=x; scanf(“%f”,&x); } printf(“\nmax=%f\nmin=%f\n”,max,min); } 2、#include〈stdio、h〉 voidmain() {intx,y,z; int k=100; while(k〈=999) {x=k/100; y=(k—x*100)/10; z=k—x*100—y*10; if(k==x*x*x+y*y*y+z*z*z) printf(“%d\n”,k); k++; } } 3、#include〈stdio、h> #include<math、h〉 voidmain() {inti,x,yes,a; printf(“Enter integer number: "); scanf(“%d”,&x); yes=1; i=2; a=(int)sqrt((double)x); while(yes&&i〈=a) { if(x%i==0) yes=0; i++; } printf(“%d",x); if(yes) printf(“YES\n”); else printf(“NO\n”); } 4、#include #include〈math、h> voidmain( ) { float pi,t,n; intsign=1; pi=0;n=1;t=1; while(fabs(t)>=1e-6) {t=sign/n; pi+=t; n+=2; sign=—sign; } pi=pi*4; printf(“pi=%f\n",pi); } 5、#include〈stdio、h〉 void main() {floats=0,t=1; int n; for(n=1;n<=20;n++) { t=t*n; s=s+t; } printf(“1! +2! +……+20! =%f\n",s); } 6、#include〈stdio、h> voidmain() { intx,i,a1=0,b1=0,c1=0; for(i=1;i〈=10;i++) { printf(“\n请输入第%d个数: ”,i); scanf(“%d”,&x); if(x>0) a1++; else if(x<0)b1++; else c1++; } printf(“整数有%d个,负数有%d个,零有%d个\n”,a1,b1,c1); } 实验五综合实验1: 结构化程序设计(2学时) 一、实验方式: 一人一机 二、实验目的: 1、进一步掌握选择结构、循环结构的编程特点。 2、掌握C语言的结构化程序设计思想、 3、学习利用循环结构实现的一些常用算法(如穷举、迭代、递推等)、 三、实验内容: 讲明: 前两题为必做题目,后两题为选做题目、 1、编一程序,关于给定的一个百分制成绩,输出对应A,B,C,D,E表示的的等级成绩、设: 90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。 (书P93) 2、百马百担问题、(实验指导书P121) 3、输入一行字符,分不统计出其中英文字母、空格、数字与其她字符的个数。 4、输出如下图案: * *** ***** ******* ***** *** * 四、实验步骤与过程: 五、实验调试记录: 六、参考答案: 1、#include<stdio、h> voidmain( ) {intscore,temp,logic; char grade; logic=1; while(logic) { printf(“Inputscore: ”); scanf(“%d”,&score); if(score>100||score〈0) printf(“\nError,Input again! \n”); else logic=0; printf(“\n"); } if(score==100) temp=9; else temp=score/10; switch(temp) { case9: grade=‘A';break; case8: grade=‘B’;break; case7: grade=‘C’;break; case6: grade=‘D’;break; default: grade=‘E’; } printf(“Scoreis%d,the gradeis%c、\n”,score,grade); } 2、#include void main() { intm,n,k; intsum=0; printf(“各种驮法如下: \n”); for(m=1;m<=100;m++) for(n=1;n<=100-m;n++) { k=100—m-n; if(k%2==0&&m*3+n*2+k/2==100) { printf(“大马%3d匹;中马%3d匹;小马%3d匹、\n",m,n,k); sum++; } } printf(“共有%d种驮法、\n”,sum); } 3、#include<stdio、h〉 void main( ) { charc; int letter=0,space=0,digit=0,other=0; printf(“请输入一行字符: \n”); while((c=getchar( ))! =‘\n’) { if(c>=‘a’&&c〈=‘z’||c〉=‘A’&&c〈=‘Z') letter++; elseif(c==‘') space++; elseif(c〉=‘0’&&c<=‘9’) digit++; else other++; } printf(“字母数=%d,空格数=%d\n”,letter,space); printf(“数字数=%d,其她字符数=%d\n”,digit,other); } 4、#include〈stdio、h> voidmain() { int i,j,k; for(i=0;i<=3;i++) {for(j=0;j<=2—i;j++) printf(“”); for(k=0;k<=2*i;k++) printf(“*”); printf(“\n”); } for(i=0;i〈=2;i++) {for(j=0;j<=i;j++) printf(“”); for(k=0;k<=4—2*i;k++) printf(“*"); printf(“\n”); } } 实验六函数程序设计(4学时) 一、实验方式: 一人一机 二、实验目的: 1、掌握C语言中函数的三要素: 函数定义、函数调用与函数讲明。 2、掌握通过参数在函数间传递数据的方法。 3、掌握全局变量、局部变量、动态变量、静态变量的概念与使用方法、 三、实验内容: 讲明: 前四题为必做题目,后两题为选做题目、 1、从键盘输入三角形的3条边,调用三角形面积函数求出其面积,并输出结果、(实验指导书P130) 2、输入整数n,输出高度为n的等边三角形、当n=5时的等边三角形如下: (实验指导书P134) * *** ***** ******* ********* 3、输入并运行以下程序,分析运行结果。 #include 〈stdio、h> inta=5; intb=7; voidmain() { inta=4,b=5,c; c=plus(a,b); printf(“a+b=%d\n”,c); } plus(int x,int y) {intz; z=x+y; return(z); } 4、求500以内的所有亲密数对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言上机实验 答案 语言 上机 实验