C语言项目实验作业学生版.docx
- 文档编号:5592299
- 上传时间:2022-12-28
- 格式:DOCX
- 页数:28
- 大小:54.46KB
C语言项目实验作业学生版.docx
《C语言项目实验作业学生版.docx》由会员分享,可在线阅读,更多相关《C语言项目实验作业学生版.docx(28页珍藏版)》请在冰豆网上搜索。
C语言项目实验作业学生版
C语言项目实验作业
系(部)机电与汽车工程学院
姓名(学号)40庞文胤25梁志坚
专业(班级)13电子2班
电子教研室编制
实验一数据类型、运算符和表达式应用
一、实验目的
1.掌握C语言数据类型的种类和作用;
2.熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,
3.掌握不同的类型数据之间赋值的规律;
4.灵活运用各种运算符及其表达式;
二、实验步骤
(一)阅读程序
1.输入并运行以下程序,观察运行结果。
#include
main()
{charc1,c2;
c1=97;c2=98;
printf("%c,%c\n",c1,c2);}
(1)在第五行后面加入以下printf语句,并运行。
printf("%d,%d\n",c1,c2);
分析结果
97,98
运行结果
97,98
(2)在
(1)的基础上,将第三行改为以下语句,并运行。
intc1,c2;
分析结果
97,98
运行结果
97,98
(3)在
(1)的基础上,将第四行改为以下语句,并运行。
c1=321;c2=400;
分析结果
321,400
运行结果
65,-112
2.分析并运行此程序,当输入的数据为10时,下面程序的运行结果。
#include
main()
{floatx,y;
scanf("%f",&x);
printf("\n2.4*x-1/2=%f",2.4*x-1.0/2);
printf("\nx%%2/5-x=%f",(int)(x)%2/5-x);
printf("\n(x-=x*10,x/=10)=%d\n",(x-=x*10,x/=10));}
分析结果
运行结果
3.分析以下程序运行的结果
#include
main()
{inti,j,m,n;
i=8;j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d\n",i,j,m,n);}
分析结果
运行结果
(2) 将第6、7行改为:
m=i++;
n=++j;
分析结果
运行结果
(3)程序改为:
#include
main()
{inti,j,m=0,n=0;
i=8;j=10;
m+=i++;
n-=--j;
printf(“%d,%d,%d,%d\n”,i,j,m,n);}
分析结果
运行结果
(二)完成程序
要求:
依据题目要求,分析已给出的语句,填写空白。
但是不要增行或删行,改动程序的结构。
1.求任意输入字符的ASCⅡ码。
#include
main()
{;//变量的定义
printf(“请输入一个字符:
”);
scanf(“%c”,&a);
b=(int)a;
printf(“\n\n%c的ASCⅡ码为%d\n”,a,b);}
(三)调试程序
要求:
调试运行下列程序是否正确,若有错,写出错在何处?
填写正确的运行结果。
1.行号#include
1main()
2{intu=v=89;
3printf(“u=%d,v=%d\n”,u,v);}
错
错误在行
应改为:
调试正确后的运行结果
输出结果:
2.下面的程序试图计算由键盘输入的任意两个整数的平均值:
行号#include
1main()
2{
3intx,y,a;
4scanf("%x,%y",&x,&y);
5a=(x+y)/2;
6printf("Theaverageis%d:
\n",a);}
错
错误在行
应改为:
调试正确后的运行结果
输入数据
2,6
1,4
-1,-3
-2,4
2,0
输出结果:
(四)编写程序
1.输入圆半径(值为5),输出圆的周长和面积。
实验二顺序结构程序设计
一、实验目的
1.掌握各种类型数据输入输出的方法,能正确使用各种格式转换符。
2.熟练掌握顺序结构的程序设计,能够编写简单的应用程序。
二、实验步骤
(一)阅读程序
1.输入并运行以下程序,观察运行结果。
#include
main()
{inta=17;
floatu=1234.567;
printf("%d,%7d,%-7d\n",a,a,a);
printf("%f,%7.2f\n",u,u);}
分析结果
运行结果
2.输入并运行以下程序,观察运行结果。
#include
main()
{inta,x,y;
x=(a=2,6*2);
y=a=2.6*a;
printf(“x=%d,y=%d\n”,x,y);}
分析结果
运行结果
3.阅读以下程序,若输入的数据形式为251310,输出结果为:
#include
main()
{intx,y,z;
scanf("%d%d%d",&x,&y,&z);
printf("x+y+z=%d\n",x+y+z);}
分析结果
运行结果
(二)完成程序
要求:
按照给定题目要求,参照出现的语句,填写程序空白处。
求
的值。
(设a=25,b=5)
#include
main()
{floata=25,b=5;
floatc;
c=;
printf("c=%f\n",c);}
(三)调试程序
要求:
分析下列程序是否正确,如有错误,指出错误所在,并改正;若正确,写出运行结果。
1.行号#include
1main()
2{inti,k;
3i=8;
4k=5*I*I;
5printf("%d\n",k);}
错
错误在行
应改为:
调试正确后的运行结果
(四)编写程序
1.编程求出某学生期末三门课程的总分及平均分。
结果保留小数点后一位。
实验三if选择结构程序设计1
一、实验目的
1.掌握关系运算符和逻辑运算符;
2.学会正确书写关系表达式和逻辑表达式;
3. 熟练掌握三种if语句和if嵌套
二、实验步骤
(一)阅读程序
1.输入并运行以下程序,观察运行结果。
#include
main()
{inta,b,c;
a=10;b=60;c=30;
if(a>b)a=b;
b=c;
c=a;
printf("a=%d,b=%d,c=%d\n",a,b,c);}
分析结果
运行结果
2.输入并运行以下程序,观察运行结果。
#include
main()
{intx=60,a=30,b=20;
intv1=3,v2=8;
if(a
if(b!
=15)
if(!
v1)x=1;
else
if(v2)x=10;
x=-2;
printf(“%d\n”,x);}
分析结果
运行结果
(二)完成程序
要求:
按照给定题目要求,参照出现的语句,填写程序空白处。
1.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其他字符不变,请在_______上填写正确内容。
#include
main()
{charch;
scanf("%c",&ch);
if(_______________________)ch=ch+32;
elseif(ch>='a'&&ch<='z')____________________;
printf("%c\n",ch);}
(三)调试程序
要求:
分析下列程序是否正确,如有错误,指出错误所在,并改正;若正确,写出运行结果。
1.以下程序实现求分段函数。
y=-1x>9
x*(x+2)3 2*x-1 x-1x<=-1 #include main() 1{intx,y; 2scanf(“%d”,&x); 3if(3 4elseif(-1 5elseif(x<=-1)y=x-1; 6elsey=-1; 7printf(“%d\n”,y);} 错 错误在行 应改为: 调试正确后的运行结果 输入数据: 421-310 输出结果: (四)编写程序 1.输入某学生的成绩(成绩为100分制,可以为89.5,如果输入的成绩不在0-100之间,请给出出错提示。 ),经处理后给出学生的等级,等级分类如下: 90分以上(包括90): A 80至90分(包括80): B 70至80分(包括70): C 60至70分(包括60): D 60分以下: E 实验四选择结构程序设计2 一、实验目的 1.掌握关系运算符、逻辑运算符和条件运算符; 2.学会正确书写关系表达式、逻辑表达式和条件运算符; 3. 熟练掌握switch语句。 二、实验步骤 (一)阅读程序 1.输入并运行以下程序,观察运行结果。 #include main() {inti=1; switch(i) {case1: printf("%d\t",i++); case2: printf("%d\t",i++); case3: printf("%d\t",i++); case4: printf("%d\t",i++);} printf("\ni=%d\n",i);} 分析结果 运行结果 2.输入并运行以下程序,观察运行结果。 #include main() {intx=10,y=9,a,b,c; a=(--x==y++)? --x: ++y; b=x++; c=y; printf("a=%d,b=%d,c=%d\n",a,b,c);} 分析结果 运行结果 3、若x=12,则以下程序运行的结果是 #include main() {intx,y; scanf("%d",&x); y=x>12? x+10: x-12; printf("y=%d\n",y);} 分析结果 运行结果 (二)完成程序 要求: 按照给定题目要求,参照出现的语句,填写程序空白处。 1. 以下程序实现的功能是: -1x<0,请将以下程序补充完整 y=0x=0 1x>0 #include main() {intx,y;scanf(“%d”,&x); switch(x<0) {case1: ;break; case0: switch(x==0) {case1;y=0;break; case0: y=1; } } printf(“y=%d\n”,y);} (三)编写程序 1.己知某公司员工的保底薪水为500,某月所接工程的利润p与利润提成的关系如下: (计量单位: 元) p<=1000没有提成 1000 2000 5000 10000 实验五循环结构程序设计1 一、实验目的 1.掌握while,do-while,for循环语句的使用与区别; 2.掌握循环条件、循环体、循环终止等循环要素; 4.理解循环执行过程。 5.熟练使用循环语句编写程序。 二、实验步骤 (一)阅读程序 1.#include main() {inta=2,b=8; while(b--<0) b-=a; a++; printf(“a=%d,b=%d\n”,a,b);} 分析结果 运行结果 2.#include main() {intx=2,y=6,z=3; do y=y-1; while(z-->0&&++x<5); printf(“x=%d\ty=%d\tz=%d\n”,x,y,z);} 分析结果 运行结果 3.#include main() {intn=0; while(n<=2) {n++; printf("%d\n",n);}} 分析结果 运行结果 (二)调试程序 要求: 调试运行下列程序是否正确,若有错,写出错在何处? 填写正确的运行结果。 1. 以下程序输出100(包括100)以内的数,每行输出10个。 行号 #include intmain() 1 {intk=100; 2while(k=0) 3{printf("%d,",k); 4k--; 5if(k%10==0)printf("\n"); 6}} 错 错误在行 应改为: 实验六循环结构程序设计2 一、实验目的 1.掌握循环条件、循环体、循环终止等循环要素。 2.掌握循环嵌套的执行过程。 3.理解循环执行过程。 4.熟练使用循环语句、循环嵌套编写程序。 5.掌握break、continue的使用 二、实验步骤 (一)阅读程序 1.#include main() {inta=0,j; for(j=0;j<4;j++) {switch(j) {case0: case3: a+=2;break; case1: case2: a+=3;break;; default: a+=5;break; } } printf("%d\n",a);} 分析结果 运行结果 2.#include main() {inti; for(i=1;i<6;i++) {if(i%2){printf("#");continue;} printf("*"); } printf("\n");} 分析结果 运行结果 3.#include main() {ints=0,t,i,j; for(i=1;i<=3;i++) {t=1; for(j=1;j<=2*i-1;j++) t=t*j; s=s+t;} printf("%-5d\n",s);} 分析结果 运行结果 4.#include intmain() {inty,a; y=2;a=1; while(y--! =-1) {do { a*=y; a++; }while(y--); } printf("%d,%d\n",a,y);} 分析结果 运行结果 实验七数组应用 (一) 一、实验目的 1.掌握一维数组的定义和使用; 2.了解二维数组的定义和使用。 二、实验步骤 (一)阅读程序 1.#include main() {inta[]={1,2,3,4,5},i,j,s=0; j=1; for(i=4;i>=0;i--) {s=s+a[i]*j; j=j*10;} printf("s=%d\n",s);} 分析结果 运行结果 2.#include main() {intk; inta[3][3]={9,8,7,6,5,4,3,2,1}; for(k=0;k<3;k++) printf("%d\n",a[k][2-k]);} 分析结果 运行结果 3. #include main() {inti,j,x=0,y=0,m; inta[3][3]={1,-2,0,4,-5,6,2,4}; m=a[0][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(a[i][j]>m) {m=a[i][j]; x=i; y=j; } printf(“(%d,%d)=%d\n”,x,y,m);} 分析结果 运行结果 (二)调试程序 要求: 调试运行下列程序是否正确,若有错,写出错在何处? 填写正确的运行结果。 1.以下程序实现的功能是输入四个数,求这四个数的和. #include main() 1.{inta(4)={4*0}; 2.inti; 3.for(i=0;i<4;i++)scanf("%d",&a[i]); 4.for(i=0;i<4;i++)a[0]=a[0]+a[i]; 5.printf("%d",a[0]);} 错 错误在行 应改为: 调试正确后的运行结果 输入数据181836 输出结果: 实验八数组应用 (二) 一、实验目的 1.进一步掌握一维数组、二维数组的使用; 2.熟练掌握字符数组的定义与使用; 3.掌握常用的字符处理函数; 4.掌握使用字符数组编写程序。 二、、实验步骤 (一)阅读程序 1.#include #include main() {chars1[50]=“Iam”; chars2[]=”student! ”; printf(“%d,\n”,strlen(s2)); strcat(s1,s2); printf(“%s\n”,s1);} 分析结果 运行结果 2.#include main() {charb[7]={"67da12"}; inti=0,s=0; for(i=0;b[i]>='0'&&b[i]<='9';i+=2) s=10*s+b[i]-'0'; printf("%d\n",s);} 分析结果 运行结果 3. #include main() {inti=0; chara[]=“cbm”; charb[]=“cqid”,c[10]; while(a[i]! =‘\0’&&b[i]! =‘\0’) {if(a[i]>=b[i])c[i]=a[i]-32; elsec[i]=b[i]-32; ++i; } c[i]=‘\0’; puts(c);} 分析结果 运行结果 (二)调试程序 要求: 调试运行下列程序是否正确,若有错,写出错在何处? 填写正确的运行结果。 1.行号#include main() 1{chara[]; 2inti,len=0; 3a=“CLanguageProgram” ; 4for(i=0;a[i]! =‘\0’;i++) 5len++; 6printf(“%s,%d\n”,a,len);} 错 错误在行 应改为: 调试正确后的运行结果 输出结果: 实验九函数应用 一、实验目的 1.掌握函数的定义和调用; 2.理解形参和实参的使用和传值调用; 3.理解函数声明的使用; 4.掌握函数的嵌套调用; 5.了解函数的嵌套与递归调用,掌握递归函数的编写规律; 6.了解数组元素、数组名作函数参数。 二、实验步骤 (一)阅读程序 1.#include voidfun(intx,inty,intz) {z=x*x+y*y;} main() {inta=38; fun(7,3,a); printf("%d\n",a);} 分析结果 运行结果 2.#include voidfun(intx,inty); main() {intx=5,y=3; fun(x,y); printf("%d,%d\n",x,y);} voidfun(intx,inty) {x=x+y; y=x-y; x=x-y; printf("%d,%d\n",x,y);} 分析结果 运行结果 3.#include intf(inta); main() {ints[8]={1,2,3,4,5,6},i,d=0; for(i=0;f(s[i]);i++) d+=s[i]; printf("%d\n",d);} intf(inta) {returna%2;} 分析结果 运行结果 4.#include longf(intg) {switch(g) {case0: return0; case1: case2: return1;} return(f(g-1)+f(g-2));} main() {longk; k=f(7); printf("k=%d\n",k);} 分析结果 运行结果 5.#include intf(intb[][4]) {inti,j,s=0; for(j=0;j<4;j++) {
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 项目 实验 作业 学生
![提示](https://static.bdocx.com/images/bang_tan.gif)