




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
I何I情&称北杜术争而KQINGYUANPOLYTECHNICC语言项目实验作业系(部) 机电与汽车工程学院姓名(学号)40庞文胤25梁志坚专业(班级)13电子2班电子教研室编制实验一数据类型、运算符和表达式应用一、实验目的.掌握C语言数据类型的种类和作用;.熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,.掌握不同的类型数据之间赋值的规律;.灵活运用各种运算符及其表达式;二、实验步骤(一)阅读程序1.输入并运行以下程序,观察运行结果。#include<stdio.h>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,-1122.分析并运行此程序,当输入的数据为10时,下面程序的运行结果。#include<stdio.h>main(){floatx,y;scanf("%f",&x);printf("\n2.4*xT/2=%f”,2.4*xT.0/2);printf("\nx%%2/5-x=%f”,(int)(x)%2/5-x);#include<stdio.h>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++;⑶程序改为:#include<stdio.h>main(){inti,j,m=0,n=0;i=8;j=10;m+=i++;n-=--j;第2页要求:依据题目要求,分析已给出的语句,填写空白。但是不要增行或删行,改动程序的结构。1.求任意输入字符的ASCII码。#include<stdio.h>main(){;〃变量的定义printf(“请输入一个字符:”);scanf("%c”,&a);b=(int)a;printf("\n\n%c的ASCII码为%d\n”,a,b);}(三)调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果。1.行号#include<stdio.h>main()2 {intu=v=89;3 printf("u=%d,v=%d\n”,u,v);}错错误在行应改为:调试正确后的运行结果输出结果:.下面的程序试图计算由键盘输入的任意两个整数的平均值:行号#include<stdio.h>main()(intx,y,a;scanf("%x,%y”,&x,&y);a=(x+y)/2;printf("The average is%d:\n",a); }错错误在 行第3页应改为:调试正确后输入数据 输出结果:的运行结果2,61,4-1,-3-2,42,0(四)编写程序1.输入圆半径(值为5),输出圆的周长和面积。实验二顺序结构程序设计一、实验目的.掌握各种类型数据输入输出的方法,能正确使用各种格式转换符。.熟练掌握顺序结构的程序设计,能够编写简单的应用程序。二、实验步骤(一)阅读程序1.输入并运行以下程序,观察运行结果。#include<stdio.h>main(){inta=17;floatu=1234.567;printf("%d,%7d,%-7d\n”,a,a,a);printf("%f,%7.2f\n”,u,u);}分析结果运行结果2.输入并运行以下程序,观察运行结果。#include<stdio.h>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<stdio.h>main(){intx,y,z;scanf(〃%d%d%d〃,&x,&y,&z);printf(〃x+y+z=%d\n〃,x+y+z);}分析结果运行结果(二)完成程序要求:按照给定题目要求,参照出现的语句,填写程序空白处。(a+b)义4求一a义b的值。(设a=25,b=5)#include<stdio.h>main(){floata=25,b=5;floatc;printf(〃c=%f\n",c);}(三)调试程序要求:分析下列程序是否正确,如有错误,指出错误所在,并改正;若正确,写出运行结果。.行号#include<stdio.h>main(){inti,k;i=8;k=5*I*I;printf(〃%d\n〃,k);}错错误在 行第5页
应改为:调试正确后的运行结果(四)编写程序1.编程求出某学生期末三门课程的总分及平均分。结果保留小数点后一位。实验三if选择结构程序设计1一、实验目的.掌握关系运算符和逻辑运算符;.学会正确书写关系表达式和逻辑表达式;.熟练掌握三种if语句和if嵌套二、实验步骤(一)阅读程序1.输入并运行以下程序,观察运行结果。#include<stdio.h>main(){inta,b,c;a=10;b=60;c=30;if(a>b)a=b;b=c;c=a;#include<stdio.h>main(){intx=60,a=30,b=20;intv1=3,v2=8;if(a<b)if(b!=15)if(!v1)x=1;elseif(v2)x=10;x=-2;printf("%d\n",x);}分析结果运行结果(二)完成程序要求:按照给定题目要求,参照出现的语句,填写程序空白处。1.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其他字符不变,请在上填写正确内容。#include<stdio.h>main(){charch;scanf(〃%c〃,&ch);if()ch=ch+32;elseif(ch>='a'&&ch<='z');printf(〃%c\n〃,ch);}(三)调试程序要求:分析下列程序是否正确,如有错误,指出错误所在,并改正;若正确,写出运行结果。.以下程序实现求分段函数。y=(-1 x>9x*(x+2) 3<x<=92*x -1<x<=3,、x-1 x<=-1#include<stdio.h>main(){intx,y;scanf("%d”,&x);if(3<x<=9)y=x*(x+2);elseif(-1<x<=3)y=2*x;elseif(x<=-1)y=x-1;elsey=-1;printf("%d\n",y);}错错误在行应改为:调试正确后输入数据:421-310的运行结果输出结果:(四)编写程序1.输入某学生的成绩(成绩为100分制,可以为89.5,如果输入的成绩不在0-100之间,请给出出错提示。),经处理后给出学生的等级,等级分类如下:90分以上(包括90):A80至90分(包括80):B70至80分(包括70):C60至70分(包括60):D60分以下: E实验四选择结构程序设计2一、实验目的.掌握关系运算符、逻辑运算符和条件运算符;.学会正确书写关系表达式、逻辑表达式和条件运算符;.熟练掌握switch语句。二、实验步骤(一)阅读程序.输入并运行以下程序,观察运行结果。#include<stdio.h>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);}分析结果运行结果.输入并运行以下程序,观察运行结果。#include<stdio.h>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<stdio.h>main()第10页{intx,y;scanf(〃%d〃,&x);y=x>12?x+10:x-12;printf(〃y=%d\n〃,y);}分析结果运行结果(二)完成程序要求:按照给定题目要求,参照出现的语句,填写程序空白处。1.以下程序实现的功能是:--1x<0,请将以下程序补充完整y=v:0 x=0、1 x>0#include<stdio.h>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<p<=2000提成10%2000<p<=5000提成15%5000<p<=10000提成20%10000<p提成25%第11页实验五循环结构程序设计1一、实验目的.掌握while,do-while,for循环语句的使用与区别;.掌握循环条件、循环体、循环终止等循环要素;.理解循环执行过程。.熟练使用循环语句编写程序。二、实验步骤(一)阅读程序#include<stdio.h>main(){inta=2,b=8;while(b--<0)b-=a;a++;main(){intx=2,y=6,z=3;doy=y-1;while(z-->0&&++x<5)main(){intn=0;while(n<=2){n++;printf(〃%d\n〃,n);}}第12页分析结果运行结果(二)调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果。1. 以下程序输出100(包括100)以内的数,每行输出10个。行号#include<stdio.h>intmain(){intk=100;while(k=0){printf( "%d,”,k);k--;if(k%10==0)printf("\n");))错错误在行应改为:实验六循环结构程序设计2一、实验目的.掌握循环条件、循环体、循环终止等循环要素。.掌握循环嵌套的执行过程。.理解循环执行过程。.熟练使用循环语句、循环嵌套编写程序。.掌握break、continue的使用二、实验步骤(一)阅读程序#include<stdio.h>main(){inta=0,j;for(j=0;j<4;j++){switch(j)第13页{case0:case3:a+=2;break;case1:case2:a+=3;break;;default:a+=5;break;))main(){inti;for(i=1;i<6;i++){if(i%2){printf("#");continue;}printf("*");)printf(〃\n〃);}分析结果运行结果#include<stdio.h>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<stdio.h>intmain()第14页{inty,a;y=2;a=1;while(y--!=-1)(do(a*=y;a++;}while(y--);)printf(〃%d,%d\n〃,a,y);}分析结果运行结果实验七数组应用(一)一、实验目的.掌握一维数组的定义和使用;.了解二维数组的定义和使用。二、实验步骤(一)阅读程序#include<stdio.h>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;}main(){intk;inta[3][3]={9,8,7,6,5,4,3,2,1}for(k=0;k<3;k++)第15页printf("%d\n",a[k][2-k]);}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);}分析结果运行结果(二)调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果。.以下程序实现的功能是输入四个数,求这四个数的和.#include<stdio.h>main(){inta(4)={4*0};int i;for (i=0;i<4;i++) scanf("%d”,&a[i]);for (i=0;i<4;i++) a[0]=a[0]+a[i];printf("%d”,a[0]);}错错误在行应改为:第16页调试正确后的运行结果输入数据181836输出结果:实验八数组应用(二)一、实验目的.进一步掌握一维数组、二维数组的使用;.熟练掌握字符数组的定义与使用;.掌握常用的字符处理函数;.掌握使用字符数组编写程序。二、、实验步骤(一)阅读程序.#include<stdio.h>#include<string.h>main(){chars1[50]="Iam”;chars2[]="student!”;printf("%d,\n”,strlen(s2));strcat(s1,s2);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<stdio.h>第17页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);)分析结果运行结果(二)调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果.行号#include<stdio.h>main()1{chara[]inti,len=0;a="CLanguageProgram”;4 for(i=0;a[i]!=‘\0’;i++)5 len++;printf(“%s,%d\n”,a,len);}错错误在行应改为:调试正确后的运行结果输出结果:‘.V.一r人b. ■ .viz:/4। III实验目的.掌握函数的定义和调用;.理解形参和实参的使用和传值调用;.理解函数声明的使用;第18页.掌握函数的嵌套调用;.了解函数的嵌套与递归调用,掌握递归函数的编写规律;.了解数组元素、数组名作函数参数。二实验步骤(一)阅读程序#include<stdio.h>voidfun(intx,inty,intz){z=x*x+y*y;}main(){inta=38;fun(7,3,a);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;intf(inta);main(){ints[8]={1,2,3,4,5,6},i,d=0;for(i=0;f(s[i]);i++)第19页d+=s[i];printf(〃%d\n〃,d);}intf(inta)longf(intg){switch(g){case0:return0;return1;}return(f(g-1)+f(g-2));}main(){longk;k=f(7);intf(intb[][4]){inti,j,s=0;for(j=0;j<4;j++){i=j;if(i>2)i=3-j;s+=b[i][j];}returns;}main(){inta[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};printf(〃%d\n〃,f(a));}分析结果第20页
运行结果(三)调试程序要求:调试运行下列程序是否正确,若有错,写出错在何处?填写正确的运行结果.行号#include<stdio.h>voidfunc(floata,floatb)main()TOC\o"1-5"\h\z{floatx , y ;floatz ;scanf("%f , % f”,&x,&y);z=func ( x , y );printf("z=%f\n”,z);)voidfunc(floata,floatb){floatc;c=a*a+b*b;returnc;为10为10岁,其余学生一个比一个大2岁,求第12位学生的年龄。12123456789return(c)行号#include<stdio.h>main(){intage(intn);intn=12;printf(“Ageis%d\n",age(n));)intage(intn);{intc;c=age(n-1)+2;第21页10 )正确运行结果:错误错误所在行:应改为:实验十指针应用一、实验目的.重点掌握指针变量的定义和赋值;.掌握指针变量的引用;.初步掌握指向数组的指针的定义和使用;.掌握数组与指针的关系并能够利用指针解决数组的相关问题。.掌握字符串与指针的关系并能够利用指针处理字符串的问题。二、实验步骤(一)阅读程序#include<stdio.h>main(){int*p,a=15,b=5;p=&a;a=*p+b;printf("a=%d,%d\n”,a,*p);}分析结果运行结果#include<stdio.h>intsub(int*p);main(){inti,k;for(i=0;i<5;i++){k=sub(&i);printf("k=%d\n”,k);)第22页intsub(int*p){staticintt=0;t=*p+t;main(){inta[]={1,2,3,4,5,6};int*p,i;p=a;*(p+4)+=3;main(){inta[]={2,4,6,8,10};int*p=a;printf("%d\n”,(*p++));printf("%d\n”,(*++p));printf("%d\n”,(*++p)++);printf("%d\n",*p);}分析结果运行结果5.以下程序的输出结果是:#include<stdio.h>#include<string.h>main(){charb1[8]="abcdef”,b2[8],*pb=b1+4;while(--pb>=b1)第23页{str
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 证券交易合同格式规范
- 商业综合体给排水工程清包合同范本
- 版临时电力施工合作合同
- 出口代理合同模板
- 公路工程建设项目审批与备案流程考核试卷
- 住宿救助政策实施中的问题与对策考核试卷
- 纺丝工艺技术培训课件
- 小学生航天课程课件视频
- 铝矾土购销合同范本
- 新房毛坯售卖合同范本
- 新能源船舶动力系统的工程实践
- SHAFER气液联动执行机构培训
- 小学生守则、日常行为规范教育实施方案
- 湖南省六年级上册数学期末试卷(含答案)
- 部编版小学六年级道德与法治下册课堂达标检测试卷全册含答案
- 岩土工程中的非线性问题分析
- 他们创造了数学:50位著名数学家的故事
- 《普洱茶的定义》课件
- 2023山东经贸职业学院教师招聘考试真题题库
- 《定向运动》教学大纲(含课程思政要素)
- 学技能如何打逃生绳结固定绳结
评论
0/150
提交评论