一、实验目的
1、认识C程序的上机环境:Turbo C,win-tc,vc++6.0;
2、熟练掌握在vc++6.0环境下运行程序的步骤。
二、实验内容
1、认识三种不同的编译环境,分别在三个环境下调试HelloWord.c的源程序。HelloWorld.c 的源程序代码如下:
2、实现课本P12页的三个程序。
三、上机步骤
1、Turbo C开发环境的认识参见课本P6。
2、Vc++6.0集成开发环境运行程序的步骤:
熟悉以上四步后考虑以下问题:
1、每步执行后得到的文件扩展名是什么?
2、若编辑源程序时出错怎么办?
3、若要将本次上机的源程序进行保存,去哪里查找源程序文件?
4、如何重新打开一个已经存在的源程序?
四、实验总结
1、实验中遇到的问题及解决方法。
2、实验体会。
实验二数据类型、运算符与表达式
一、实验目的
2.掌握运算符的使用方法、优先级及表达式的书写规则。
二、实验内容
1、验证课本相关例题例2.1-2.11。
2、课本P36上机实训的内容
3、验证课后习P39题第4题。
4、分析下列程序的结果并上机验证:
1)以下程序运行后的输出结果是 _______ 。
\n',a,b,c);}
程序运行后的输出结果是______
2)数字字符0的ASCII值为48,若有以下程序
\n",b-a);} 程序运行后的输出结果是______
3)有以下程序
x=-
printf("%d\n",x);
}
程序运行后的输出结果是______
4)若有语句
-\n",j);
则输出结果是______
三、实验步骤
编写源程序进行调试、运行。
记下实验中遇到的问题及解决方法。
四、实验总结
实验三数据的输出
一、实验目的
1、单个字符的输入。
2、格式输出函数的使用。
二、实验内容和要求
1、验证课本相关例题。
2、验证课本P60的第3,4.1题。
3、有以下程序
\n",m,n);
程序运行后的输出结果是
4、有以下程序
\n",a,b);
程序运行结果是:
5、验证以下程序段的输出结果:
int x=2002, y=2003;
\n", (x,y) );
运行结果:
6、根据三角形的三边长计算三角形的面积。
四、实验总结
实验四数据的输入及顺序程序设计一、实验目的
2、格式输入函数的使用。
3、顺序程序设计。
二、实验内容和要求
1、验证课本相关例题。
2、实现课本P58上机实训和P60的第4题。
3、编写程序,读入三个整数给a、b、c,然后交换他们的值,要求把a的值给b,b的值给c,c 的值给a。
源程序:
4、以下程序的功能是:给r输入数据后计算半径为r的圆面积s,程序在编译时出错。
)
int r; float s;
scanf("%d",&r);
s=*p*r*r; printf("s=%f\n",s);
请写出出错原因:
修改后运行结果:
5、从终端输入一个三位数,将其百位、十位、个位分三行显示。例如,从键盘输入153,则显示
1
5
3
三、实验总结
实验五选择结构程序设计(一)
一、实验目的
1、了解C语言表示逻辑量的方法(以0代表”假”,以1代表”真”)。
2、学会正确使用逻辑运算符和逻辑表达式。
3、熟练掌握if语句。
二、实验内容及步骤
1、验证课本相关例题4.1-4.10。
2、课后题4,5。
3、编写程序实现,输入某学生的成绩,经处理后给出学生的等级,等级分类如下: 90分以上(包括90): A
80至90分(包括80):B
70至80分(包括70):C
60至70分(包括60):D
60分以下: E
源程序:
三、实验总结:
一、实验目的
1、熟练掌握if语句和switch语句。
2、结合程序掌握一些简单的算法。
3、进一步熟悉VC集成环境的使用方法。
二、实验内容
1、验证课本相关例题4.11-4.13.
2、上机实训P78。
3、阅读下面的c30111.c程序,要求对输入的数字1~7转换成文字星期几,对其它数字不转换。例如,输入5时,程序应该输出Friday。程序如下:
#include
void main( )
{ int day;
scanf(" %d", &day);
switch (day)
{ case 1 : printf(" Monday , ");
case 2 : printf(" Tuesday , ");
case 3 : printf(" Wednesday , ");
case 4 : printf(" Thursday , ");
case 5 : printf(" Friday , ");
case 6 : printf(" Saturday, ");
case 7 : printf(" Sunday , ");
}
}
①编译、连接和运行该程序,然后输入4。其输出结果是什么?为什么是这样的结果?
②该程序有哪些错误?如何修改?
4、输入一个三位的正整数,判断它是否是水仙花数。(“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个“水仙花数”,因为153=13+53+33。)
源程序:
四、实验总结:
一、实验目的
1、掌握循环的三种基本结构,重点掌握while语句和do-while语句的使用。
2、掌握在程序设计中用循环的方法实现各种算法。
二、实验内容
1、验证课本例题5.1-5.8.
2、实现课后3,4.1,4.2,4,4.
3、若输入12345,分析输出结果是多少?上机验证。
#include
void main( )
{ long data;
scanf("%ld",&data);
while(data)
{ printf("%ld,",data%10);
data=data/10;
}
}
4、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13,…,求出这个序列的前20项之和。
三、实验总结
实验八-九循环结构程序设计(二)
一、实验目的
1、掌握用for语句,while语句和do~while语句实现循环的方法。
2、掌握嵌套循环结构的执行过程。
3、理解循环结构程序段中语句的执行过程,进一步练习程序的跟踪调试技术。
4、掌握continue与break在循环结构中的作用与区别。
二、实验内容
1、验证课本例题5.9-5.14.
2、实现课后4.3,4.5,4.6.
3、课本P102实训。
4、写出以下程序结果并上机验证。(验证)
#include
void main( )
{ int i,j,x;
for(i=0,x=0;i<2;i++)
{ x++;
for(j=0;j<3;j++)
{ if(j%2) continue;
x++;
}
x++;
}
printf("x=%d\n", x);
}
思考:用一句话概括if(j%2)语句的作用。
三、实验总结
实验十一维数组的应用
一、实验目的
1、掌握数组的含义
2、掌握定义一维数组的方法。
3、学会用一维数组进行编程。
二、实验内容
1.验证课本例题6.1-6.5。
2.验证课后P141的
3.1,3.2并编程实现
4.1,4.2。
3、P135上机实训6.4。
4、将一个数组中的值按逆序重新存放。例如,原来顺序为1,2,3,要求改为3,2,1. 源程序:
5.用数组处理Fibonacci数列问题。
已知Fibonacci数列:
1 1
2
3 5 8 13 21 3
4 ……
源程序:
三、实验总结:
实验十一-十二二维数组、字符数组及函数的应用
一、实验目的
1、掌握二维数组元素的引用。
2、掌握字符数组和字符串函数的使用。
二、实验内容
1、验证课本相关例题。
2、编程实现课后练习3.3,4.4,4.5.
3、定义一个二维数组来存放一个矩阵,然后将矩阵转置输出。
源程序:
4、编写一密码验证程序。原始密码由用户在程序中定义。若用户输入的密码和原始密码一致,则
显示:“You are right!”,否则显示”You are wrong!”
源程序:
三、实验总结:
实验十三函数的声明及调用
一、实验目的
1、掌握定义函数的方法。
2、掌握函数形参与实参的对应关系,以及“值传递”的方式。
3、掌握函数的嵌套调用和递归调用的方法。
二、实验内容
1、验证课本例题7.1-7.9.
2、课本P176上机实训一.
3、编程实现课后练习 5.1.
4、下面的程序的功能是:输入三个整数,输出其中最大的数,补足所缺语句。#include
/*函数max的声明*/
/*函数max3的声明*/
void main()
{
int a,b,c,m;
/*从键盘接收3个整数*/
m=max3(a,b,c);
printf("Max is %d\n",m);
}
int max(int x, int y) /*函数功能:返回x、y的最大值*/
{
return (x>y?x:y);
}
int max3(int x, int y, int z) /*函数功能:返回x、y、z的最大值*/ {
int m;
return m;
}
五、实验总结:
实验十四函数(二)
一、实验目的
1、学习递归程序设计,掌握递归函数的编写规律。
2、掌握参数的传递过程。
3、局部变量与成员变量 二、实验内容
1、验证课本例题7.10-7.18.
2、课本P176上机实训二和综合实训。
3、编程实现课后练习 5.2,5.4,5.5.
4、编写程序,实现由主函数输入m 、n ,按下述公式计算并输出n
m C 的值。
)!
(!!n m n m C n
m -=
提示:定义一个求阶层的函数,然后在主函数中调用三次即可求得。实验总结: 源程序:
三、实验总结
实验十五 指针应用(一)
一、实验目的
1、了解指针与地址的概念,准确使用地址算符&和*.
2、掌握指针与一维数组的关系及使用方法。 二、实验内容
1、验证课本相关例题8.1-8.4。
2、为了实现输出数组的全部元素,可以使用几种表示数组元素的方法?
3、将数组中的元素按逆序重新存放(借助指针实现)。
源程序:
4、想使指针变量pt1指向a和b中的大者,pt2指向小者,以下程序能否实现此目的?
swap(int *p1,int *p2)
{int *p;
p=p1;p1=p2;p2=p; }
main()
{ int a,b;
int * pt1,* pt2;
scanf("%d,%d",&a,&b);
pt1=&a;pt2=&b;
if(a
printf("%d,%d\n",* pt1,* pt2);
}
上机调试此程序.如果不能实现题目要求,指出原因并修改之。
5、从键盘输入三个整数,要求设三个指针变量p1,p2,p3,使p1指向三个数的最大者,p2指向次大者,p3指向最小者,然后按由小到大的顺序输出这三个数。
三、实验总结:
实验十六指针应用(二)
一、实验目的
1、掌握指针与二维数组的运用。
2、掌握指向字符串的指针的使用。
二、实验内容
1、验证课本例题8.5,8.6。
2、课后上机实训。
3、编程实现课后3.
4、填空题
str是全部由小写字母字符和空格字符组成的字符串,由num传入字符串的长度。请补充函数fun(),该函数的功能是:统计字符串str中的单词个数,结果由变量num传回。每个单词之间都由空格隔开,并且字符串str开始不存在空格。
例如:str="how do you do",结果为:num=4。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include
#define N 80
void fun(char *s,int *num)
{
int i,n=0;
for(i=0;【1】;i++)
{
if(s[i]>='a'&&s[i]<='z'&&(s[i+1]==
' '||s[i+1]=='\0'))
【2】;
}
【3】;
}
main()
{
char str[N];
int num=0;
printf("Enter a string:\n");
gets(str);
while(str[num])
num++;
fun(str,&num);
printf("The number of word is :
%d\n\n",num);
}
5、编程题
请编写函数fun(),它的功能是:求出1到1000之内能被5或13整除、但不能同时被5和13整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:
#include
#include
void fun(int *a,int *n)
{
}
main( )
{
int aa[1000], n, k;
clrscr( );
fun(aa,&n);
for(k=0;k if((k+1)%10==0) { printf("%5d ",aa[k]); printf("\n "); /*一行写10个数*/ } else printf("%5d ",aa[k]); } 三、实验总结: 实验十七、十九结构体 一、实验目的 1、掌握结构体类型变量的定义和使用。 2、掌握结构体类型数组的概念和使用。 3、掌握共用体的使用方法。 二、实验内容 1、验证课本相关例题。 2、上机实训一、二。 3、编程实现实现课后习题。 4、读入五位学生的信息(学号,姓名,成绩),输出最高分学生的信息。(通过函数实现) 源程序: 5、编程题 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:按分数的高低排列学生的记录,低分在前。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序: #include #define N 16 typedef struct { char num[10]; int s ; }STREC; int fun (STREC a[]) { } main () { STREC s[N]={{ "GA005",88},{"GA003",64},{"GA002",77},{"GA004",89}, {"GA001",54},{"GA007",72},{"GA008",72},{"GA006",65}, {"GA015",83},{"GA013",95},{"GA012",55},{"GA014",68}, {"GA011",78},{"GA017",53},{"GA018",92},{"GA016",82}}; int i; FILE *out; fun(s); printf("The data after sorted :\n"); for (i=0; i { if((i)%4==0) /*每行输出4个学生记录*/ printf("\n"); printf("%s %4d ",s[i].num,s[i].s); } printf("\n"); out=fopen("out21.dat", "w"); for(i=0; i { if((i)%4==0&&i) fprintf(out, "\n"); fprintf(out, "%4d",s[i].s); } fprintf(out, "\n"); fclose(out); } 三、实验总结: 实验十八文件 一、实验目的 掌握文件以及缓冲文件系统、文件指针的概念 学会使用文件打开、关闭、读、写等文件操作函数 二、实验内容和要求 1、验证课本相关例题。 2、上机实训。 3、编程实现课后习题。 4、从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个#为止(要求文件名统一用file1,不包含路径) 源程序: 三、实验总结: 长沙理工大学C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: Thedressislong Theshoesarebig Thetrousersareblack 答案: #include printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序:a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4.设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include 《C程序设计》实验教学大纲 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分:4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。 2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。 九、实验项目 实验一C程序的运行环境和运行一个C程序的方法 一、实验目的 1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。 2.了解在该系统上如何编辑、编译、连接和运行一个C程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例1.1程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的? 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; pr intf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序: 2.程序填空 (1)以下程序的功能是计算1~50之间能被7整除的整数之和。 #include #include C语言程序设计实验报告(数组) 1实验目的 (1)熟练掌握一维数组,二维数组的定义,初始化和输入、输出方法; (2)熟练掌握字符数组和字符串函数的使用; (3)掌握与数组有关的常用算法(查找、排序等)。 2实验内容 编写函数catStr(char str1[],char str2[])用于进行两个字符串的连接,编写函数lenStr(char str[])用于统计一个字符串的长度,并在主函数中调用。 要求: 1、不允许用strcat()和strlen()字符处理库函数; 2、在主函数以直接初始化的方式输入两个字符串str1和str2.调用函数 strlen()计算并返回两个字符串的长度; 3、调用函数catstr()连接两个字符串(将str2连接在str1后面); 4、调用函数lenstr()计算并返回连接后字符串的长度; 5、在主函数中输入两个原始的字符串及几个字符串的长度,以及处理后字 符串及其长度。 3算法描述流程图 4源程序 #include for (i=0;m[i]!='\0';i++); printf("%d",i); } void main() {char s1[50]="forever",s2[50]="more"; printf("s1=%s,s2=%s",s1,s2); printf("\ns1的长度:"); lenStr(s1); printf("\ns2的长度:"); lenStr(s2); catStr(s1,s2); printf("\n连接后的字符:"); printf("%s\n",s1); printf("连接后字符的长度:"); lenStr(s1); printf("\n"); } 5测试数据 s1=forever, s2=more 6运行结果 7出现问题及解决方法 在输入程序时,少写了半边引号,调试时发现存在错误,找到了错误并加以改正。无论什么事,细心都是必不可少的,认真是解决问题的关键。 8实验心得 通过本次实验,对于函数的定义和声明,数组以及循环语句有了进一步的认识,掌握了字符数组和字符串函数的使用,以及与数组有关的常用算法。此次实验不是调用strlen()和strcat()函数,而是通过自己设计程序来进行字符串的连接以及计量字符串的长度,由此我学会了如何去理清自己的思路来设计程序。 2010C语言实验报告参考答案 长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include 实验一熟悉C程序运行环境 班级学号姓名成绩 一、实验目的 1. 熟悉C语言Visual C++调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include <> int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include <> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果: 项目3. 调试并运行下面程序,并写出运行结果: #include <> int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果: C语言程序设计报告 日 程序主要内容 任务1. 程序首先随机产生一到十之间的正整数,在屏幕上打印出问题,例如6*7=?然后让学生输入答案,序检查学生输入的答案是否正确,若正确,则“RIGHT”,然后问下一个问题,否则打印“WRONG,PLEASE TRY AGAIN”,然后提示学生重做,直到答对为止。 程序如下: #include int x,int y; srand(time(NULL)); x=rand()%10+1; y=rand()%10+1; if(m==1) return x; if(m==2) return y; } int Answer() { int n; scanf("%d",&n); return n; } 任务2:在(1)的基础上,当学生回答错误时,最多给三次重做的机会。 :程序如下: #include 文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持. 《C语言程序设计》 实验报告 2013~2014学年第二学期 班级 姓名 学号 指导教师 实验一 实验项目名称:C程序的运行环境和运行C程序的方法 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C源程序的特点。 二、预习内容: 教材《C语言程序设计教程》第1章。 三、实验内容: 1. 在Visual C++ 6.0环境下输入并运行下面的程序: #include 2. (1) 改正后的源程序: #include c语言上机实验报告 (2) 实验六 姓名班级单周上机的那班学号 一 程序源:#include fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/1 0,a/10,a/10,a/ 10,a/10,a/10,a/10); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a /10,a/10,a/10,a/ 10,a-8*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a/10 ,a/10,a/10,a-7*(a /10)); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a/10,a/ 10,a-6*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a/10,a- 5*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a-4*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d\n",a,a/10,a/10,a/10,a-3*(a/10)); fprintf(fp,"%d=%d+%d+%d\n",a,a/10,a/10,a-2*(a/10)); fprintf(fp,"%d=%d+%d\n",a,a/10,a-(a/10)); fclose(fp) } 运行结果: -前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #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); } 2.------------------------------- 输入一个数字求他的平方 #include { int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 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); } C语言程序设计上机实验报告 学院:机械工程学院 班级:机自161213 姓名:刘昊 学号:20162181310 实验时间:2017 年3 月6 号 任课老师:张锐 C语言程序设计上机实验报告 实验一 一、实验名称: C 程序的运行环境和运行C程序的方法 二、实验目的:了解在 程序 C 编译系统上如何编辑、编译、连接和运行一个 C 三、实验内容: (1). (2). (3). 输入并运行一个简单的C程序。 设计程序,对给定的两个数求和。 设计程序,对给定的两个数进行比较,然后输出其中较大的数。 四、源程序代码: 代码1: 运行结果1: 程序分析1: 该程序用来判断所输入的整数是否为一个素数,如果一个数能被除了 1 和它本身整除,还能被其它数整除,那么它就不是一个素数,因此,用for 循环来进行整除过程的简写。 代码2: 运行结果2: 程序分析2: 简单的使用printf() 和scanf() 函数进行简单的数据运算。代码3: 运行结果3: 程序分析3: 使用if 语句进行判断。 五.实验总结 C语言程序设计上机实验报告 实验二 一、实验名称:顺序结构程序设计 二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法, 熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。 三、实验内容: (1). 编写程序,实现小写字母转大写。 (2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。 (3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。 (4). 编写程序,实现单字符getchar 和putchar 输入输出。 (5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。 四、源程序代码 代码1: 运行结果1: 程序分析1: C语言程序设计实验报告(实验名称:函数) 1实验目的 (1)掌握函数的定义方法、调用方法、参数说明以及返回值; (2)掌握实参与形参的对应关系,以及参数之间的“值传递”的方式; (3)掌握函数的嵌套调用及递归调用的用的设计方法; (4)在编程过程中加深理解函数调用的程序设计思想。 2实验内容 (1)编写一个函数primeNum(int x),功能是判别一个数是否为素数。 要求: ①在主函数中输入一个整数x(直接赋值或从键盘输入); ②函数类型为空值(void),调用primeNum( )函数后,在函数中输出x是 否为素数的信息,输出格式为“x is a prime number”或”x is not a prime number”; ③分别输入一下数据:0,1,2,5,9,13,59,121,并运行程序,检查 结果是否正确。 (2)编写函数 mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数返回值为0。 要求: ①在主函数中从键盘输入一对整型数据a和b; ②调用函数后,根据返回值对a和b的关系进行说明。例如,在主函数中输 入:10,5,则输出“10 is a multiple of 5”; ③分别输入下面几组数据进行函数的正确性测试:1与5,5与5,6与2,6 与4,20与4,37与9。 3算法描述流程图 (1)primeNum(int x)(判别一个数是否是素数)函数流程图 ①主函数流程图: ②判断素数函数流程图: (2)mulNum(int a,int b)(确定a和b是否是整数倍的关系)函数流程图 ①主函数流程图: C语言程序设计实验报告姓名: 班级: 学号: 实验内容: 编写一个程序,从键盘输入任意一个五位数,把这个数值分解为单个数字,然后打印出每一个数字(每个数字之间用三个空格分开)。例如用户输入了42339,屏幕输出结果为: 4 2 3 3 9 【提示】巧妙使用/ 和% 两种运算符。 源代码: #include 运行结果: 实验内容: 已知三角形三边a,b,c,计算三角形的面积。 注:三角形面积公式为area=[s(s-a)(s-b)(s-c)]的1/2次幂 S=1/2*(a+b+c) 源代码: #include scanf("%lf%lf%lf",&a,&b,&c); s=(a+b+c)/2; if(a>0 && b>0 && c>0) { area=sqrt(s*(s-a)*(s-b)*(s-c)); printf("area=%lf\n",area); } else printf("输入错误,三角形边长不能为负数或0\n"); } 运行结果: 实验内容: 输入圆的半径,计算出圆的周长和面积源代码: #include C语言程序设计实验报告 实验名称计算出1000以内10个素数之和 实验目的 1、熟练掌握if、if…else、if…else if语句和witch 语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。 2、熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。 3、掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。 实验内容 计算并输出1000以内的10个素数以及它们的和。 要求: 在程序内部加必要的注释。 由于偶数不是素数,可以不考虑对偶数的处理。 虽然在1000以内的素数超过10个,但是要对1000以内不够10个素数的情况进行处理。 输出形式为:素数1+素数2+素数3+…+素数10=总和值。 算法描述流程图 Main函数: 判断素数: 源程序 #include #include int sushu(int n)/* 判断素数的函数 */ { int t,i; t=sqrt(n); for(i=2;i1;i-=2)/* x为奇数时,做函数计算 */ { n=sushu(i); /* 做判断素数的函数调用 */ ( 励志天下 ) if(n!=0)/* 对素数的处理 */ { a[j]=n;/* 把素数由大至小存入数组a[ ]中 */ j++; if(j<11) m+=n; /* 统计前10个素数之和 */ } } if(j<10)/* 当素数个数小于10个时,结果输出 */ C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include (2) #include 凯里学院 C 语言程序设计 实验报告 ××××× 专业×× 年级×× 班,学号×××××× 姓名××成绩 合作者 实验日期 年 月 日 指导教师 评阅日期 年 月 日 实验二 数据类型、运算符和表达式 一、实验目的: (1)掌握C 语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。 (2)学会使用C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。 (3)掌握C 语言的输入和输出函数的使用 (4)进一步熟悉C 程序的编辑、编译、连接和运行的过程,学会使用step by step 功能。 (5)认真阅读教材数据类型,算术运算符和表达式,赋值运算符和表达式部分内容。 二、实验内容: (1)输人并运行下面的程序 #include c语言程序设计实验报告模板 篇一:C语言程序设计实验报告 一、实验目的: 1、掌握C语言的数据类型和变量的声明。 2、掌握不同类型数据之间赋值的规律。 3、掌握C语言的运算符和表达式的使用。 4、熟悉C程序的编辑、编译、连接和运行的过程。 二、实验内容: ①输人程序:#includevoid main { int a, b; float d,e; char c1,c2; double f, g; long m, n; unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf("a=%d,b=%d c1=%c,c2=%c d=%6.2f,e=%6.2f ",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ",f,g,m,n,p,q); } ②运行此程序并分析结果(2)按习题4. 8要求编写程序题目为: 设圆半径r=l. 5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输人数据,输出计算结果口输出时要有文字说明,取小数点后两位数字。 程序: 三、实验步骤: ①输人程序: #include void main { int a, b; float d,e; char c1,c2; double f, g; long m, n; unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf("a=%d,b=%d c1=%c,c2=%c d=%6.2f,e=%6.2f ",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ",f,g,m,n,p,q); } ②运行此程序并分析结果。 预计结果: a=61,b=62 c1=a,c2=b d=``3.56,e=`-6.87 f=````3157.890121,g=```````0.123456 m=50000,n=-60000 p=32768,q=40000(`代表空格) 结果: g的输出看来是四舍五入了。 ③在此基础上,将程序第9~14行改为: a=61;b=62; c1=a;c2=b; f=3157.890121;g=0.123456789; d=f;e=g; p=a=m=50000;q=b=n=-60000; 运行程序,分析结果。 p=a=m=50000;q=b=n=-60000;这两条语句将p、a、m的值和q、b、 《程序设计基础》实验报告 姓名郭晟班级17级计算机科学与技术 1班 学号1706011105 实验名称实验1、熟悉实验环境 实验时间2017年10月26日成绩91 实验目的: 1.熟悉C语言运行环境,了解和使用Visual C++ 6.0集成开发环境; 2.熟悉Visual C++ 6.0环境的功能键和常用的功能菜单命令; 3.熟悉C语言程序的书写格式和C语言程序的结构; 4.熟悉C语言的上机步骤,以及编辑、编译和运行一个C程序的方法; 5.熟悉Visual C++ 6.0环境下的程序调试方法。 实验环境: 1.所用操作系统Windows10 2.所用软件Visual c++6.0 实验内容: 1、有以下程序: 完成程序,要求: 依据题目要求,分析已给出的语句,填写空白。但是不要增行或删行,改动程序 的结构。 2、 1. 编写一个程序,从键盘输入某电视机的价格,再输出该价格打7折后的价格。分析:必须设计一个实型变量接受从键盘输入的值,输入、输出应该有提示。2.输入一个三位数,然后进行个位和百位的置换,如 234 ,转换成432 3.编程求出某学生期末三门课程的总分及平均分。结果保留小数点后一位。 4.编写一个程序,其功能为:从键盘上输入一个浮点数,然后分别输出该数的整数部分和小数部分。 分析:若输入的浮点数存入fd变量,则可用强制类型转换运算符,将输入的该数 的整数部分取出:zhs=(int)fd; 5. 编程序计算298秒是几分几秒。 提示:设 int x=298; 再定义两个变量存放分(m)、秒(s)值; 则:m=x/60;s=x%60; 请编一个程序,上机调试并运行。 实验过程及结果记录: 1. #include"stdafx.h" #define K 0.7 int main() 《C语言程序设计》实验报告 专业:班级:学号:学生姓名:实验日期:成绩:指导老师: 实验单元一程序基本结构设计 一、实验题目 实验一熟悉VC++环境 二、实验目的 1. 熟悉C程序编辑环境,掌握主要菜单项的作用。 2. 熟悉编写一个C程序的上机过程(编辑、编译、链接和运行)。 3. 熟悉C程序的基本输入输出语句 三、实验内容 1. 书本第一章的例一程序。 2. 由键盘输入两个整数,求得它们的和并输出至屏幕。 四、实验环境 1.硬件环境:当前所有电脑硬件环境均支持。 2.软件环境:Visual C++ 6.0 五、实验代码及结果(程序运行结果请以截屏图给出) 1.源程序代码: #include "stdio.h" int main() {int a,b,sum; a=2; b=3; sum=a+b; printf("007zhang\nsum=%d\n",sum); return 0; } 运行结果为: 2.源程序代码: 运行结果为: 六、实验心得(请对每个实验题目编程及调试运行中遇到的问题及解决方案进行简单总结) 《C语言程序设计》实验报告 专业:班级:学号:学生姓名: 实验日期:成绩:指导老师: 实验单元一程序基本结构设计 一、实验题目 实验二顺序结构程序设计 二、实验目的 (1)掌握C语言数据类型以及变量的声明。 (2)掌握C语言的赋值运算符、赋值表达式、赋值语句。 (3)掌握C语言的整型和字符型的混合运算。 (4)掌握C语言的输入、输出函数的使用格式。 三、实验内容 1.有人用温度计测量出华氏温度,现输入华氏温度f,请编写程序把它转换为摄氏温度c。 已知华氏温度和摄氏温度有如下关系:c=5/9(f-32)。 2.输入长方形的长和宽,编程求该长方形的周长和面积。(要求周长和面积保留两位小数) 3.将字符串“China”译成密码,译码规则是:用字母表顺序中原来字母后面的第5个字 母替代原来的字母。请编写程序实现译码并输出。 四、实验环境 1.硬件环境:当前所有电脑硬件环境均支持。 2.软件环境:Visual C++ 6.0 五、实验代码及结果(程序运行结果请以截屏图给出) 1.源程序代码: 运行结果为: 2.源程序代码: 运行结果为: 3.源程序代码: 运行结果为: 六、实验心得(请对每个实验题目编程及调试运行中遇到的问题及解决方案进行简单总结)C语言程序设计实验报告参考答案
C语言程序设计实验报告(实验大纲+过程)
C语言程序设计实验与习题答案
C语言程序设计实验报告(数组)
2010C语言实验报告参考答案
C语言程序设计实验实验指导书及答案
c语言实验报告1
C语言程序设计实验报告(实验1-12)
c语言上机实验报告 (2)
C语言程序设计实验-答案
C程序设计上机实验报告((完整版))
C语言程序设计实验报告(函数)
大一C语言上机实验报告
C语言程序设计实验报告.doc
C语言实验报告参考答案(原)汇总
C语言程序设计实验报告——实验2 数据类型、运算符和表达式
c语言程序设计实验报告模板
C语言实验报告
C语言实验报告合集