为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 第6单元 头皮损伤

第6单元 头皮损伤

2011-09-11 1页 doc 43KB 13阅读

用户头像

is_725386

暂无简介

举报
第6单元 头皮损伤PAGEPAGE1《C语言编程基础(第2版)》上机实习解答前言《C语言编程基础(第2版)》在各章后面都安排了上机实习指导和上机实习,这是该书编写的一大特色。上机实习指导给出了该章的学习目标和应注意的问题,这两部分都非常重要,前者告诉读者应该掌握的知识重点,后者告诉读者最容易忽略、混淆、搞错的概念和问题。而上机实习的内容又很好地配合了对这些知识的掌握和理解,并通过实践、操作、练习,能很好地锻炼编程技巧和能力。为了帮助老师教学、方便学生做好实习准备,特别是帮助不具备上机条件的学生了解上机结果,我们给出本上机实习解答。重...
第6单元  头皮损伤
PAGEPAGE1《C语言编程基础(第2版)》上机实习解答前言《C语言编程基础(第2版)》在各章后面都安排了上机实习指导和上机实习,这是该书编写的一大特色。上机实习指导给出了该章的学习目标和应注意的问,这两部分都非常重要,前者告诉读者应该掌握的知识重点,后者告诉读者最容易忽略、混淆、搞错的概念和问题。而上机实习的又很好地配合了对这些知识的掌握和理解,并通过实践、操作、练习,能很好地锻炼编程技巧和能力。为了帮助老师教学、方便学生做好实习准备,特别是帮助不具备上机条件的学生了解上机结果,我们给出本上机实习解答。重点是给出一些程序的运行结果、需要完善的程序语句、及要求编写的程序答案。如有错误或不当之处请批评指正。第1章C语言概述上机实习TurboC系统的基本操作方法二、上机内容2、⑴运行结果如下:sum=3⑵删除变量定义语句或将其注释起来后,再运行会出现错误提示:“ErrorUndefinedsymbol‘a’infunctionmain.”等信息。告知a、b、sum在函数中未定义3、运行该程序,输入任意两个整数,会输出其中的最大值。第2章数据类型和简单程序上机实习基本数据类型的简单程序设计二、上机内容1、语法错误的检查与修改。⑴错误:y未定义。修改:intx1,x2,y;运行结果:y=50⑵错误:inta缺少空格。修改:inta,b,c;运行结果:c=5000⑶错误:ch=A字符变量赋值错误。修改:ch=’A’运行结果:A⑷错误:m#1#不能为变量名。修改:floatm1;m1=2.36;printf(“%f”,m1/2);运行结果:1.1800002、分析程序运行结果。⑴该题是已知半径而求圆的面积,输出半径和面积值。运行结果为:r=2s=12.566360⑵该题是求字母a和b的ASCII码值。运行结果为:字母a的ASCII码为:97字母b的ASCII码为:98⑶运行结果:☻(笑脸)♣(梅花)3、设计编写一个简单程序。main(){printf(“平均成绩:%d\n”,(100+80+75)/3);}该程序运行结果为:平均成绩:85第3章达式与运算符上机实习运算符及表达式应用二、上机内容1、指出下面程序中的错误,并改正。错误:C未定义且该定义语句不正确;若定义时给a、b、c三个变量都初始赋值了,可删掉“scanf(“%d,%d,%d”,a,b,c);”程序行;若定义变量时不进行初始化,该接收变量值的语句有错。修改:inta,b,c;scanf(“%d,%d,%d”,&a,&b,&c);运行结果:1,2,3↙A=1,b=2,c=62、运行下列程序,观察并分析运行结果。⑴运行结果:(a+b)/(a-b)=-5a+b/a-b=-9分析:该题说明在表达式中,分数线上下使用括号与否计算结果完全不同,应注意使用括号。⑵运行结果:100/200=0100/200.0=0.500000分析:该题说明整除运算结果只保留整数部分,实数运算的结果保留小数。⑶运行结果:(i++)+j=300i+(++j)=301i+++j)=300分析:自增自减运算符的前置运算与后置运算不同,并注意运算符的结合性。⑷运行结果:i=101j=101k=101分析:使原数加1的三种不同运算方法。⑸书中例3.7程序调试运行结果如下:char=1char(ch)=1int=2int(x)=2float=4float(y)=43、完善程序⑴#include……y=pow(x,5)+POW(10,5);…….⑵…….b=x>y?x:y;…….第4章数据的输入与输出上机实习一字符的输入输出二、上机内容1、运行下列程序,注意观察运行结果。⑴运行结果:①a↙(输入数据)c1=’a’②ab↙(输入数据)c1=’a’③abc↙(输入数据)c1=’a’getchar()只接收一个字符,且等待回车后向下运行,因此c1输出结果相同。⑵运行结果:请输入一个字母:b↙(输入数据)b的前一个字母是a,后一个字母是c(输出结果)变化:更换“getch()”命令不显示输入内容,不等待回车便向下执行,输出结果相同。2、完善程序……ch1=getchar();ch2=ch1-32;(ch1>=’a’&&ch1<=’z’)?putchar(ch2):printf(“输入出错!”);……上机实习二格式输入输出函数的使用二、上机内容1、运行下列程序,注意观察运行结果。⑴运行结果:①10254.72↙(输入数据及格式)a=10b=25c=4.720000②10↙(输入数据及格式)20↙4.72↙a=10b=25c=4.720000③10,25,4.72↙(输入数据及格式)a=10b=-20c=324…………这种输入格式不对,scanf语句中格式转换符之间没有非格式字符,输入逗号以后不能给后面的变量正确赋值。⑵运行结果:113,3270;x↙(输入数据及格式)a=113b=3270c=x⑶运行结果:p=3.14p=3.1416p=3.14p=3.1416p=-10.2fp=-10.4f分析:在%后面加上负号后,改变了格式控制符的作用,将-10.2f与-10.4f作为非格式符输出。在语句“clrscr();”的后面加上语句“printf(“\n\n\n”);”再运行程序,在输出结果上面空出三个空行。2、完善程序:………scanf(“%d”,&cost);printf(“输入折扣率”);scanf(“%f”,&percent);………printf(“实际售价为%f”,c);3、编写程序。main(){floatkilometer,metre,mile;printf(“请输入公里数:”);scanf(“%f”,&kilometre);metre=kilometre*1000;mile=kilometre*2;printf(“%.1f公里=%.2f里=%.2f米”,kilometre,mile,metre);}第5章控制结构程序设计上机实习一关系表达式和逻辑表达式二、上机内容1、运行下列程序,分析并观察运行结果。⑴运行结果:a=1,b=2,c=3ab的值为:1⑵运行结果:x=3,y=4,z=5xz的值为:0xz的值为:1!x的值为:0!(x>y)的值为:1(x>y||x>z)&&ymain(){floatn,c,sq,sqr;inti;while(1){clrscr();printf("输入一个实数:");scanf("%f",&n);printf("1.输出相反数\n2.输出平方数\n3.输出平方根\n4.退出\n");scanf("%d",&i);switch(i){case1:printf("相反数为:%f\n",-n);break;case2:printf("平方数为:%f\n",n*n);break;case3:printf("平方根为:%f\n",sqrt(n));break;case4:exit(0);default:printf("输入错误!\n");}}}上机实习四for语句二、上机内容1、运行程序,分析并观察运行结果。⑴运行结果:48121620分析:该题输出20以内能被4整除的数。⑵运行结果:**********程序修改后运行结果:*******************************************************2、完善程序。......{for(j=0;j<__4-i__;j++)......for(j=0;j<_i_;j++)......3、编写程序。main(){intgrade,n1,n2,i=1;clrscr();n1=n2=0;printf(“输入学生成绩:\n”);while(i<=10){scanf(“%d”,&grade);if(grade>=60)n1++;elsen2++;i++;}printf(“及格人数为:%d\n不及格人数为:%d”,n1,n2);}上机实习五while语句和do-while语句二、上机内容1、运行下列程序,分析并观察运行结果。⑴①原程序运行结果:sum=6②程序修改后运行结果:sum=0分析:因为循环条件为i<=3,当i=1改成i=4后循环未执行,因此sum=0(初始值)。⑵①原程序运行结果:sum=10②程序修改后运行结果:sum=4分析:do-while循环先做一次循环体后再判定条件,因此原程序可做到+1+2+3+4使sum=10,程序修改后,只做一次循环体+4使sum=4。2、完善程序。......n1=n2=_0_;......scanf(“%d”,&grade);while(grade!=-1)......elsen2++;......3、编写程序。按题目要求编写输出10行杨辉三角形的程序提供了两种方法,其中第二种方法更加简单和便于理解,但需要学习了第6、7章的知识后再用才更为合适。因此,本题也可以作为习题放在以后再做。⑴main(){intl,c;longintv;clrscr();for(l=1;l<=10;l++){v=1;printf("%d",v);for(c=2;c<=l;c++){v=v*((l-1)-(c-1)+1)/(c-1);if(v<100)if(v<10)printf("%ld",v);elseprintf("%ld",v);elseprintf("%ld",v);}printf("\n");}}⑵main(){staticintm,n,b[10][10];b[0][1]=1;clrscr();for(m=1;m<=10;m++){for(n=1;n<=m;n++){b[m][n]=b[m-1][n-1]+b[m-1][n];printf("%-5d",b[m][n]);}printf("\n");}}第6章数组上机实习一数值型数组二、上机内容1、上机调试下面的程序,修改其中存在的错误。⑴定义数组长度不能使用变量。因此,“inta[b]={1,2,3,4,5};”应为“inta[5]={1,2,3,4,5};”。⑵定义一维数组时,若不是通过初始化将所有的元素赋值,其长度值不能省略。因此,“inta[];”不正确,按此题意应为:“inta[11];”。另外,求和变量应给初值赋零,“inti,sum;”应为:“inti,sum=0;”。2、运行下列程序,分析并观察运行结果。⑴运行结果:①输入要查找的数:89↙(输入数据一)89在这组数中的第1个位置②输入要查找的数:120↙(输入数据二)120不在这组数中③输入要查找的数:94↙(输入数据三)94在这组数中的第7个位置分析:输入的数据在数组中有无,其输出结果能明确告知。3、完善程序⑴…….scanf("%d",&num[i]);if(num[i]<0){count++;sum=sum+num[i];}…….⑵…….For(i=0;imax[i])max[i]=x[i][j];……}上机实习三一个应用程序的设计二、上机内容题目要求编写应用程序的三个函数如下:1、减法练习函数subt(){inti,num1,num2,answer;clrscr();for(i=1;i<=5;i++){num1=random(99)+1;num2=random(99)+1;question(num1,num2,‘-’);scanf(“%d”,&answer);if(answer==num1-num2)puts(“正确”);else{voice();printf(“错了!正确答案是:%d\n”,num1-num2);}}printf(“\n减法练习做完了,按任意键返回菜单……..”);getch();}2、乘法练习函数mult(){inti,num1,num2,answer;clrscr();for(i=1;i<=5;i++){num1=random(99)+1;num2=random(99)+1;question(num1,num2,‘*’);scanf(“%d”,&answer);if(answer==num1*num2)puts(“正确”);else{voice();printf(“错了!正确答案是:%d\n”,num1*num2);}}printf(“\n乘法练习做完了,按任意键返回菜单……..”);getch();}3、除法练习函数divid(){inti,num1,num2,answer;clrscr();for(i=1;i<=5;i++){num1=random(99)+1;num2=random(99)+1;question(num1,num2,‘/’);scanf(“%d”,&answer);if(answer==num1/num2)puts(“正确”);else{voice();printf(“错了!正确答案是:%d\n”,num1/num2);}}printf(“\n除法练习做完了,按任意键返回菜单……..”);getch();}第8章文件上机实习一文件的顺序读写二、上机内容1、建立和运行给定程序,分析并观察运行结果⑴该题目要求改正错误上机运行,请参看本资料包的习题解答部分。⑵该程序运行时,送入的文件名应该是⑴题中创建和操作过的xt1.txt。2、完善程序。⑴........fp=fopen(filename,”w”);......fprintf(fp,”%s%d%d”,name,s1,s2);......fclose(fp);......⑵......if((fp=fopen(filename.”r”))==NULL);......fscanf(fp,”%s%d%d”,name,&s1,&s2):if(strcmp(name,stuname)==0)......3、从文件中读出[例8.8]写入的字符串,可以放在字符数组中,通过屏幕输出查验读出的内容,写出参考程序如下:#includeFILE*fp;main(){staticchara[32];fp=fopen("w88.txt","r");{fgets(a,32,fp);puts(a);}fclose(fp);}该程序也可以定义数组a[3][8],类似教材中[例8.8],采用循环读a和输出显示的方法,请读者自己练习编写。上机实习二文件的随机读写二、上机内容1、运行下列程序,分析并观察运行结果。⑴分析:输出xt1.txt中第六个字符,文件内容不变。运行结果:f⑵分析:该题是想改写xt1.txt中的字符。先给出要改写的字符在文件中的位置及新的字符,然后通过fseek()函数改变文件的位置指针,写入新字符。运行结果:5↙(输入要修改字符的位置)x↙(输入新的字符)该程序运行完后,进入DOS状态用typext1.txt命令显示该文件的内容如下:abcdxfgh12345ABCD2、完善程序。.......if((fp=fopen(“lx1.txt”,”r”))==NULL);......fseek(fp,n-1,0);......ch=fgetc(fp);......fclose(fp);......第10章指针上机实习指针的简单应用二、上机内容1、运行下列程序,分析并观察运行结果。⑴分析:该题是输出指针指向的输入数据。运行结果:8↙(输入数据)8(输出结果)⑵分析:定义p是指向字符型数据的指针变量,定义s是指向字符串″abcdef″的字符型指针变量,然后使p指向字符串的首地址,通过循环使指针p移位至字符串尾,输出其移位数。运行结果:6⑶分析:该题是把指针变量作为函数参数使用,实现传递地址。运行结果:a=10⑷分析:该题没有直接使用指针变量,它是用替代原理做的。用数组名作为函数的实参,将起始地址传递给被调函数ff中的形参b,b数组的个数由形参变量n传入,在ff中形参数组b实际上是一个指针变量,在被调用时被赋一个具体的初值。该题说明,函数的实参和形参均可采用数组名或指针变量。运行结果:242、完善程序。........inti,j,k;for(i=0,j=strlen(str)-1;i
/
本文档为【第6单元 头皮损伤】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索