《C语言程序设计》实验指导书
- 格式:doc
- 大小:87.50 KB
- 文档页数:17
《-C语言程序设计》实验指导书实验一:C语言程序结构与运行机制实验目的:1. 了解C语言基本程序结构和运行机制;2. 掌握C语言程序的编译、运行和调试过程;3. 熟悉常用的编程工具,如编译器和集成开发环境。
实验器材:1. 计算机;2. C语言编译器。
实验内容:1. 实验一介绍C语言是一种广泛应用于系统开发、嵌入式设备和科学计算等领域的高级编程语言。
本实验旨在让学生通过实例了解C语言的基本程序结构和运行机制,并掌握使用C语言进行编程的基本方法。
2. 实验环境搭建(1)选择适合的C语言编译器,如GCC、Visual Studio等,并进行安装;(2)配置编译器的环境变量,以便在命令行中能够直接调用编译器;(3)确保编译器的版本和系统的兼容性,以避免出现不必要的问题。
3. 编写第一个C程序(1)打开任意文本编辑器,新建一个以.c为后缀名的文件,如hello.c;(2)在文件中编写以下代码:```C#include <stdio.h>int main() {printf("Hello, C!\n");return 0;}```(3)保存文件,并使用编译器进行编译。
(4)在命令行中转到保存的文件所在的目录,并执行以下命令:```gcc hello.c -o hello```(5)执行编译后的可执行文件:```./hello```(6)观察程序输出结果是否为"Hello, C!"。
4. 理解程序结构(1)程序的第一行`#include <stdio.h>`是一个预处理指令,用于引入标准输入输出库,使得我们可以使用printf等函数。
(2)`int main()`是C程序的主函数,程序从这里开始执行,花括号内的代码是程序的主体部分。
(3)`printf("Hello, C!\n");`是一个输出语句,将字符串"Hello, C!"输出到屏幕上。
实验1 C语言的编程环境一.实验目的1.初步了解C程序的编译、连接和运行的过程。
2.掌握和理解C程序的结构。
二.实验内容1.使用TC2.运行一个简单的C程序三.实验环境PC微机;DOS操作系统或Windows 操作系统;Turbo C 程序集成环境。
四.实验步骤1.启动Turbo C如果用户计算机系统已经安装了Turbo C编译系统,则在DOS命令状态下键入命令tc。
进入Turbo C集成环境后,首先在屏幕上显示Turbo C主菜单窗口。
在该窗口,有8个菜单条目。
每一个菜单的意义如下:File 处理文件(包括装入、存盘、选择、建立、换名写盘),目录操作(包括列表、改变工作目录),退出系统及调用DOS 。
Edit 建立、编辑源文件。
Run 控制运行程序。
如果程序已经编译连接好,且Debug/Source Debugging以及Option/Compiler/Code generation/OBJ Debug Information开关置为On,则可以用此菜单初始化调试阶段。
Compile 编译并生成目标程序与可执行文件。
Project 允许说明程序中包含哪些文件的管理条目。
Options 可以选择集成环境任选项(如存储模式、编译时的任选项、诊断及连接任选项)及定义宏;也可以记录Include Output及Library文件目录,保存编译任选项和从配置文件加载任选。
Debug 检查、改变变量的值,查找函数,程序运行时查看调用栈。
选择程序编译时是否在执行行代码中插入调试信息。
Break/Watch 增加、删除、编辑监视表达式,及设置、清除、执行至断点。
特别要指出的是,除了Edit项外,每一个菜单又有对应的子菜单。
而选择Edit项目后,只是进入编辑器。
为了从主菜单中选择所需要的功能,可以用以下两种方式之一:(1)按F10键后,可以看到屏幕上部主菜单中有反白显示,此时,利用左、右光标移动键(←与→)选择需要的菜单,然后按回车(Enter)键。
《C语言程序设计实验》指导书以下是为大家整理的《c语言程序设计实验》指导书的相关范文,本文关键词为c语言程序设计实验,指导书,c语言程序设计实验,简明版,中北,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在教育文库中查看更多范文。
《c语言程序设计实验》指导书(简明版)中北大学软件学院20XX年10月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉c编译环境、简单c程序结构及书写方式、以及c程序的编辑、编译、连接、运行、调试的步骤;2、掌握c语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握c语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握c语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和n-s 图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单c程序的结构、书写格式以及上机过程;#includeintmain(){printf(\return0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
c语言程序设计实验指导书C语言程序设计实验指导书一、引言C语言是一种通用的高级编程语言,广泛应用于计算机科学和软件开发领域。
为了帮助学生更好地理解和掌握C语言的编程技巧,我们编写了本实验指导书。
本指导书旨在引导学生完成一系列的C语言实验,从简单的程序设计入门开始,逐步深入学习C语言的各个方面。
二、实验一:Hello World程序1. 实验目的通过编写一个简单的Hello World程序,学习C语言的基本语法和编程环境的搭建。
2. 实验内容编写一个C程序,在屏幕上输出"Hello World"字样。
3. 实验步骤1) 打开C语言编译器,新建一个源文件。
2) 在源文件中编写C程序,使用printf函数输出"Hello World"。
3) 编译并运行程序,观察输出结果。
4. 实验结果在屏幕上显示出"Hello World"字样。
三、实验二:变量和数据类型1. 实验目的了解C语言中的变量和数据类型的概念,学习如何声明和使用变量。
2. 实验内容编写一个C程序,演示各种数据类型的声明和使用。
3. 实验步骤1) 在源文件中声明各种数据类型的变量,如int、float、char等。
2) 对各种变量进行赋值和运算操作。
3) 使用printf函数输出各种变量的值。
4. 实验结果屏幕上显示出各种变量的值。
四、实验三:控制语句1. 实验目的学习C语言中的控制语句,掌握条件语句和循环语句的用法。
2. 实验内容编写一个C程序,演示条件语句和循环语句的使用。
3. 实验步骤1) 使用if语句判断某个条件是否成立,根据条件的结果执行相应的操作。
2) 使用for循环语句实现某个操作的重复执行。
3) 使用while循环语句实现某个操作的反复执行,直到某个条件不再满足。
4. 实验结果根据条件的不同,程序执行相应的操作,循环语句可以重复执行某个操作。
五、实验四:函数和数组1. 实验目的学习C语言中的函数和数组的概念,掌握函数的定义和调用,以及数组的声明和使用。
C语言程序设计实验指导书(新编) C语言程序设计实验指导书(新编)1. 指导书简介本指导书是为了帮助学习C语言程序设计的学生更好地完成实验任务而编写的。
它包含了实验的具体内容、实验目的、实验要求、实验步骤和实验注意事项等内容,旨在引领学生掌握C语言程序设计的基本原理和实际应用。
2. 实验一:C语言程序结构与基本语法2.1 实验目的本实验旨在帮助学生了解C语言程序的基本结构和语法要求,掌握编写简单C程序的方法。
2.2 实验内容在本实验中,学生将学习C程序的基本结构和语法规则,并编写一个简单的C程序。
该程序要求实现从键盘输入两个整数,然后计算它们的和并输出结果。
2.3 实验步骤2.3.1 打开C语言编译器首先,打开C语言编译器,如Dev-C++或Code::Blocks等。
2.3.2 新建一个C文件在编译器中选择新建一个C文件,以便编写程序代码。
2.3.3 编写程序代码按照C语言的语法规则,编写程序代码。
首先,声明所需的变量,然后通过scanf函数从键盘输入两个整数,接着计算它们的和,并利用printf函数输出结果。
2.3.4 编译和运行程序完成程序代码的编写后,点击编译按钮进行编译。
如果没有出现错误,再点击运行按钮运行程序。
2.4 实验要求学生需要独立完成实验,并能够理解和解释编写的C程序代码。
2.5 实验注意事项在实验过程中,注意遵循C语言的语法规则,注意代码的格式和缩进,及时保存程序代码,避免数据输入错误。
3. 实验二:控制语句和函数的应用3.1 实验目的本实验旨在帮助学生掌握C语言中的控制语句和函数的应用,理解条件语句和循环语句的使用方法。
3.2 实验内容在本实验中,学生将学习条件语句和循环语句的基本概念和用法,并编写一个具有条件判断和循环操作的C程序。
3.3 实验步骤3.3.1 分析问题和设计算法首先,分析给定的问题,设计相应的算法。
确定使用的条件语句和循环语句的类型。
3.3.2 编写程序代码按照分析的算法,编写程序代码。
《C语言程序设计》实验指导书实验一 VC++ 6.0集成环境的使用一、实验目的与要求1、掌握在集成环境中编辑、编译、连接和运行C程序的方法。
2、掌握单步执行、设置/去除断点,观察变量或表达式的值。
二、实验内容1、调试与运地C程序的步骤(1)启动VC++ 6.0集成环境,输入以下程序#include “stdio.h”main(){int a,b,sum;printf(“请输入二个数:”);scanf(“%d%d”,&a,&b);sum=a+bprintf(“二数之和是:%d”,sum);}(3)编译(4)改正程序中的语法错误(5)连接、运行该程序(6)观察输出结果。
2、输入[例3.2](a)重复单步执行该程序,并在观察窗中观察变量值的变化(b)在程序中设置一个断点,继续调试三、实验时间实验时间:1课时实验二数据类型、运算符、表达式、赋值语句、输入输出的使用一、实验目的与要求1、掌握在集成环境中编辑、编译、连接和运行C程序的方法。
2、掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。
3、学会使用有关算术运算符,以及包含这些运算符的表达式,特别是++和—运算符的使用。
4、掌握数据的输入输出方法,能正确使用各种格式转换符。
二、实验内容1、输入并运行以下程序main(){char c1,ch2;c1=97; c2=98;printf(“%c,%c\n”,c1,c2);}(1)在此基础上加入以下printf语句,并运行之。
printf(“%d,%d\n”,c1,c2);(2)将第二行改为int c1,c2;运行之。
(3)将第三行改为c1=300;c2=400;运行之。
分别写出三次运行结果。
2、输入并运行程序。
main(){int i,j,m,n;i=8;j=18;m=++i;n=j++;printf(“%d,%d,%d,%d\n”,i,j,m,n);}分别做以下改动并运行:(1)将第4行改为:m=i++;n=++j;(2)将程序改为main(){int i,j;i=8;j=18;printf(“%d,%d\n”,i++,j++);}(3)在(2)的基础上,将printf语句改为printf(“%d,%d\n”,++i,++j);(4)将printf语句改为printf(“%d,%d,%d,%d\n”,i,j,i++,j++); (5)将程序改为main(){int i,j,m=0,n=0;i=8;j=10;m+=i++;n-=--j;printf(“i=%d,j=%d,m=%d,n=%d\n”,i,j,m,n); }分别写出5次改动后的运行结果。
C语言程序设计实验指导书1. 实验概述本实验指导书旨在帮助学生掌握C语言程序设计的基本原理和技巧,并能够独立开发简单的C语言程序。
通过实验的完成,学生将学会如何运用C语言进行程序设计,掌握程序的调试和错误处理方法。
2. 实验环境本实验要求学生具备一台安装了C语言开发环境的计算机。
推荐使用类UNIX系统,如Linux或Mac OS X,以便于使用标准的C编译器。
3. 实验步骤3.1 实验准备在开始实验之前,学生需要安装合适的C语言开发环境,并确保该环境能够正常运行。
同时,学生需要了解常用的C语言编程工具,如编译器和调试器的使用方法。
3.2 实验目标本实验要求学生完成以下任务:a) 掌握C语言的基本语法和关键字;b) 熟悉C语言程序的开发流程;c) 学会使用C语言编写简单的程序;d) 掌握程序的调试和错误处理技巧。
3.3 实验内容本实验包括以下几个部分:a) C语言程序的基本结构:学生需要了解C语言程序的基本结构,包括头文件的引用、全局变量、函数声明和主函数等。
b) C语言程序的输入输出:学生需要学会使用C语言进行输入输出操作,如用printf函数输出、用scanf函数输入等。
c) C语言程序的控制结构:学生需要掌握C语言的条件判断和循环结构,如if语句和for循环等。
d) C语言程序的函数和数组:学生需要了解C语言中函数和数组的用法,并能够编写包含函数和数组的程序。
e) C语言程序的调试和错误处理:学生需要学会使用调试器调试程序,并能够处理程序中出现的错误和异常情况。
4. 实验要求4.1 实验报告学生需要按照实验指导书的要求编写实验报告,并提交给指导教师。
实验报告需要包括以下内容:a) 实验目标和要求的描述;b) 实验过程和方法的详细记录;c) 实验结果的展示和分析;d) 实验中遇到的问题和解决办法。
4.2 实验评估指导教师将根据学生的实验报告和实验成果对其进行评估。
评估内容将包括学生对C语言的掌握程度、程序设计能力以及实验报告的质量。
实验一熟悉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 maxint,int;int main{int a , b , c; /定义变量/a=23; b=56; /为变量赋值/c=maxa,b; /调用max函数,将得到的值赋给c/ printf“max is %d\n”,c; /输出c的值/return 0;}int maxint x,int y /定义max函数,函数值为整型/ {int z; /定义变量/ifx>yz=x;elsez=y;returnz; /将z的值返回/}运行结果:三、提高部分1.试想,如果求10个数中的最大者,则程序该如何编写;程序代码运行结果:实验二数据及其运算班级学号姓名成绩一、实验目的1. 掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法;2. 掌握算术表达式、关系表达式及逻辑表达式的特点及用法;3. 熟悉运算符的优先级和结合性的概念;4. 学习简单程序的编写方法;二、实验内容项目1. 编辑运行下面程序,并分析运行结果;include<>int main{int m,a,b,c,d,e; /定义整型变量/printf“please input a data:m=”;scanf“%d”,&m;/从键盘输入一个整数/a=m+1;b=m-2;c=m3;d=m/4;e=m%5;printf“a=m+1;a=%d\n”,a;printf“b=m-2;b=%d\n”,b;printf“c=m3;c=%d\n”,c;printf“d=m/4;d=%d\n”,d;printf“e=m%%5;e=%d\n”,e;return 0;}运行结果:项目2. 编辑运行下面程序,并分析运行结果;include<>int main{float m,n,s;printf“m=”;scanf“%f”,&m;/输入矩形的边长/printf“n=”;scanf“%f”,&n;/输入矩形的边长/s=mn; /计算矩形的面积/printfs=%f\n”,s;/输出矩形的面积/return 0;}1输入24和5,运行结果:2输入-24和5,运行结果:分析结果是否正确3对上面程序进行修改,当输入一个非法的边长负数或零,会给出提示而不计算矩形的面积;输入-24和5,运行结果:项目3. 先阅读程序,并写出结果,再运行程序并分析结果;include<>int main{int i,j,m,n,p,q,x,y;i=8;j=10;p=0;q=0;x=1;y=1;m=++i;选做根据矩形面积的计算方法,编写一个输入圆半径r,计算园周长L和圆面积S的程序;注意判断圆半径r是否大于零;程序代码和运行结果可写在指导书背面实验三程序控制结构选择班级学号姓名成绩项目1.三角形成立条件判断及面积计算项目任务输入三个整型数据,判断这三个整型数据能否围成三角形,如果能组成三角形,计算并输出它的面积,如果不能围成三角形输出“三条边不能围成三角形”;项目说明C语言实现选择结构筑要用if语句,按照判断所给定的条件是否满足,根据判定结果的真或假来决定执行在if语句中给出的两种操作之一;项目目的1正确使用关系表达式和逻辑表达式表达条件;2学习分支语句if的使用方法;3进一步熟悉VC集成环境的使用方法,学习VC环境提供的调试工具;项目要点1已知三边求三角形面积的公式:p=a+b+c/2 s= sqrtpp-a p-b p-c2已知三边能围成三角形的条件是:任意两边之和大于第三边;3C语言中求平方根的函数是sqrtdouble x,该函数在头文件中;4if语句中“表达式”必须用“”和“”括起来,它的值为逻辑值;除常见的关系表达式或逻辑表达式外,也允许是其他类型的数据,如整型、实型、字符型等;5else子句可选是if语句的一部分,必须与if配对使用,不能单独使用;程序代码:运行结果:项目2. 百分制成绩转换为成绩等级项目任务输入一个百分制成绩,输出对应的等级;项目目的1正确使用关系表达式和逻辑表达式表达条件;2学习多switch分支选择语句的使用方法;项目要点解决本项目的关键是如何将输入的百分制成绩与case 常量联系起来,不难想到将百分制成绩用score 表示除以10之后再取整,一定得到0到10之间的数;9、10对应’a ’,8对应‘b ‘,……,5、4、3、2、1、0对应’e ’既不及格; 程序代码:运行结果:项目3.选做⎝⎛<--=>+=0100012x x x x x y ;程序代码和运行结果可写在指导书背面实验四程序控制结构循环班级学号姓名成绩项目1:使用循环结构实现重复处理项目说明从键盘输入一个班的成绩,把百分制转换成等级制;将百分制成绩用score表示除以10之后再取整,一定得到0到10之间的数;9、10对应’a’,8对应‘b‘,……,5、4、3、2、1、0对应’e’既不及格;要求分别使用三种循环结构实现;该项目中,假设班级人数不固定,规定输入若干0至100的成绩,如果成绩不在此范围,则表示结束;该项目中,同时要使用switch语句实现多分支选择结构;项目目的1掌握用while语句和do…while语句实现循环的方法;2掌握用for语句实现循环的方法;3掌握三种语句的特点和应用技巧;4掌握用break语句和continue语句改变循环状态的方法;项目内容1、用while语句实现的程序代码:2、用do…while和break语句实现的程序代码:3、用do…while和continue语句实现的程序代码:4、用for语句实现的程序代码:项目2.选做求101!nn =∑即求1!2!3!10!++++程序代码和运行结果可写在指导书背面实验五数组班级学号姓名成绩项目1.冒泡排序法项目说明输入10个数,用“冒泡法”对10个数排序由小到大;冒泡法的基本思想:通过相邻两个数之间的比较和交换,使数值较小的数逐渐从底部移向顶部,较大的数逐渐从顶部移向底部;就像水底的气泡一样逐渐向上冒,故而得名;项目目的1掌握冒泡排序算法的编程;2掌握与数组有关的算法;程序代码:运行结果:项目2.字符统计项目说明有一篇文章,共有3行文字,每行80个字符;要求分别统计出其中英文字母和数字的个数;项目目的1掌握键盘输入字符串方法;2掌握二维数组的处理方法;技术要点13行文字可定义一个二维字符数组来表示;2使用gets 函数对字符串进行输入;程序代码:include <>int main{int i,j,upp,low,dig,spa,oth;char text380;upp=low=dig=spa=oth=0;for i=0;i<3;i++{ printf"please input line %d:\n",i+1;getstexti;for j=0;j<80 && textij='\0';j++{if textij>='A'&& textij<='Z'upp++;else if textij>='a' && textij<='z'low++;else if textij>='0' && textij<='9'dig++;else if textij==' 'spa++;elseoth++;}}printf"\nupper case: %d\n",upp;printf"lower case: %d\n",low;printf"digit : %d\n",dig;printf"space : %d\n",spa;printf"other : %d\n",oth;return 0;}运行结果:项目3.选做在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素即为该二维数组的一个鞍点;要求从键盘上输入一个二维数组,当鞍点存在时,把鞍点找出来; 程序代码和运行结果可写在指导书背面实验六函数班级学号姓名成绩项目1:使用函数实现对二维数组转置;项目说明写一个函数,使给定的33的二维整型数组转置,即行列互换;要求输出转换之前和转换之后的结果; 项目目的1掌握函数的定义和调用;2掌握二维数组名作为函数的参数的使用技巧;技术要点1使用二重循环对二维数组进行输入,处理和输出;2二维数组名作为函数的参数,定义函数需要给出第二维的大小;程序代码:运行结果:项目2:使用函数实现成绩处理项目说明输入3个学生4门课的成绩,分别用函数实现以下功能:1计算每个学生的平均分;2计算每门课的平均分;3找出12个分数中最高分数所对应的学生和课程;项目目的1掌握函数的定义和调用;2掌握全局变量的使用;技术要点学生成绩可定义成全局的二维数组,这样自定义函数可以直接使用,而不需要进行参数的传递; 程序代码:运行结果:项目3.选做求101!nn =∑即求1!2!3!10!++++阶乘要求使用递归函数来实现,程序代码和运行结果可写在指导书背面实验七指针班级学号姓名成绩项目1.使用指针参数交换两个变量值项目说明用函数实现两个变量值的交换,使其在主调函数和被调函数中的值一致,并且返回这两个变量的和以及乘积;要求用指针变量作为函数参数;项目目的1熟悉如何定义指针变量,掌握将指针变量作为函数参数的方法;2掌握通过指针参数由被调函数向主调函数传递多个值的方法;技术要点由于变量的值始终存放在内存单元中,因此,要交换两个变量的值,只需交换这两个变量对应的存储单元的值即可,这就需要知道两个变量的地址;也就是说,需要保证主调函数与被调函数中所要交换的两个数的内存单元是同一内存单元,即传递的参数是内存单元的地址,而不是内存单元中的值;程序代码:运行结果:项目2. 数组的排序和的插入项目目的1熟悉如何定义指针变量,掌握将指针变量指向一维数组元素的方法;2掌握如何对数组进行排序;3掌握如何在一个有序的数列中查找合适的位置;4掌握如何将一个数插入到一个有序数列中;技术要点1排序可采用冒泡法或者选择法;2有序数组中插入一个数的关键是找到该数据插入的位置,然后将插入位置及其后的所有元素均后移一位,在空出的位置放入待插入的数据;例如,在13、27、38、49、65、76、97 这列有序数据中插入53 这个数,成为新的有序数列13、27、38、49、53、65、76、97;4定义数组时多开辟一个存储单元,用于存放待插入的数据;程序代码:运行结果:项目3.选做程序代码和运行结果可写在指导书背面编写函数 int findint p,int n,int x,在指针 p 所指的数组中查找整型数 x,如果 x 在数组中,则该函数返回 1,否则返回 0;n 为数组的大小;编写主函数测试之;。
《c语言程序设计》实验指导书答案《C语言程序设计》实验指导书答案实验一:C语言环境搭建与基本语法1. 问题:如何在计算机上搭建C语言开发环境?答案:搭建C语言开发环境通常需要安装编译器和集成开发环境(IDE)。
常见的编译器有GCC,而IDE如Visual Studio Code、Code::Blocks等。
安装完成后,配置好编译器路径,即可开始编写和编译C语言程序。
2. 问题:C语言的基本数据类型有哪些?答案:C语言的基本数据类型包括整型(int)、字符型(char)、浮点型(float和double)以及更复杂的结构体(struct)和联合体(union)等。
3. 问题:如何定义一个变量?答案:定义变量的基本语法是:`类型名变量名;`。
例如,定义一个整型变量a:`int a;`。
4. 问题:如何实现变量的输入和输出?答案:使用`scanf`函数进行输入,使用`printf`函数进行输出。
例如,输入一个整数并输出:`scanf("%d", &a); printf("%d", a);`。
实验二:控制结构1. 问题:C语言中的条件语句有哪些?答案:C语言中的条件语句主要有`if`语句和`switch`语句。
2. 问题:如何使用`if`语句?答案:`if`语句的基本语法是:`if (条件) { 语句 }`。
例如,判断一个数是否为正数:`if (a > 0) { printf("正数"); }`。
3. 问题:如何使用`switch`语句?答案:`switch`语句用于多条件分支选择。
基本语法是:`switch (表达式) { case 常量1: 语句1; break; case 常量2: 语句2; break; ... default: 默认语句; }`。
4. 问题:C语言中的循环语句有哪些?答案:C语言中的循环语句主要有`for`循环、`while`循环和`do-while`循环。
实验1 C的实验环境和C语言的数据类型⒈实验目的⑴了解在具体的语言环境下如何编辑、编译、连接和运行一个C程序。
⑵通过运行简单的C程序,初步了解C源程序的特点。
⑶掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。
⑷掌握不同的类型数据之间赋值的规律。
⑸学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。
⒉实验内容和步骤⑴检查所用的计算机系统是否已安装了C编译系统并确定他所在的子目录。
⑵进入所用的集成环境。
⑶熟悉集成环境的界面和有关菜单的使用方法。
⑷输入并运行一个简单的、正确的程序。
⒊实验题目⑴输入下面的程序# include “stdio.h”void main(){ printf(“This is a c program.\n”);}程序无误,其运行的结果为:This a c program⑵输入并编辑一个有错误的C程序。
# include “stdio.h”void main(){ int a,b,suma=123; b=456;sum=a+bp rint(“sum is %d\n”,sum);}运行后程序出现几处错误,请分别指出,并逐一更改:3处# include "stdio.h"void main(){ int a,b,sum;a=123; b=456;sum=a+b;printf("sum is %d\n",sum);}⑶若k,g均为int型变量,则下列语句的输出为,:# include “stdio.h”void main(){ int k, g;k=017; g=111;printf(“%d\t”,++k);printf(“%x\n”,g++);}运行结果为:16 6f⒈实验目的⑴掌握C语言中赋值语句的使用方法。
⑵掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。
⑶进一步熟悉C程序的编辑、编译、连接和运行的过程。
⒉实验内容用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。
问在键盘上如何输入?请书写程序#include “stdio.h”void main(){ int a,b;float x,y;char c1,c2;scanf(“a=%d b=%d”,&a,&b);scanf(“%f %e”,&x,&y);scanf(“%c %c”,&c1,&c2);printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n”,,a,b,x,y,c1,c2);}运行,并按照如下方式在键盘上输入:A=3 b=78.5 71.82A a运行结果:A=3,b=7,x=8.500000,y=71.820000,c1=A,c2=a思考:为什么在第三个scanf函数双引号第一个字符为空格字符,如果没有这个空格字符,而写成:scanf(“%c %c”,&c1,&c2);按以上的输入、输出将如何变化?请分析原因:输出结果为A=3,b=7,x=8.500000,y=71.820000,c1= ,c2=A..因为scanf(“%c %c”,&c1,&c 2)的空格吸收了在输入时的空格导致答案是A=3,b=7,x=8.500000,y=71.820000,c1=A,c2= a,.而少了空格则导致空格做为字符直接给了c1 所以导致了答案不一致.⒈实验目的⑴了解C语言表示逻辑量的方法(以0代表”假”,以非0代表”真”)。
⑵学会正确使用逻辑运算符和逻辑表达式。
⑶熟练掌握if语句和switch语句。
⑷结合程序掌握一些简单的算法。
⑸学习调试程序。
⒉实验内容题目⑴:有3个整数a、b、c,由键盘输入,输出其中最大的数。
题目⑵:求三位数的水仙花数。
要求:每道题目分别画出程序流程图,书写程序,试运行(如何输入,结果如何)。
实验4、循环结构程序设计⒈实验目的⑴熟悉掌握用while语句,do-while语句和for语句实现循环的方法。
⑵掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。
⑶进一步学习调试过程。
⒉实验内容题目⑴:输入两个正整数m和n,求其最大公约数和最小公倍数。
题目⑵:输入一行字符,分别统计出其中大小写英文字母、空格、数字和其他字母的个数。
题目⑶:猴子吃桃问题。
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,就只剩一个桃子了。
求第一天共摘多少桃子。
要求:每道题目分别画出程序流程图,书写程序,试运行(如何输入,结果如何)。
实验5 函数定义和使用⒈ 实验目的⑴学习C语言中函数的定义和调用方法。
⑵掌握通过参数在函数间传递数据的方法。
⑶熟悉TC集成环境对包含函数调用的程序的调试方法。
⒉ 实验题目A:修改调试题目:题目⑴:调试下列程序,使之具有如下功能:fun函数是一个判断整数是否为素数的函数,使用该函数求1000以内的素数平均值。
写出调试过程。
#include “stdio.h”void main(){ int a=0,k;/* a保存素数之和*/float av;/* av保存1000以内素数的平均值*/for (k=2;k<=1000;k++)if (fun(k)) /* 判断k是否为素数*/a+=k;av=a/1000;printf("av=%f\n",av);}fun(int n) /* 判断输入的整数是否为素数*/{ int i,y=0;for(i=2;i<n;i++)if (n%i==0) y=1;else y=0;return y;}题目⑵:调试以下程序并查看运行结果:#include “stdio.h”void main(){ int a=1,b=2,c;c=max(a,b);printf("max is %d\n",c);}max(int x,int y) //请回答:函数功能是什么?{ int x;z=(x>y)?x:y;return(z);}题目(3):调试以下程序并查看运行结果:int a=5;int b=7;#include “stdio.h”void main(){ int a=4,b=5,c;c=plus(a,b);printf("A+B=%d\n",c);}int plus(int x,int y) 请回答:函数功能是什么?{ int z;z=x+y;return(x);}B、编程题目:要求:每道题目分别书写程序,试运行(如何输入,结果如何)。
题目⑴:编写函数求x的n次方的值(提示:有一个参数的函数)题目⑵:编写一个求水仙花数的函数,求3位正整数的全部水仙花数中的次大值。
所谓水仙花数是指三位整数的各位上的数字的立方和等于该整数本身。
例如:153就是一个水仙花数:153 = 13 + 53 + 33实验6 编译预处理⒈ 实验目的⑴掌握宏定义的规则,领会带参数宏定义和函数调用的区别。
⑵了解文件包含命令的功能和使用规则。
⑶了解条件编译的特点和功能。
⒉ 实验内容A 宏定义及其应用⑴以下程序的运行结果是_15_。
#define MIN(x,y) (x)<(y)?(x):(y)#include “stdio.h”void main(){ int i=10,j=15,k;k=10*MIN(i,j);printf("%d\n",k);}⑵若有宏定义如下:#define X 5#define Y X+1#define Z Y*X/2则执行以下printf语句后,输出结果是____。
int a;a=Y;printf("%d\n",Z);printf("%d\n",--a);⑶请读程序:#include <stdio.h>#define MUL(x,y) (x)*ymain(){ int a=3,b=4,c;c=MUL(a++,b++);printf("%d\n",c);}上面程序的输出结果是____12__。
⑷以下程序的运行结果是_____.#include “stdio.h”void main(){ incx();incy();incx();incy();incx();incy();}incx(){ int x=0;printf("x=%d\t",++x);}incy(){ static int y=0;printf("\ny=%d\n",++y);}11B “文件包含”处理测试⑴文件format.h包含以下内容:#define PR printf#define NL "\n"#define D "%D"#define D1 D NL#define D2 D D NL#define D3 D D D NL#define D4 D D D D NL#define S "%S"⑵文件file1.C包含以下内容:#include "format.h"void main(){ int a,B,C,D;char string[]="CHINA";a=1;B=2;C=3;D=4;PR(D1,a);PR(D2,a,B);PR(D3,a,B,C);PR(D4,a,B,C,D);PR(S,string);}调试并察看运行结果。
注意文件保存的路径。
实验7 数组应用编程⒈实验目的⑴掌握一维数组和二维数组定义、赋值和输入输出的方法。
⑵掌握字符数组和字符串函数的使用。
⒉实验内容A:修改调试题目:调试下列程序,使之具有如下功能:输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。
写出调试过程。
#include “stdio.h”void main(){ int i,n,a[10],av;for(i=0;i<n;i++)scanf("%d",a[i]);for(i=0;i<n;i++){ printf("%d",a[i]);if (i%3==0) printf("\n");}for(i=0;i!=n;i++)av+=a[i];printf("av=%f\n",av);}上面给出的程序是完全可以运行的,但是运行结果是完全错误的。