C实验报告.docx

上传人:b****5 文档编号:8168850 上传时间:2023-01-29 格式:DOCX 页数:68 大小:46.81KB
下载 相关 举报
C实验报告.docx_第1页
第1页 / 共68页
C实验报告.docx_第2页
第2页 / 共68页
C实验报告.docx_第3页
第3页 / 共68页
C实验报告.docx_第4页
第4页 / 共68页
C实验报告.docx_第5页
第5页 / 共68页
点击查看更多>>
下载资源
资源描述

C实验报告.docx

《C实验报告.docx》由会员分享,可在线阅读,更多相关《C实验报告.docx(68页珍藏版)》请在冰豆网上搜索。

C实验报告.docx

C实验报告

安徽建筑工业学院

现代教育技术中心

实 验 报 告

 

课程名称:

 C程序设计 

指导教师:

             

专  业:

             

班  级:

             

姓  名:

             

学  号:

             

 

200 至200  学年第  学期

实验一C程序运行环境、数据类型、运算符和表达式

实验地点:

第 机房     实验时间:

  年 月 日

实验目的

1.掌握TurboC集成环境的进入与退出、TurboC集成环境各种窗口的切换,了解TurboC集成环境的设置。

2.掌握C语言源程序的建立、编辑、修改、保存及编译和运行等操作。

3.掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型变量,掌握对这些变量赋值等使用的方法,知道输出时格式字符的使用。

4.学会使用C语言的基本运算符(主要是算术运算符、赋值运算符)及其表达式,特别是自加运算符(++)和自减运算符(--)的使用。

5.掌握C语言源程序的结构特点与书写规范。

实验要求

1.根据题目要求,进行各种程序测试与验证,并记录结果。

2.第5题按照题目的要求编写出程序。

3.对每个程序认真进行语法检查与逻辑检查。

4.上机调试程序。

按各个程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。

5.详细记录数据的输入、输出信息,按要求写出实验报告。

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

1.开机;进入TurboC集成工作环境,了解TurboC集成工作环境及其菜单的使用,输入如下C语言源程序,并以ex1.C存盘。

#include

main()

printf("ThisisCprogram!

");/*输出字符串/

编译、连接、运行该程序,并按Alt+F5查看运行结果。

运行结果是:

注意:

要熟悉Turboc2.0的编译、连接、运行、保存、装载文件的命令及其快捷键

2.输入并调试以下程序,查看运行结果(由此结果可以了解到在实验用的微型机上,几种数据类型所占的字节数)。

main()

{

printf("char\t%dbytes\n",sizeof(char));

printf("short\t%dbytes\n",sizeof(short));运行结果是:

printf("int\t%dbytes\n",sizeof(int));

printf("long\t%dbytes\n",sizeof(long));

printf("float\t%dbytes\n",sizeof(float));

printf("double\t%dbytes\n",sizeof(double));

}

3.输入并调试以下程序:

main()

{inti,j,m,n;

i=8;j=10;

m=++i;n=j++;

printf("%d,%d,%d,%d",i,j,m,n);

}

分别作以下改动后再运行,并观察比较运行结果:

①将第4行改为:

m=i++;n=++j;

运行结果是:

②程序改为:

main()

{inti,j;

i=8;j=10;

printf("%d,%d",i++,j++);

}

运行结果是:

③在②的基础上,将printf语句改为:

printf("%d,%d,%d,%d",i,j,i++,j++);

运行结果是:

④将printf语句改为:

printf("%d,%d,%d,%d",i,j,++i,++j);

运行结果是:

4.试分析下面程序的运行结果,并回答下面的问题。

#include

main()

{inti=3,k;

printf("%d,%d\n",(i++)+(i++)+(i++),i);

i=3;

printf("%d,%d\n",i,++i+(++i)+(++i));

i=3;

k=(i++)+(i++)+(i++);

printf("%d,%d\n",k,i);

}

运行结果是:

在该题中,若把程序中所有(i++)及(++i)的括号去掉,则编译过程及运行结果有无变化?

答:

5.编程,求365÷7的商(输出两位小数)和余数的程序。

main()

{floata,b,c;intx;

a=365;b=7;

c=a/b;

x=(int)a%(int)b;

printf("%.2f,%d\n",c,x);

}

 

成绩:

教师签名:

年月日

实验二最简单的C程序设计

实验地点:

第 机房     实验时间:

  年 月 日

实验目的

1.掌握C语言中赋值表达式和赋值语句的使用。

2.正确理解、选择输入格式字符所控制的数据对象、数据输入(输出)形式和方法。

3.掌握输出函数printf()和putchar()的用法,能正确使用各种输出格式。

4.掌握输入函数scanf()和getchar()的用法,能正确使用各种输入格式。

实验要求

1.根据题目要求,进行各种程序测试与验证,并记录结果。

2.4、5两题按照题目的要求编写出程序。

3.对每个程序认真进行语法检查与逻辑检查。

4.上机调试程序。

按各个程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。

5.详细记录数据的输入、输出信息,按要求写出实验报告。

验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

1.输入并运行以下程序:

#include

main()

{inta;

floatb,c;

scanf("%2d%3f%*2d%4f",&a,&b,&c);

printf("\na=%d,b=%f,c=%f\n",a,b,c);

}

运行时从键盘上输入9876543210↙

则程序运行结果是:

2.输入并运行以下程序:

#include

main()

{intc;

chard;

c=66;d='B';

putchar(c);putchar(d);

putchar('B');putchar(66);

程序运行结果是:

 

将以上程序作如下修改:

①将程序中两个赋值语句改写:

c=65;d='A';

②将程序最后两个字符输出函数改写:

putchar('A');putchar(65);

则程序运行结果是:

3.输入并运行以下程序:

#include

voidmain()

{inta=-1;longb=-1;floatf=123.456;charc='a';

printf("a=%d,a=%o,a=%x,a=%u\n",a,a,a,a);

printf("b=%ld,b=%lo,b=%lx,b=%lu\n",b,b,b,b);

printf("f=%f,f=%7.2f,f=%-7.2f\nf=%e,f=%g\n",f,f,f,f,f);

printf("c=%c,c=%3c,c=%-3c,c=%d,c=%c\n",c,c,c,'a',65);

printf("s1=%s,s2=%7.3s,s3=%-7.3s\n","12345","ABCD","12345");

}

程序运行结果是:

4.编程,要求从键盘输入数据,使整型变量a=10,b=8;字符型变量c1='A',c2='a';实型变量x=3.1,y=64.54。

并按规定格式输出变量的值。

要求输出格式如下:

inta=10,b=8

charc1=A,c2=a

floatx=3.1,y=64.54

5.编程,要求从键盘输入一个字符,算出它的左邻字符和右邻字符,并按ASCII码值,从大到小输出3个字符及其对应的ASCII码值。

/*4.*/

main()

{inta,b;charc1,c2;floatx,y;

scanf("%d%d",&a,&b);

scanf("%c%c",&c1,&c2);

scanf("%f%f",&x,&y);

printf("inta=%d,b=%d\n",a,b);

printf("charc1=%c,c2=%c\n",c1,c2);

printf("floatx=%.1f,y=%.2f",x,y);

}

/*5.*/

#include"stdio.h"

main()

{charc1,c2,c3;

c2=getchar();

c1=c2-1;c3=c2+1;

printf("%c,%d;%c,%d;%c,%d\n",c3,c3,c2,c2,c1,c1);

}

 

成绩:

教师签名:

年月日

实验三选择结构程序设计

实验地点:

第 机房     实验时间:

  年 月 日

实验目的

1.掌握C语言表示逻辑量的方法(以0代表“假”,非0代表“真”)。

2.学会正确使用关系运算符、逻辑运算符及关系表达式、逻辑表达式。

3.熟练掌握各种if语句和switch语句的语法结构和语句功能。

4.结合程序,掌握选择结构程序设计的一般方法,能够用多种方法编写同一程序。

实验要求

1.根据题目要求,进行各种程序测试与验证,并记录结果。

2.3、4、5三题按照题目的要求编写出程序。

3.对每个程序认真进行语法检查与逻辑检查。

4.上机调试程序。

将各程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。

5.详细记录数据的输入、输出信息,按要求写出实验报告。

验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

1.输入并调试以下程序:

(1)#include

main()

{inta,b;

printf("Enteraninteger:

");

scanf("%d",&a);

b=1;

if(++a<0)b=-1;

elseif(a==0)b=0;

printf("a=%d,b=%d\n",a,b);

}

运行时,若从键盘上输入-1↙

则程序运行结果是:

(2)#include

main()

{inta1=10,a2=20,a3=30;

charch;

ch=getchar();

switch(ch)

{case'A':

a1++;a2++;break;

default:

a3++;

case'B':

a2++;a3++;

}

printf("%d,%d,%d\n",a1,a2,a3);

}

若从键盘上输入:

BAC↙

则程序运行结果是:

2.程序填空(完善程序)。

以下程序的功能是:

从键盘输入三个整型数据,对这三个数据进行从小到大排序,并输出排序后的数据。

请在下划线处填上适当的内容,以完成该程序的功能。

#include

main()

{intx,y,z,i;

scanf("%d,%d,%d",&x,&y,&z);

if(){i=x;x=y;y=i;}

if(){i=x;x=z;z=i;}

if(){i=y;y=z;z=i;}

printf("%d,%d,%d\n",x,y,z);

}

3.给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。

90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

要求:

用键盘输入百分制成绩,并判断输入数据的合理性,对于不合理的数据给出错误信息。

用switch语句编写该程序。

4.编程,计算下列分段函数值:

(x>0)

(x<0)

(x=0)

5.给出一个小于1000正整数,编程求该数是几位数,并按逆序打印出各位上的数字。

例如原数为321,则输出123。

/*3.*/

#include"stdio.h"

main()

{intscore;

printf("PleaseInputscore:

");

scanf("%d",&score);

if(score>100||score<=0)

{printf("InputError\n");

getchar();getchar();

return;

}

switch(score/10)

{case10:

case9:

putchar('A');break;

case8:

putchar('B');break;

case7:

putchar('C');break;

case6:

putchar('D');break;

default:

putchar('E');

}

}

/*4.*/

#include"math.h"

main()

{floatx,y;

scanf("%f",&x);

if(x>0)y=2*x-exp

(2);

elseif(x<0)y=3*x*x-2;

elsey=sqrt(5);

printf("x=%f,y=%f\n",x,y);

}

/*5*/

#include"stdio.h"

main()

{inta,gw=0,sw=0,bw=0,bit;

clrscr();

scanf("%d",&a);

if(a>=1000||a<=0)

{printf("InputError\n");

getchar(),getchar();

return;}

if(a>=100)

bw=a/100,sw=a%100/10,gw=a%10,bit=3;

elseif(a>=10)sw=a/10,gw=a%10,bit=2;

elsegw=a,bit=1;

a>=100?

printf("bit=%d,%d%d%d\n",bit,gw,sw,bw):

a>=10?

printf("bit=%d,%d%d\n",bit,gw,sw):

printf("bit=%d,%d\n",bit,gw);

}

 

成绩:

教师签名:

年月日

实验四循环结构程序设计

(1)

实验地点:

第 机房     实验时间:

  年 月 日

实验目的

1.理解循环的概念,熟悉和掌握while语句,do-while语句和for语句实现循环的方法。

2.掌握穷举算法、迭代算法、递推算法等一些常用算法的程序设计方法。

3.理解并掌握break语句和continue语句的语句功能。

4.能正确使用这些语句进行简单程序设计。

实验要求

1.根据题目要求,进行各种程序测试与验证,并记录结果。

2.3~6题按照题目的要求编写出程序,注意总结各题的编程思路。

3.上机调试程序。

将各程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。

4.详细记录数据的输入、输出信息,按要求写出实验报告。

验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

1.输入并调试以下程序:

(1)#include

main()

{inti=0;

while(i++<3)printf("%d\n",i);

}运行结果是:

(2)#include

main()

{inti;

for(i=1;i<5;i++)

{if(i%2)printf("*");

elsecontinue;

printf("%");

}

printf("@");

}运行结果是:

 

2.程序填空(完善程序)。

下面程序的功能是求1000以内的所有完全数,请填空(说明:

一个数如果恰好等于它的因子(自身除外)之和,则称该数为完全数,如6=1+2+3,则6是完全数)。

请在下划线处填上适当的内容,以完成该程序的功能。

#include

main()

{inti,sum,k=2;

do

{i=1;sum=0;

do

{if(k%i==0)

i++;}

while(i<=k/2);

if(sum==k)printf("%d\n",);

k++;

}

while();

}

3.编程,找出1~1000之间的全部“同构数”。

所谓“同构数”是指这样的数:

它出现在它的平方数的右端。

如:

6的平方是36,6出现在36的右端,6就是一个同构数。

4.编程,输出由1,2,3,4四个数字组成的4位数,并统计其个数(不允许该4位数中有相同的数字,例如:

1111,1122,1212等都不是所求的数)。

5.编程,用公式π/4≈1-

+

-

+…求π的近似值,当某项绝对值小于

时计算结束。

6.输入两个正整数,编程求它们的最大公约数和最小公倍数。

/*3*/

main()

{

longp,i,k;

for(i=1;i<1000;i++)

{p=i*i;

k=p-i;

if(i<10&&k%10==0)printf("%ld,%ld\n",p,i);

elseif(i<100&&k%100==0)printf("%ld,%ld\n",p,i);

elseif(i<1000&&k%1000==0)printf("%ld,%ld\n",p,i);

}

}说明:

i也必须定义为longint

main()

{

longp,i,k;

for(i=1;i<1000;i++)

{p=i*i;

if(p%10==i||p%100==i||p%1000==i)

printf("%ld%ld",p,i);

}

}

说明:

可以将if(p%10==i||p%100==i||p%1000==i)改写成if(p%1000==i||p%10==i||p%100==i)

但不能改写成if((p-i)%10==0||(p-i)%100==0||(p-i)%1000==0)例如:

75,75*75=5625不能满足第一个条件但能满足第二个条件。

/*4/

main()

{

inti,j,k,l,p,total=0;

clrscr();

for(i=1;i<=4;i++)

for(j=1;j<=4;j++)

for(k=1;k<=4;k++)

for(l=1;l<=4;l++)

{p=(i!

=j&&i!

=k&&i!

=l)&&(j!

=k&&j!

=l)&&(k!

=l);

if(p)

{

if(total%6==0)printf("\n");

printf("%d%d%d%d",i,j,k,l),total++;

}

}

printf("total=%d",total);

}

/*5*/

main()

{floatpi=1,sign=1,term;

longi=1;

term=1./(2*i+1);

while(term>=1e-6)

{sign=-sign;

pi+=sign*term;

i++;

term=1./(2*i+1);

}

printf("i=%ld,%e\n",i,term);

pi*=4;

printf("%f\n",pi);

}

/*6*/

main()

{inta,b,r,gcd,ps,x,y;

printf("Inputa,b:

\n");

scanf("%d,%d",&a,&b);

while(a<=0||b<=0)

{printf("inputerrorretry\n

scanf("%d,%d",&a,&b);

}

x=a,y=b;

r=a%b;

while(r!

=0)

{a=b;

b=r;

r=a%b;

}

gcd=b;

ps=x/gcd*y;/*应先除再乘例子625325*/

printf("a=%db=%d\n",x,y);

printf("gcd=%dps=%d\n",gcd,ps);

}

main()

{longa,b,p,t;

printf("PleaseInputab:

\n");

scanf("%ld%ld",&a,&b);

if(a

printf("a=%ld,b=%ld\n",a,b);

p=a*b;

while(a%t!

=0||b%t!

=0)t--;

p=p/t;

printf("highestcommondivisor=%-8ld,leastcommonmultiple=%-8ld\n",t,p);

}

 

成绩:

教师签名:

年月日

实验五循环结构程序设计

(2)

实验地点:

第 机房     实验时间:

  年 月 日

实验目的

1.理解循环的概念,熟悉和掌握while语句,do-while语句和for语句实现循环的方法。

2.掌握穷举算法、迭代算法、递推算法等一些常用算法的程序设计方法。

3.理解并掌握break语句和continue语句的语句功能。

4.能正确使用这些语句进行简单程序设计。

实验要求

1.根据题目要求,进行各种程序测试与验证,并记录结果。

2.3~6题按照题目的要求编写出程序,注意总结各题的编程思路。

3.上机调试程序。

将各程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。

4.详细记录数据的输入、输出信息,按要求写出实验报告。

验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

分析

 

实验内容与过

、结

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1