实验一
1.
#include”stdio.h”
main()
{
Int a,b,c,s;
a=5;b=4;c=6;
s=(a+b+c)/3;
printf(“a=%d,b=%d,c=%d\n,s=%d”,a,b,c,s);
}
已知a=5,b=4,c=6,求出s并换行
2.
#include”stdio.h”
main()
{
int r,s;
scanf(“%d”,&r);
s=r*r;
printf(“s=%d”,s);
}
输入一个数字求他的平方
3.
include<stdio.h>
main()
{
printf(“ *\n”);
printf(“***\n”);
printf(“ *\n”);
}
4.
#include<stdio.h>
main()
int v;
int a,b,c;
a=3;b=3;c=5;
v=a*b*c;
printf(“v=%d”,v);
实验二
1.(1)
main()
{
char s1=’3’,s2=’4’,s3=’5’;
int c1=101,c2=102;
printf(“3%d\t4%c\t5%c\n”,s1,s2,s3);
printf(“s1=%d\ts2=%d\ts3=%d\n”,s1,s2,s3);
printf(“c1=%d\t~%c”,c1,c1);
printf(“c2=%dt~%c”,c2.c2);
}
1.(2)
main()
{
float x=8.3,y=4.2,s;
int a=7;
s=x+a%5(int)(x-y)%2/3;
printf(“s=%f”,s);
}
运行结果为8.300000
%是求余数
先运算x-y,把结果转换为int型的有利于四则运算。
1(3)
main()
{
int I,j,p,q;
i=3;j=6;
p=i++;q=--j;
printf(“%d,%d,%d,%d”,i,j,p,q);
p=i--++3;q=++j-4;
printf(“%d,%d,%d,%d”,i,j,p,q);
}
运行结果为:4,5,3,5,3,4,5,7,2
1(4)
main()
{
int m=15,n=9,s;
m*=3+2;
printf(“%d”,m);
n+=n-=n*=n;
printf(“%d”,n);
printf(“%d\n”,(s=6*5,m+n+s));
printf(“%d\n”,s);
}
运行结果为75,0,105,30
2.(1)错误改正
(这里只给出正确的源程序)
#include<stdio.h>
#define MM 40
main()
{
int a=3,b=6,t;
t=MM/(3+6);
printf(“%d%d”,t,MM);
}
原来printf语句打成了print,printf语句中少了一个%d.
2(2)
#include<stdio.h>
main()
{
int m;
double x;
scanf(“%d”,&m);
x=3.14*m*m;
printf(“%f”,x);
}
注意分号,%f转义
2(3)
main()
{
int m=8,n=5;
m*=m-n;
printf(“%d”,m);
m=m+1;n=n-1;s=m+n;
printf(“%d%d%d”,m,n,s);
}
3.将两个数a,b进行交换。
main()
{
Int a=9,b=5;
a+=b;
b=a-b;
a-=b;
printf(“%d%d”,a,b);
}
4.输入a,b,c三个变量,计算数学公式(a*b)/c
main()
{
int a,b,d;
float s,c:
scanf(“%d%d%f”,&a,&b,&c);
d=a*b;
c=d/c;
printf(“%f”,s);
}
输入1 6 2.0
输出3.000000
实验三
1.(1)
main()
{
int m=345,t;
float n=2.56;
t=2.56*100;
printf(“m=%d,n*100=%d\n”,m,t);
}
1(2)
main()
{
int a,b,c,s,v;
scanf(“%d%d%d”,&a,&b,&c);
s=a*b;
v=a*b*c;
printf(“%d%d%d”,a,b,c);
printf(“s=%d,v=%d\n”,s,v);
}
2(1)
填入要求的语句
main()
{
int m,n;
float x=3.5,y=6.2;
scanf(“%d,%d”,&m,&n);
printf(“%6d,%6d”.,m,n);
/*每个数的输出宽度为6,两个数之间逗号建个。*/
Printf(“x=%7.2f,y=%7.2”,x,y);
/*个数的输出宽度7,小数位2*/
}
2(2)
要求运行时必须按如下格式输入数据:
A=4,b=8
4.23,5.7
234
567
main()
{
int a,b;
long m,n;
float p,q;
scanf(“a=%d,b=%d\n%f,%f”,&a.&b,&p,&q);
scanf(“%ld”,&m);
scanf(“%ld”,&n);
printf(“a=%d,b=%d\n,m=%ld,n=%ld\n”,a,b,m,n);
printf(“p=%f,q=%f\n”,p,q);
}
3
main()
{
Int i,j,k,ss,m=1,n=1;
scanf(“%d%d”,&I,&j);
/*查看变量i,j取值,读入数据是否正确*/
m+=i++;
n*=--j;
ss=(k=m+,n-5,k+n);
printf(“%d”,ss);
}
4.编写程序用getchar 读入c1,c2,然后分别用putchar函数和printf函数输出这两个字符。
#include<stdio.h>
main()
{
char c1,c2;
c1=getchar();c2=getchar();
putchar(c1);putchar(c2);
printf(“c1=%c,c2=%c,c1,c2);
printf(“%d.%d\n”,c1,c2);
}
5.编写程序。把790分钟转换为小时和分钟表示,然后进行输出。
#include<stio.h>
main()
int a=790,b,c;
b=790/60;
c=790%60;
printf(“%d小时%分钟“,b,c);
}
6.编写程序输入a,b,c三个数,然后i交换他们的取值,把a中的原来数给b,把b中的数给c,把c中的数给a.
#include<stdio.h>
main()
int a,b,c,d;
scanf(“%d%d%d”,&a,&b,&c);
d=a;
a=c;
c=b;
b=d;
printf(“%d,%d,%d\n”,a,b,c);
}
7.编写程序,输入一个double型的数,使得该数保留小数点后两位,对第三位小数进行四舍五入
#include<stdio.h>’
main()
{
double a;
scanf(“%lf”,&a);
printf(“%.2f\n”,a);
}
实验四
1.
a. 错误原因分析:Switch分号错误
switch(a*a+b*b)
{
case 3:
case 1:y=a+b;break;
case 0:y=b-a;break;
}
b. 错误原因分析:switch语句使用错误,后跟括号。Default放在后边。
switch (a)
{ case 10:y=a-b;break;
case 11:x=a*b;break; default:x=a+b;}
c. 错误原因分析:没有输出语句。
switch(a+b)
{case 10:x=a+b;break;
case 11:y=a-b;break;
}
2.(1)
main ( )
{ int x , y ;
scanf ( “ %d ” , &x ) ;
if (x>-5&&x<0) y = x ;
if (x==0) y = x – 1 ;
if (x>0&&x<10) y = x + 1 ;
printf ( “ %d” , y ) ;
}
2(2)
main ( )
( int x , y ;
scanf ( “ %d ” , &x ) ;
if ( x > -5 ) && ( x < 0) ) y=x;
else if (x==0 y = x-1 ;
else if(x>0&&x<10) y = x + 1 ;
printf ( “%d” , y ) ;
}
3
main ( )
{ int a , M ;
scanf ( “ %d ” , &a ) ;
M = a>0 ? a : - a;
printf ( “abs(a) = %d ” , M ) ;
}
4.
main()
{
Int c,t,m;
Printf(“input the number of coat and trousers your want buy;\n”)
scanf(“%d%d”,&c,&t);
if(c==t)
if(c>=50) m=c*80;
else m=c*90;
else
if(c>t)
if(t>=50) m=t*80+(c-t)*60;
else 90*t+(c-t)*60;
else
if(c>=50) 80*t+(t-c)*45;
else m=c*90+(t-c)*45;
printf(“%d”,m);
}
5.
#include<stdio.h>
main()
{
int a,b,c;
scanf(“%d%d%d”,&a,&b,&c);
if((a+b)&&(a-b)<c)
if((a!=c)&&(b!=c)&&(b!=c))
printf(“此三角形为不等边三角形”);
else if ((a==b)&&(b==c)&&(c==a))
printf(“此三角形为等边三角形”);
else printf(“此三角形为等腰三角形”);
else printf(“由a,b,c不能构成三角形”);
}
6.
#include”stdio.h”
main()
{
long n;
scanf(“%ld”,&a);
if(a%5==0)
if(a%7==0)
printf(“yes\n|”);
else printf(“no\n”);
}
实验五
2.
3.
4.
5.
#include<stdio.h>
{
int n,i,;
float x;
e=1.;i=1;x=1.0;n=1
while (e<0.000001)
{
x-x/i;e+=x;i++;n++;
}
printf(“e=%f,%d”,e,n);
}
6.
《C语言程序设计》
实验报告册
编写:陈美成
专业:
班级:
学号:
姓名:
教师:
贵州航天职业技术学院
目 录
实验一、熟悉TC开发环境(2学时)
实验二、数据类型、运算符与表达式(2学时)
实验三、分支结构程序设计(2学时)
实验四、循环结构程序设计(2学时)
实验五、数组应用(2学时)
实验六、函数应用(2学时)
实验七、指针应用(4学时)
实验八、结构,联合和链表(2学时)
实验九、文件操作(2学时)
实验一:熟悉TC开发环境(2学时)
实验日期: 年 月 日 实验成绩:
一、 目的与要求:
1、 了解Turbo C集成开发环境的进入与退出
2、 了解Turbo C集成开发环境各种窗口的切换
3、 了解Turbo C集成开发环境的设置
4、 掌握C语言源程序的建立、编辑、修改、保存及编译和运行
5、 掌握C语言源程序的结构特点与书写规范。
二、 内容与步骤:
编写一个程序解鸡兔同笼问题:已知鸡兔总数为A,鸡兔腿总数为B,计算出鸡兔各多少?
三、 实验分析:
指导教师签名:
实验二:数据类型、运算符与表达式(2学时)
实验日期: 年 月 日 实验成绩:
一、 目的与要求:
1、 掌握C语言各种基本数据类型的定义方法。
2、 掌握C语言中常用运算符的功能和使用方法。
3、 初步了解运算符的优先级别和结合律。
二、 实验内容:
1、 编程实现求平面上任意两点之间的距离。
2、 输入两个正整数并存入A,B中,并由A,B两个数生成新的数C(将A的低字节作为C的高字节,将B的高字节作为C的低字节),以十六进制输出A,B,C的值。
三、 实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
实验三:分支结构程序设计(2学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、熟练掌握输入、输出函数。
2、掌握分支语句的格式和功能。
4、 掌握分支结构的程序设计方法。
二、实验内容:
1、 从键盘输入一金额(以元为单位),然后显示支付金额的各种面额人民币的数量。(要求画出流程图)
2、 编程将一个百分制成绩转换成等级制成绩。具体要求如下:
(1) 对应关系如下:
(2) 用键盘输入百分制成绩,输入前要有提示
(3) 要能判断输入数据的合理性,对于不合理的数据应输出错误信息
(4) 输出结果中应包含百分制成绩和成绩等级。
三、实验分析:
1、画出第1题的流程图
2、对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。
指导教师签名:
实验四:循环结构程序设计(2学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、熟练掌握三种常用的循环结构的格式和功能。2、掌握穷举算法和迭代算法的程序设计。
3、掌握Break和Continue语句的功能。
二、实验内容:
1、 编程计算掷1000次骰子中出现各种点数的概率。(rand()产生0~215-1之间的随机数,random(int num)产生0~num-1之间的随机数。)
2、编程求解百马百担问题:有100匹马驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问有大、中、小马各多少?
三、实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
实验五:数组应用(2学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、熟练掌握数组的定义、初始化和输入输出方法。2、掌握字符数组和字符串的关系。
3、掌握字符串函数的使用。 4、加深对数组的理解,培养解决实际问题的能力。
二、实验内容:
1、编写一个程序输入一行字符,统计其中有多少个单词。单词之间用一个或多个空格分隔开。
2、输入一个4×5矩阵各个元素的值,计算四周元素值之和并输出。
3、对20个整数进行升序排序,并输出排序结果。
三、实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
实验六:函数应用(2学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、熟练掌握C语言函数的定义和调用的形式及规则。
2、掌握实参与形参的对应关系,“值传递”与“地址传递”的方式与区别。
3、掌握函数的嵌套调用和递归调用的设计方法。
4、掌握利用C语言图形函数完成作图的方法。
二、实验内容:
1、编程实现将一个十六进制数转换成与之等价的十进制数。要求在主函数里负责收集字符,并判别它们是否为十六进制字符,另编一函数负责转换工作。
2、某电视机生产厂20##年各月生产情况如下:编程画出该生产厂20##年各月生产情况的柱状图。
三、实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
实验七:指针应用(4学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、掌握指针的概念以及定义方法,理解地址、指针和指针变量之间的区别与联系。
2、掌握如何使用指针来处理与数组相关的问题。
3、掌握如何使用指针来处理与字符串有关的问题。
4、掌握如何使用指向函数的指针变量。
二、实验内容:
1、编写一个程序,接受用户输入的一行字符,以回车键结束,分别统计出其中大写字母、小写字母、空格、数字和其它字符的个数。
2、编程求解约瑟夫问题:有N个小孩围成一个圆圈,给他们从1开始依次编号。现指定从第W个小孩开始报数,报到第S个时,该小孩出列,然后从下一个小孩开始报数,仍是报到第S个出列,如此重复下去,直到所有小孩都出列,求小孩出列的顺序。
3、输入一个字符串,内有数字和非数字字符,如a123x456 17960?302taB5876将其中连续的数字作为一个整数,依次存放到一数组a中。例如,123放在a[0],456放在a[1]…统计共有多少个整数,并输出这些数。
三、实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
实验八:结构体、联合体和链表(2学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、掌握结构体变量的定义和引用方法。
2、掌握结构体变量与指向结构体的指针作为函数参数实现函数的调用。
3、加深了解链表的概念,学会对链表进行操作。
二、实验内容:
1、已有a、b两个链表,每个链表中的结点包括学号、成绩。要求把两个链表合并,按学号升序排列。
2、编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num、name、score[3],用主函数输入这些记录,用print函数输出这些记录。
三、实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
实验九:文件操作(2学时)
实验日期: 年 月 日 实验成绩:
一、目的与要求:
1、掌握文件、缓冲文件系统、文件指针的概念。2、学会使用文件打开、关闭、读、写等文件操作函数。
3、了解用缓冲文件系统对文件进行操作。
二、实验内容:
1、有一磁盘文件“emploee”,内存放职工的数据。每个职工的数据包括职工姓名、职工号、性别、年龄、住址、工资、健康状况、文化程度。今要求将职工姓名、工资的信息单独抽出来另建一个简明的职工工资文件。
2、有两个磁盘文件“A”和“B”,各存放一行字母,今要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件“C”中去。
三、实验分析:(对各题运行结果进行分析,如果程序未能调试通过,应分析出原因。)
指导教师签名:
东莞理工学院《C语言程序设计》课程设计题目:图书信息管理系统院系:电子工程学院专业:电子信息工程年级:20##班别:2班指导教师:…
C语言程序设计课程设计学生姓名学号系院专业设计论文题目学生选课系统管理完成日期20xx年6月指导教师目录一实验目的二实验内容三总体…
河南理工大学计算机科学与技术学院课程设计报告20XX20XX学年第一学期课程名称C语言课程设计设计题目《小学算术运算测试》学生姓名…
C语言课程设计报告设计题目专业班级学号姓名任课老师时间目录一课程设计题目及所涉及知识点二课程设计思路及设计流程图三课程设计中遇到的…
C语言程序设计课程设计报告20xx20xx学年第1学期题目专业班级姓名学号指导教师成绩计算机科学与技术系20xx年12月31日目录…
《C语言程序设计》实验报告实验七、结构体和联合体程序设计学号姓名一、实验目的1.掌握结构体类型变量和数组、共用体类型变量和数组以及…
C语言程序设计实验实验报告指导老师专业班级学号姓名日期20xx0529重庆邮电大学计算机科学与技术学院实验一实验名称一维数组程序设…
C语言程序设计实验报告专业班级日期11月26日成绩实验组别第327次实验指导教师李开学生姓名学号同组人姓名实验名称数组实验一实验目…
C语言程序设计实验报告学号姓名1设计一个函数fc统计数组中偶数和奇数的个数数组元素个数不多于10个编写main函数正确调用fc函数…
C语言程序设计实验报告数组1实验目的1熟练掌握一维数组二维数组的定义初始化和输入输出方法2熟练掌握字符数组和字符串函数的使用3掌握…
C语言程序设计(20xx-20xx-2)实验报告1教学班级:***班学号:09姓名:艾米课程教师:***实验辅导教师:***教案1…