C语言程序实验七 函数

合集下载

大学生C语言程序设计(第四版 谭洪强)实验7 答案

大学生C语言程序设计(第四版 谭洪强)实验7 答案

实验七 参考答案(参考答案)(1) (sy7-1.c )请编写函数fun ,它的功能是:计算并输出n (包括n )以内能被5 或9 整除的所有自然数的倒数之和。

例如,若主函数从键盘给n 输入20后,则输出为s=0.583333。

注意:n 的值要求不大于100。

算法分析:使用for 循环i ,遍历n 包含n 以内的所有整数,逐一判断每个i ,是否满足条件(能被5 或9 整除),如果满足,则把它的倒数累加到累加器里。

注意:i 的倒数要表示成:1.0/i;参考子函数如下:double fun(int n){double sum=0;int i;for(i=5;i<=n;i++)if(i%5==0||i%9==0)sum=sum+1.0/i;return sum;}(2) (sy7-2.c ) 请编写函数fun ,其功能是:根据以下公式计算s ,并计算结果作为函数值返回,n 通过形参传入。

n s ⋯++++⋯++++++=321132112111例如:若n 的值为11时,函数的值为1.83333算法分析:等式右边从第二项(i=2)开始,其分母等于前一项的分母加上i ;一共有n 项;求出每项的分母,然后把每项进行累加。

参考子函数如下:float fun(int n){float sum=1; //sum 中已经累加了第一项的值int i,m=1; //m 表示每项的分母;for(i=2;i<=n;i++){ m=m+i;sum=sum+1.0/m;}return sum;}(3) (sy7-3.c)请编写函数fun,其功能是:将两个两位数的正整数a、b 合并形成一个整数放在c 中。

合并的方式是:将 a 数的十位和个位依次放在c 数的十位和千位上,b 数的十位和个位数依次放在c 数的个位和百位上。

例如,当a=45,b=12,调用该函数后,c=5241。

算法分析:对一个两位数n,它的各位可以通过n%10求的,它的十位数可以通过n/10求的;所以分别用上述方法求的a和b的个位和十位,同时按照要求累加到c里。

C语言程序设计实验实验指导书及答案

C语言程序设计实验实验指导书及答案

常熟理工学院电气与自动化工程学院《C语言程序设计》实验指导书实验一熟悉C程序运行环境班级学号姓名成绩一、实验目的1. 熟悉C语言Visual C++6.0调试环境。

2. 掌握C程序的编辑、调试及运行。

二、实验内容项目1. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){printf(“Good morning!\n”);printf(“Hello,world!\n”);return 0;}运行结果(注意,按照屏幕输出格式写):项目2. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){int a , b , sum; /*定义变量*/a=23; b=56; /*为变量赋值*/sum=a+b; /*计算两个变量的和*/printf(“sum is %d\n”,sum); /*输出计算结果*/return 0;}运行结果:2项目3. 调试并运行下面程序,并写出运行结果:#include <stdio.h>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;elsez=y;return(z); /*将z的值返回*/}运行结果:三、提高部分1.试想,如果求10个数中的最大者,则程序该如何编写。

程序代码运行结果:实验二数据及其运算班级学号姓名成绩一、实验目的1. 掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法。

C语言在线实验第5次(第七章函数)-题目与答案

C语言在线实验第5次(第七章函数)-题目与答案

第五次实验题目-第七章函数教学目标31.一元二次方程的系数:a、b、c由主函数输入,编写函数求方程的根。

#include <stdio.h>#include <math.h>void root(double a, double b, double c){ double delta,x1,x2,m,n;if (fabs(a) <= 1e-6){if (fabs(b) <= 1e-6)puts("Not an equation");elseprintf("x=%.2lf",-c/b);return;}else{delta=b*b - 4*a*c;m = -b / (2*a);n = sqrt(fabs(delta)) / (2*a);x1 = m + n;x2 = m - n;if (fabs(delta) <= 1e-6)printf("x1=%.2lf, x2=%.2lf", x1, x1);else if (delta < 0)printf("x1=%.2lf+%.2lfi, x2=%.2lf-%.2lfi",m,n,m,n);elseprintf("x1=%.2lf, x2=%.2lf", x1, x2);}}int main( ){ double a,b,c;scanf("%lf%lf%lf",&a,&b,&c);root(a,b,c);return 0;}教学目标32.输入一串字符,统计其中英文字母的个数,编写统计英文字母个数的函数。

#include<stdio.h>int numberOfLetter(char str[]) {int i=0;int num = 0;//统计字母个数while (str[i]!=’\0’) {if ((str[i]>='A'&& str[i]<='Z')||( str[i]>='a'&& str[i]<='z')) num++;i++;}return num;}int main( ) {char str[100];int letterNum;printf("Enter a string: ");gets(str);letterNum = numberOfLetter(str);printf("Number of letters is %d.\n", letterNum);return 0;}教学目标33. 求100以内所有素数的和。

C语言程序设计实验课程简介

C语言程序设计实验课程简介

四川师范大学计算机科学学院《C语言程序设计》实验手册2010年2月年级: 2009级专业:计算机科学与技术班级:一班姓名:谢丹学号: 2009110156 指导教师:廖雪花《C语言程序设计》实验课程简介课程名称:C语言程序设计实验课程性质:专业必修课课程属性:专业必修课学时学分:学时32 学分1开课实验室:软件实验室面向专业:网络工程、软件工程、计算机科学与技术一、课程的任务和基本要求C语言程序设计实验是面向计算机相关专业学生开设的《C语言程序设计》实验课,是配合《C 语言程序设计》课程而开设的实验性教育环节。

本课程的主要任务是让学生充分掌握C语言程序设计的基本概念、各种数据类型的使用技巧、模块化程序设计的方法等。

C语言程序设计实验对课程中所涉及的知识进行验证,同时也是学生很好地学习课程的辅助手段。

通过C语言上机实验的教学活动,使学生真正全面掌握C语言的基础知识,培养和提高学生的程序开发能力。

二、实验项目【实验一】最简单的C程序---顺序程序设计【实验二】逻辑运算和判断选取控制【实验三】循环结构程序设计(一)【实验四】循环结构程序设计(二)【实验五】函数【实验六】数组(一)【实验七】数组(二)【实验八】指针【实验九】结构体、共用体和文件【实验十】C程序综合性实验三、有关说明1、与其它课程和教学环节的联系:先修课程:计算机文化后续课程:面向对象程序设计、Java程序设计、数据结构、软件工程2、教材和主要参考书目:(1)教材:《C程序设计习题解答与上机指导》,谭浩强吴伟民著,北京:清华大学出版社,2003年。

(2)主要参考书目:《C语言程序设计》谭浩强主编,清华大学出版社,2003年。

三、实验内容实验一最简单的C程序---顺序程序设计(验证性实验 2学时)(一)、实验目的1.熟悉win-tc程序运行环境2.掌握运行一个C程序的步骤,理解并学会C程序的编辑、编译、链接方法3.掌握C语言中使用最多的一种语句——赋值语句4.掌握数据的输入输出方法,能正确使用各种格式控制符(二)、实验内容1.写出下列程序的运行结果(1)#include <stdio.h>void main(){printf(“*****************\n”);printf(“This is a c program. \n”);printf(“****************\n”);}运行结果及分析:结果:****************** 分析:在C语言中,\n表示换行,因此运行结果为三行。

C语言程序设计实验手册

C语言程序设计实验手册

实验手册使用及要求实验操作是教学过程中理论联系实际的重要环节,而实验报告的撰写又是知识系统化的吸收和升华过程,因此,实验报告应该表达完整性、标准性、正确性、有效性。

现将实验报告撰写的有关内容说明如下:1、实验前按实验要求手写程序或程序填空,并走查代码,有疑问处标记,上机时在C语言集成开发环境下输入并调试手写程序,分析运行结果。

2、实验完毕后填写通过后的源程序和对实验的总结。

3、通过后的源程序可以手写也可以打印粘贴。

实验工程一览表实验一熟悉C语言编程环境实验目的:1.熟悉C语言编程环境〔VC++、Cfree、Turboc等〕2.了解C程序的根本框架3.理解程序调试的思想,能找出并改正C程序中的错误实验内容:1.1 建立自己的文件夹:在磁盘上建立一个文件夹,用于存放自己的C程序1.2 编程例如在屏幕上显示一个短句“Programming in C is fun!〞〔教师例如,学生模仿并创新,如输出汉字、特除字符等。

学会使用编程环境VC++,启动、编辑、编译、运行、保存、关闭、翻开〕1.3 编程在屏幕上显示如下网格。

+---+---+| | || | |+---+---+调试例如改正以下程序中的错误,在屏幕上显示“Welcome to You !〞。

〔掌握找错、改错的方法〕源程序:# include <stdio.h>int mian(void){printf(Welcome to You! \n")getchar();return 0;}注:需要修改的语句直接在程序上标注并修改实验总结:实验二用C语言编写简单程序实验目的:1.掌握算术表达式和赋值表达式的使用2.掌握根本输出函数的使用3.能够自己编程实现简单的数据处理4. 熟练掌握简单if语句使用5. 熟练掌握for语句的使用6. 掌握简单C程序的查错方法、单步调试实验内容:2.1 调试以下程序,求华氏温度对应的摄氏温度。

计算公式为:C=5*(f-32)/9#include <stdoi.h>int main(void){int celsius; fahr;scanf("%d ",fahr);celsius = 5 * (fahr - 32) / 9;printf("fahr = d, celsius = %d\n", fahr, celsius);return 0;}注:需要修改的语句直接在程序上标注并修改2.2编写程序计算定期存款本利之和:设银行定期存款的年利率rate为2.25%,并存款期为n年,存款本金为capital元,试编程计算n年后的本利之和deposit。

《C语言程序设计》实验报告(实验1-11) 2013.3

《C语言程序设计》实验报告(实验1-11) 2013.3

《C语言程序设计》实验报告2012~2013学年第二学期班级姓名学号指导教师实验一实验项目名称:C程序的运行环境和运行C程序的方法所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序;2.通过运行简单的C程序,初步了解C源程序的特点。

二、预习内容:教材《C语言程序设计教程》第1章。

三、实验内容:1. 在Visual C++ 6.0环境下输入并运行下面的程序:#include <stdio.h>int main( ){printf("This is a C program.\n");return 0;}2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。

#include <stdio.h>int main( ){int a,b,suma=3;b=4;sun=a+b;print(“%d+%d=%d\n”,a,b,sum);return 0;}四、实验结果:1. 运行结果(或截图):2. (1) 改正后的源程序:(2) 运行结果(或截图):五、思考题:1. 一个C程序上机的步骤有哪些?答:2. 组成C程序的基本单位是函数,一个函数包括哪几个部分?答:成绩指导教师签名实验二实验项目名称:数据类型、运算符和表达式所使用的工具软件及环境:Visual C++ 6.0一、实验目的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使用方法;3. 掌握基本算术运算符及其表达式的使用方法;4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。

二、预习内容:教材《C语言程序设计教程》第2章。

三、实验内容:1. 在Visual C++ 6.0环境下输入下面的程序,编译、连接、调试该程序。

C语言实验程序总结 实验七 指针

C语言实验程序总结 实验七 指针

C语言实验程序总结实验七指针c语言实验程序、总结实验七指针一、实验目的实验七指针1.理解指针的概念,学习定义和使用指针变量。

2掌握指针、变量和数组的关系和用法。

3.学习使用指向函数的指针变量。

二实验内容1编写函数fun(float*Sn,INTN),其函数是根据以下公式计算s,计算结果通过形式参数Sn返回;N通过参数传入,N的值大于或等于0。

在计算机上运行并记录输入和输出(主要功能已给出)。

s?1?1111????3572n?1fun(float*sn,intn){定义变量:和s,一般术语W,符号F,循环控制变量I;/*其中s和F将被初始化*/循环累加和s{改变符号;/*由负变正或由正变负*/找出一般术语W;累加:S+=w;}形参指针变量sn赋值;/*通过形参sn传回累加和s*/}main(){浮动;intn;printf(\n=\);scanf(\%d\,&n);fun(&s,n);printf(\s=%f\\n\,s);}完整程序如下:#包括voidfun(float*sn,intn){floats=0.0,w,f=-1.0;inti=0;对于(i=0;i<=n;i++);{f=(-1)*f;w=f/(2*i+1);s+=w;}*sn=s;}main(){浮动;intn;printf(\fun(&s,n);printf(\}输出结果如下图:2.如果你想让指针变量pT1指向a和B中较大的一个,而pT2指向较小的一个,下面的程序能达到这个目的吗?交换(int*p1,int*p2){int*p;p=p1;p1=p2;p2=p}main() {inta,b;int*pt1,*pt2;scanf(\%d,%d\,&a,&b);pt1=&a;pt2=&b;if(aprintf(\%d,%d\\n\,*pt1,*pt2);]上机调试此程序。

如果不能实现题目要求,指出原因并修改之。

c语言程序设计实验总结

c语言程序设计实验总结

c语言程序设计实验总结C语言程序设计实验总结。

在学习C语言程序设计的过程中,我们进行了一系列的实验,通过这些实验,我对C语言的基本语法和程序设计有了更深入的理解和掌握。

在这篇文档中,我将对这些实验进行总结,分享我的学习心得体会。

首先,在实验一中,我们学习了C语言的基本输入输出函数,包括printf和scanf函数。

通过实际操作,我掌握了如何使用这些函数来进行简单的数据输入和输出,以及格式化输出的方法。

在实验二中,我们学习了C语言的基本数据类型和运算符,包括整型、浮点型、字符型等数据类型的定义和使用,以及算术运算符、关系运算符和逻辑运算符的基本运用。

通过这些实验,我对C语言的数据类型和运算符有了更深入的了解。

在实验三和实验四中,我们学习了C语言的控制语句,包括顺序结构、选择结构和循环结构。

通过实验三和实验四的实践操作,我掌握了如何使用if语句、switch语句和while、do-while、for循环语句来实现程序的控制流程,以及如何编写具有一定逻辑结构的程序。

在实验五和实验六中,我们学习了C语言的函数和数组。

通过这些实验,我掌握了如何定义和调用函数,以及如何使用数组来存储和处理数据。

同时,我还学会了如何在函数间传递参数和返回值,以及如何使用指针来操作数组元素,这些内容对我来说是比较新颖和有挑战性的。

在实验七中,我们学习了C语言的字符串处理函数和文件操作。

通过这些实验,我学会了如何使用字符串处理函数来进行字符串的操作和处理,以及如何使用文件操作函数来进行文件的读写操作。

这些内容对我来说是比较实用和有用的,可以帮助我更好地进行程序设计和开发。

通过这些实验,我对C语言程序设计有了更深入的了解和掌握,我相信这些知识和技能会对我的未来学习和工作有很大的帮助。

在以后的学习和实践中,我会继续努力,不断提升自己的编程能力,为将来的发展打下坚实的基础。

总的来说,通过这些实验,我对C语言程序设计有了更深入的理解和掌握,我相信这些知识和技能会对我的未来学习和工作有很大的帮助。

C语言实验七函数实验报告

C语言实验七函数实验报告

C语言实验七函数实验报告一、实验目的本次 C 语言实验七函数实验的目的在于深入理解和掌握 C 语言中函数的定义、声明、调用以及参数传递等重要概念和操作。

通过实际编写和调试函数相关的程序,提高编程能力和问题解决能力,培养良好的编程习惯和代码结构组织能力。

二、实验环境本次实验使用的编程环境为 Visual Studio 2019 集成开发环境,操作系统为 Windows 10 专业版。

三、实验内容与步骤(一)函数的定义和声明首先,学习了函数的定义格式和声明方法。

函数的定义包括函数头和函数体两部分,函数头指定了函数的返回值类型、函数名和参数列表,函数体则包含了函数的具体实现逻辑。

例如,定义一个计算两个整数之和的函数:```cint add(int a, int b) {return a + b;}```在使用函数之前,需要在程序的适当位置进行函数声明,以告知编译器函数的存在及其参数和返回值类型。

```cint add(int, int);```(二)函数的调用掌握了函数的调用方法,通过传递实际参数来执行函数,并获取返回值。

```cint num1 = 5, num2 = 10;int result = add(num1, num2);printf("两数之和为:%d\n", result);```(三)参数传递学习了值传递和地址传递两种参数传递方式。

值传递是将实参的值复制给形参,在函数内部对形参的修改不会影响实参的值;地址传递则是将实参的地址传递给形参,通过指针在函数内部可以修改实参的值。

```cvoid swap(int a, int b) {int temp = a;a = b;b = temp;}int num3 = 20, num4 = 30;printf("交换前:num3 =%d, num4 =%d\n", num3, num4);swap(&num3, &num4);printf("交换后:num3 =%d, num4 =%d\n", num3, num4);```(四)函数的嵌套调用和递归调用了解了函数的嵌套调用和递归调用的概念和应用。

C语言程序设计实验报告(函数)

C语言程序设计实验报告(函数)

C语言程序设计实验报告(实验名称:函数)1实验目的(1)掌握函数的定义方法、调用方法、参数说明以及返回值;(2)掌握实参与形参的对应关系,以及参数之间的“值传递”的方式;(3)掌握函数的嵌套调用及递归调用的用的设计方法;(4)在编程过程中加深理解函数调用的程序设计思想。

2实验内容(1)编写一个函数primeNum(int x),功能是判别一个数是否为素数。

要求:①在主函数中输入一个整数x(直接赋值或从键盘输入);②函数类型为空值(void),调用primeNum( )函数后,在函数中输出x是否为素数的信息,输出格式为“x is a prime number”或”x is not aprime 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是否是整数倍的关系)函数流程图①主函数流程图:②判断倍数流程图:4源程序(1)判断某个数是否是素数#include <stdio.h>int primNum(int x) /*编写函数判断某个数是否是素数*/ {int i;if (x==0||x==1) /*当x等于1或等于0时判断是否为素数*/return 0;for (i=2;i<x;i++) /* 当x大于2时判断不为素数的数*/{if (x%i==0)return 0;}if (x%i) /* 当x等于2或不满足上述条件时时判断出该数是素数*/ return 1;}void main(){int n ;printf("Please input an integer:"); /* 提示从键盘输入一个数x */scanf("%d",&n);if (primNum(n)==1) /* 调用定义的函数*/ printf("%d is a prime number\n",n); /* 由函数得出结论判断是否为素数*/ elseprintf("%d is not a prime number\n",n);}(2)个数是否是整数倍关系#include <stdio.h>int mulNum(int a,int b)/* 定义函数确定两个数是否有整数倍关系*/{if (a%b==0) /* 判断出a是b的整数*/return 1;else /* 判断出a不是b的整数*/return 0;}void main (){int m,n;printf ("please input tow integers:\n"); /*提示从键盘输入两个数*/scanf ("%d%d",&m,&n); /*从键盘输入两个数的值*/if(mulNum(m,n)==1) /*调用定义的函数并判断输出相应的结果*/printf("%d is a multiple of %d\n",m,n);elseprintf("%d is not a multiple of %d\n",m,n);}5测试数据(1)实验(1)测试数据为0,1,2,5,9,13,59,121 运行结果当测试数据0时当测试数据1时当测试数据2时当测试数据5时当测试数据9时当测试数据13时当测试数据59时当测试数据121时(2)实验2测试的数据1与5,5与5,6与2,6与4,20与4,37与9。

头歌云课C语言实验七:C语言-数组

头歌云课C语言实验七:C语言-数组

头歌云课(C语言)动动你可爱的小手为小编点点关注吧实验七:C语言-数组1选择法排序2二分段交换3计数器4复制字符数组5进制转换6回文判断第1关: 选择法排序本关任务:使用选择法排序编写一个能为数组进行升序排序的程序。

相关知识选择法排序选择法排序,是从n个数中先找出最大或者最小的数放到数组的最前面或最后面,再在剩余的n-1个数中找出最大或者最小的数放到数组的次前面或倒数第2单元,以此类推,直至排序完毕。

下图显示了从n个数中寻找最大值进行升序的排序过程:进行升序排序时,也可以寻找最小值并将其与最前面的数进行交换。

遍历数组通俗的理解,遍历数组就是:把数组中的元素都看一遍。

示例如下:int arr[5] = {1,3,5,7,9};int length = 5;for(int i = 0 ; i<length ; i++){printf(" %d ",arr[i]);}输出:1 3 5 7 9如何交换数组的值交换数组中的两个值,需要借助中间变量。

(优化:请自行思考,如何不使用中间变量交换两个变量的值)示例如下,交换数组的第二个和第三个值:int arr[5] = {1,3,5,7,9};int temp;temp = arr[1];arr[1] = arr[2];arr[2] = temp;数组长度题目要求数组长度不大于n时,可以使用固定数组,示例如下:#define SIZE 100...int arr[SIZE];...但往往会造成空间浪费,为了节省空间我们可以使用malloc创建动态数组,感兴趣的同学可以去了解一下,此处使用固定数组即可。

编程要求根据提示,在右侧编辑器补充void inArray(int arr[],int n)、void selectSort(int arr[],int n)和void outArray(int arr[],int n)的函数定义,这三个函数的输入均是一个长度不大于100的无序数组arr,以及数组的长度n,请在函数selectSort中使用选择法对数组元素进行升序排序,函数inArray用于输入数组的n个元素,函数outArray用于输出数组的n个元素。

C语言程序设计实验七 数组的应用

C语言程序设计实验七   数组的应用
char s[]={‘\t’‘\n’,
‘\n’,
‘/’,
‘*’,
‘\n’,
/* (213 lines deleted)*/
0
};
/* The string is a representation of the body of this program from ‘0’to the end */
printf(“%d”,num[i]);
}
3、操作符&用以求一个变量的地址,这在函数scanf中已经使用过了。现在要你设计一个程序,返回一个3 * 5的二维数组各元素的地址,并由此说明二维数组中各元素是按什么顺序存诸的。
4、1983年,在ACM图林奖颁奖大会上,杰出的计算机科学家,UNIX的鼻祖,C语言的创始人之一,图林大奖得主,Ken Thompson上台的第一句话是:“我是一个程序员,在我的1040表上,我自豪地写上了我的职业。作为一个程序员,我的工作就是写程序,今天我将向大家提供一个我曾经写过的最精练的程序。”这个程序如下:
}
(3)#include <stdio.h>
main()
{int a[2+2*4];
}
通过这一实验,可以说明什么问题?
2、运行下面的C程序,根据运行结果,可以说明什么?
#include <stdio.h>
main( )
{int num[5]={1,2,3,4,5};
int i;
for(i=0;i<=5;i++)
main( )
{ int i;
printf(“char \ts[]={\” };
for (i=0;s[i];i++)

C语言程序设计实验教程

C语言程序设计实验教程

C语言程序设计实验教程C语言程序设计实验教程C语言是一门广泛应用于工程和科学领域的高级程序设计语言。

它的语法简洁,同时具备强大的数据处理能力和庞大的程序库。

对于初学者来说,学习C语言程序设计是一个重要的基础课程。

为了更好地帮助初学者掌握C语言的基本知识和编程技巧,下面我将给出一份C语言程序设计实验教程。

实验目的:通过一系列的C语言程序设计实验,学习C语言的基本语法和常用的编程技巧,培养编程思维和逻辑思维能力。

实验内容:1. 实验一:初识C语言了解C语言的发展历史,安装C语言编译器,编写并运行第一个C语言程序。

2. 实验二:变量和数据类型学习C语言中的变量定义和赋值,了解不同数据类型的用途和特点,掌握常量和变量的使用方法。

3. 实验三:运算符和表达式学习算术运算符、关系运算符和逻辑运算符的使用,了解运算符的优先级和结合性,熟悉各种常见表达式的写法。

4. 实验四:流程控制学习C语言中的选择结构和循环结构,掌握if语句、switch 语句和for循环、while循环的使用方法。

5. 实验五:函数和数组掌握函数的定义和调用,学习数组的定义和初始化,了解字符数组和字符串的处理方法。

6. 实验六:指针和动态内存分配学习指针的概念和使用,了解指针与数组的关系,了解动态内存分配的方法和应用场景。

7. 实验七:文件操作学习文件的打开和关闭,理解文件的读取和写入操作,掌握文件指针的使用方法。

实验要求:在每个实验中,学生需要完成相应的编程练习,并根据实验要求编写实验报告。

实验报告应包括实验目的、实验步骤、实验结果和心得体会。

实验考核:根据学生的实验报告和实际操作情况进行考核,评估学生对C 语言程序设计的掌握程度和运用能力。

通过这些实验,学生将逐步掌握C语言的基本语法和常用编程技巧,提高自己的编程能力和解决问题的能力。

同时,实验过程中的思考和实践也能够培养学生的逻辑思维和创新意识。

希望通过这份C语言程序设计实验教程,能够帮助初学者更好地学习和掌握C语言,为今后的学习和工作打下坚实基础。

c程序设计实验教案

c程序设计实验教案

C程序设计实验教案一、实验目的1. 掌握C程序的基本结构。

2. 学会使用C语言编写简单的输入输出程序。

3. 熟悉集成开发环境(如Visual Studio、Code::Blocks等)的使用。

二、实验内容1. C程序的基本结构(1)编写一个简单的C程序,输出“Hello, World!”。

(2)理解主函数、变量声明、函数体等基本概念。

2. 输入输出语句(1)使用scanf()函数输入用户输入的数字,并输出该数字的平方。

(2)使用printf()函数输出学生的姓名、成绩和等级。

三、实验步骤1. 打开集成开发环境,创建一个新的C项目。

2. 在主函数中编写输出“Hello, World!”的代码。

3. 编写输入用户输入的数字,并输出该数字的平方的代码。

4. 编写输出学生姓名、成绩和等级的代码。

5. 保存并运行程序,观察输出结果。

四、实验要求1. 每位同学独立完成实验,不抄袭他人代码。

2. 实验过程中,遇到问题要积极思考,可以请教同学或老师。

3. 实验完成后,对照实验目的,检查自己是否达到了预期目标。

五、实验评价1. 代码是否规范、可读性强。

2. 是否能熟练使用C语言的基本语法。

3. 是否能正确使用输入输出语句。

4. 是否能独立完成实验,解决问题。

六、实验六:控制流程(条件判断与循环)1. 实验目的理解C语言中的条件判断语句(if-else)。

掌握C语言中的循环结构(while、do-while)。

2. 实验内容编写程序实现成绩判断,根据分数输出等级(优秀、良好、及格、不及格)。

编写程序计算从1加到指定数字的和。

3. 实验步骤创建新项目,编写判断成绩的程序。

编写一个循环,用于输入分数,并判断等级。

编写另一个循环,用于计算1到指定数字的和。

运行程序,验证结果。

4. 实验要求代码应包含清晰的逻辑判断和循环控制。

要求程序能够处理用户输入的无效数据。

5. 实验评价判断语句和循环结构的正确使用。

程序对于不同输入的适应性和鲁棒性。

《程序设计基础》课程标准

《程序设计基础》课程标准

《程序设计基础》课程标准课程编号:030501ZB适用专业:计算机、电子、电气课程类型:专业基础课课程性质:必修课课程学时:60 课程学分:4一、课程定位本课程是计算机、嵌入式、电子以及电气专业的一门专业基础课程,也是其它相关专业研究计算机控制以及嵌入式、物联网技术等的一门基础和工具课程。

本课程的主要任务是使学生掌握模块化、结构化编程的基本思想,学会使用C语言编制简单的应用程序,解决一般性应用问题,并有一定的上机操作及调试程序能力。

本课程的先导课程为计算机信息基础,后续课程为android、软件工程、单片机、嵌入式开发技术。

通过掌握C语言的各种语法、数组、函数、位运算等知识,为后续课程奠定语言基础。

二、课程目标1. 能力目标(1)能用C语言进行结构化的程序设计;(2)能用C语言解决一维数据的存储;(3)能用C语言解决库函数及自定义函数的调用;(4)能用C语言解决二进制数据的位运算。

2. 知识目标(1)理解模块化、结构化程序设计思想;(2)掌握C语言的数据类型、语句格式、程序设计结构等基本内容;(3)掌握C语言的数组、函数、位运算等基本内容;(4)熟悉C语言的环境和常规调试方法。

3.素质目标(1)初步具备复用性设计、模块化思维能力;(2)具有热爱科学,团队意识、创新意识和创新精神;(3)具有规范化的代码编写和文档书写习惯;(4)加强职业道德意识;三、课程内容与学时分配四、教学设计1.整体教学设计以结构化程序设计为框架,首先,以顺序结构、选择结构、循环结构为核心,突出程序设计的基本理念及技能,其次,采用项目牵引的方法,让学生理解和学习数组、函数和位运算等知识,最终的目的是使学生能应用C语言程序解决实际问题。

教学过程中,通过分组讨论、知识问答、单元测试等教学活动,课外,通过第二课堂、兴趣小组、技能培训等多种途径,并且充分开发学习资源,包括PPT、动画、在线课程等,给学生提供丰富的学习机会。

教学方法主要采用知识讲授法、引导启发法、案例教学等方法,每章配有实验课,让学生消化吸收理论知识,进一步提高编程水平。

【优质文档】C语言程设计实验与案例周信东主编实验七--函数

【优质文档】C语言程设计实验与案例周信东主编实验七--函数
char *p = src; int i,j; for(i=0;src[i];i++) {
if(src[i]==' ') {
for(j = i; src[j]; j++) src[j] = src[j+1];
i--; } } return p; }
int main () {
char s[128] = {0};
运行结果截图:
请在此粘贴本程序运行成功时的截图
:\n");
精品资料
欢迎下载
【增强题】: Eh7-1 请在下面分别完成本题的源程序代码及运行结果的画面: 源程序代码:
请在此粘贴完成本题的程序源代码。
#include <stdio.h> #include <string.h>
char *Del(char *src) {
Ex7-2 请在下面分别插入改正错误后的源程序代码及运行成功时的画面: 源程序代码:
请在此粘贴修改后正确的程序代码。
#include <stdio.h> #include <stdlib.h>
float px(float x, int n) {
精品资料
欢迎下载
if(n>0) return x*px(x,n-1); else
精品资料
欢迎下载
实验 5 函数
学号:
姓名:
实验日期:
一、 实验目的和要求
(1)掌握 C 语言函数的定义方法、函数的声明及函数的调用方法。 (2)掌握函数实参和形参的对应关系以及“值传递”的方式。 (3)掌握函数嵌套调用和递归调用的方法。 (4)掌握全局变量和局部变量、动态变量和静态变量的定义、说明和使用方法。

c语言实验报告

c语言实验报告

实验报告课程名称C语言程序设计教程实验项目名称实验七数组班级与班级代码信息管理与信息系统1班112511011 实验室名称(或课室) SS-304专业信息管理与信息系统任课教师张军学号:11251101113姓名:冯启珊实验日期:2011 年12 月16 日广东商学院教务处制姓名冯启珊实验报告成绩评语:指导教师(签名)年月日说明:指导教师评分后,实验报告交院(系)办公室保存。

正文实验报告要求与排版字号:1.实验报告按实验项目填写,每个学生做完实验必须填写2.实验报告可参照如下内容格式写作:实验目的、实验原理、实验设备、结果预测、实验步骤、实验结果、实验分析、结论。

3.实验报告排版打印统一用A4(21 X 29.7cm)格式。

4.标题用小二号黑体加粗,正文用四号宋体。

行距为固定值20磅。

5.页面上边距2.54cm,下边距2.54 cm,左边距3cm,右边距2.2mm;6.实验报告页码从正文页面起计算。

页码字号,选用小四号粗黑体并居中。

一、实验目的通过做关于数组的十一个实验,实现:1、熟练掌握一维数组、二维数组的定义、赋值、输入、输出方法。

2、熟练掌握字符数组和字符串函数的应用。

3、熟练掌握一维数组以及一维数组元素的存储关系。

4、熟练掌握一维数组和二维数组的使用以及在函数中的传递。

5、通过做试验实践掌握和数组有关的算法。

二、实验原理数组是指具有形同类型的数据组成的序列,为有序集合。

通过一维数组、二维数组、字符数组和字符串函数的应用,结合前面所学的循环语句等,可将以前复杂的程序简单化,简单而方便地设计程序完成相应的功能。

三、实验设备C++软件四、实验步骤第一题:输入并运行程序main(){int i,a[5],b[5],c[5]; /*变量说明,数组说明*/a[0]=2,a[1]=6,a[2]=4,a[3]=8,a[4]=9;b[0]=2,b[1]=7,b[2]=9,b[3]=5,b[4]=3;for (i=0;i<=4;i++){c[i]=a[i]*b[i];printf("c[%d]=%d\n",i,c[i]);}}运行结果为:c[0]=4C[1]=42C[2]=36C[3]=40C[4]=27第二题:输入并运行程序main(){int sum,i;int a[]={5,8,4,6,4,3,8,2,4,5,6}; /*数组元素初始化*/sum=0;for(i=0;i<=10;i++)sum+=a[i]; /*求数组元素之和*/printf("sum=%d\n",sum);}Sum=55第三题:程序实现:从键盘输入5个数,输出最大、最小元素的值以及它们的下标。

[练习]C语言实验七、函数程序设计答案

[练习]C语言实验七、函数程序设计答案

实验七 函数及程序结构(二)一、实验目的1.掌握函数的嵌套调用和递归调用2.掌握数组做函数参数的用法3.掌握全局变量和局部变量的用法。

?4.掌握变量的存储类别。

?二、实验内容1.[目的]掌握函数的嵌套调用方法。

[题目内容] 编写程序计算cb a 。

要求设计主函数main()读取a 、b 、c 的值,并调用ratio 函数计算a/(b-c)的值。

如果(b-c)=0那么ratio 就不能计算,因此,ratio 函数调用另一个函数dif ,以测试(b-c)的差是否为零,如果b 不等于c ,dif 返回1,否则返回0。

[输入] a 、b 、c 的值[输出] 计算结果[提示] main 函数调用ratio 函数,ratio 函数调用dif 函数。

三个函数平行定义,嵌套调用。

#include <stdio.h>void main(){float ratio(int x,int y ,int z);int dif(int x,int y);int a,b,c;float d;printf("请输入a,b,c:");scanf("%d%d%d",&a,&b,&c);d=ratio(a,b,c);if(d==0.0) printf("b-c 为零。

");else printf("%d/(%d-%d)=%f\n",a,b,c,d);}float ratio(int x,int y ,int z){if(dif(y ,z)==1) return (float)x/(float)(y-z);else return 0.0;}int dif(int x,int y){if(x==y) return 0;else return 1;}2.[目的]利用标准库提供的随机数功能。

[题目内容]编写程序,帮助小学生练习乘法计算。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验七函数
实验目的与要求:
1、掌握函数的定义方法和调用规则。

2、掌握在C语言程序中主调函数和被调用函数之间进行数据传递的规则。

3、了解函数的返回值及其类型,并正确使用它。

4、理解宏的概念,掌握定义无参宏和带参宏的方法。

了解文件包含的概念,掌握其用法。

实验内容:
实验6-1:1 int prime(int n) 实验6-2:1 x/1000%10 实验6-1:2 (0) 实验6-2:2 0
实验6-1:3 (1) 实验6-2:3 huiwen( x) 实验6-1程序运行结果:
实验6-2程序运行结果:
附实验:6-1的代码:
#include<stdio.h>
int prime(int n); //函数的声明
void main()
{
int n;
printf("请输入一个正整数n:");
scanf("%d",&n);
if(prime(n)) printf("%d是素数\n",n);
else printf("%d是非素数\n",n);
}
int prime(int n)
{
int i;
for(i=2;i<n;i++)
if(n%i==0) return (0);
return (1);
}
附实验6-2的代码:
#include<stdio.h>
int huiwen(int x)
{
int ge,shi,qian,wan;
wan=x/10000;
qian=x/1000%10; //分解出千位上的数
shi=x%100/10;
ge=x%10;
if(ge==wan&&shi==qian) return 1;
return 0; //不满足回文数的条件返回一个值
}
void main()
{
int x;
printf("\n输入一个五位整数:");
scanf("%d ",&x);
if(huiwen( x)) printf("yes!\n"); //调用函数huiwen()来判断是否是回文数 else printf("no\n");
}
2
程序代码:
#include<stdio.h>
int fun(int x)
{
if(x%3==0&&(x%10==4||x/10==4||x==44)) return(1);
return(0);
}
void main()
{
int i;
for(i=10;i<=99;i++)
if(fun(i)) printf("%d ",i);
printf("\n");
}
程序运行结果:
附实验6-4代码:
#include<stdio.h>
int fun(int x)
{
x%3==0;
x%10==4||x/10==4||x==4
}
void main()
{
int i;
for(i=10;i<=99;i++)
if(fun(i)) printf("%d ",i);
printf("\n");
}
3
程序代码:
#include<stdio.h>
#include<stdlib.h>
int fun(int x)
{
if(x==x*x%10||x==x*x%100) return 1;
return 0;
}
void main()
{
int x,y;
printf("请输入一个正整数:");
scanf("%d",&x);
if(x>100||x<0)
{printf("数据错误!\n");exit(0);}
y=fun(x);
if(y) printf("%d是同构数!\n",x);
else printf("%d不是同构数!\n",x);
}
程序运行结果:
#include<stdio.h>
#include<stdlib.h>
int fun(int x)
{
}
void main()
{
int x,y;
printf("请输入一个正整数:");
scanf("%d",&x);
if(x>100||x<0)
{printf("数据错误!\n");exit(0);}
y=fun(x);
if(y) printf("%d是同构数!\n",x);
else printf("%d不是同构数!\n",x); }。

相关文档
最新文档