程序设计基础实训手册(C语言习题)

合集下载

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析1. 习题一:编写一个C程序,输出“Hello World!”。

解析:这是一个非常简单的C程序,只需要使用printf函数输出所需的字符串即可。

```c#include <stdio.h>int main() {printf("Hello World!");return 0;}```2. 习题二:编写一个C程序,计算两个整数的和并输出结果。

解析:这个程序需要使用scanf函数从用户输入中读取两个整数,并使用printf函数输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入第一个整数:");scanf("%d", &num1);printf("请输入第二个整数:");scanf("%d", &num2);sum = num1 + num2;printf("两个整数的和为:%d", sum);return 0;}```3. 习题三:编写一个C程序,判断一个数是奇数还是偶数并输出结果。

解析:这个程序需要使用scanf函数读取用户输入的整数,并使用if-else语句判断该数的奇偶性,然后使用printf函数输出结果。

```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("该数是偶数");} else {printf("该数是奇数");}return 0;}```4. 习题四:编写一个C程序,判断一个年份是否为闰年并输出结果。

实训指导《C语言程序设计基础》教...

实训指导《C语言程序设计基础》教...

《C语言程序设计基础》教材参考答案包括各单元:一.随堂练习二.单元总结三.单元练习四.实训指导单元一程序设计宏观认识一.随堂练习【随堂练习1-1】1.根据上述示例模仿编程,输入正方形的边长,计算其面积。

#include <stdio.h>void main( ){ int a,s; //数据准备,边长a,面积sprintf("请输入正方形的边长:");scanf("%d",&a); //数据输入s=a*a; //数据计算printf("该正方形的面积为:%d.\n",s);}【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例1.2】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。

答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例1.2】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。

答:函数首部:void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。

【随堂练习1-3】1.在VC++6.0环境中完成【例1.2】程序开发过程。

(略)2.查阅【例1.2】所对应的工程文件夹,了解相关文件的含义。

工程文件夹中:.CPP:用C/C++语言编写的源代码文件。

.DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。

项目文件,文本格式。

.DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpace中。

C语言程序设计实训教程习题和实验解答

C语言程序设计实训教程习题和实验解答
scanf(“%d,%d,%d”,&a,&b,&c);
sum=a+b+c;
average=sum/3.0;
printf(“sum=%d,average=%f\n”,sum,average);
}
【实验解答】
1.c=10
2.①程序功能为输入两个数,求两数的差
②c=10
3.#include<stdio.h>
3.运行结果-1,177777,ffff,65535
b=-2
4.编程并上机调试运行
1)设圆半径为r=1.5,求圆周长、面积。要求用scanf函数输入数据,输出时取小数点后两位。
#include <stdio.h>
void main()
{
float r,l,s,v;
scanf("%f",&r);
l=2*3.14*r;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("E\n");
}
}
}
3)输入四个数,要求按从大到小顺序输出。
#include<stdio.h>
void main()
}
2.由键盘输入3个数,若输入的这3个数可以构成三角形,则计算以这3个数为边长的三角形周长;如果不能,则输出提示错误信息。
#include <stdio.h>
void main()
{
float a,b,c,l;

《程序设计基础教程----C语言版》实验指导手册

《程序设计基础教程----C语言版》实验指导手册

四川师范大学数学与软件科学学院信息与计算科学专业《程序设计基础教程----C语言版》课程实验指导手册本实验指导手册旨在指导数学与软件科学学院信息与计算科学专业《程序设计基础教程----C语言版》(专业必修课)的实验教学活动过程。

其主要使用对象为本课程主讲教师和实验指导教师。

它可以作为教学过程中的教学辅助参考资料,也可以作为学生在本门课程的学习中,结合实际教学内容,完成相关实验并填写实验报告的主要依据。

具体实施过程中,除开各实验中要求的必做题目外,教师可结合实际教学情况,根据学生接受程度作适当扩展。

学生在进行实践设计活动时,也可以结合自身掌握和学习的实际情况进行有选择地实践。

本指导手册仅针对本学院信息与计算科学专业而设置。

本实验手册编写的参考书籍:1.《程序设计基础教程----C语言版》,冯山,马廷淮主编,北京:科学出版社,2008年5月2.《C语言程序设计教程(第二版)》,谭浩强,张基温,唐永炎编著,北京:高等教育出版社,2002年3月3.《C语言习题集与上机指导(第二版)》,谭浩强,张基温主编,北京:高等教育出版社,2002年1月引言程序设计是实践性很强的课程。

实践也是学好程序设计课程中必不可少的重要环节。

程序设计的实践分两个步骤:一是设计和编写解决问题的程序算法流程,并在此基础上编写源程序代码;二是在计算机上对程序进行调试,并使程序完成问题的求解过程,进行相应的逻辑测试。

实验过程中,应当注意如下问题:(1) 上机实习的主要目的是训练C语言程序的上机调试能力和分析、解决调试过程中遇到的问题的能力。

并在此过程中逐步提高程序编写与问题分析能力。

而不是简单地对教材上的实例做验证式的操作;(2) 上机内容可以结合教材内容和习题,或由老师布置专门的上机习题进行;(3) 为提高上机效果。

必须在上机之前准备好上机的基本内容并编写好上机程序,尽量在上机之前先作好预先的阅读分析工作;(4) 上机调试的基本方法:语法检查(编译)==>逻辑检查(设计者检查)==>测试。

《程序设计基础(C语言)》实验指导书

《程序设计基础(C语言)》实验指导书

《程序设计基础(C语言)》实验指导书《程序设计基础(C语言)》目录第 1 章概述 (1)1.1 课程简介 (1)1.2 实验环境选择 (1)第 2 章实验要求 (1)2.1 实验过程要求 (1)2.2 考核及评分标准 (2)第 3 章实验内容 (2)3.1 实验1 熟悉C语言运行环境 (2)3.2 实验2 数据类型 (1)3.3 实验3 运算符和表达式 (4)3.4 实验4 顺序结构及输入和输出 (9)3.5 实验5 选择结构 (12)3.6 实验6 循环结构 (15)3.7 实验7 数组(1) (19)3.8 实验8 数组(2) (21)3.9 实验9 字符串及其操作 (22)3.10 实验10 函数 (23)3.11 实验11 结构体 (25)3.12 实验12 指针 (26)第 1 章概述1.1 课程简介《程序设计基础(C语言)》是软件工程各专业或其它相近专业学生的公共职业基础课,是软件类各专业的入门课程,直接影响学生后继职业技术课程的学习及可持续发展能力的培养。

通过本书,学习基本的程序设计概念和程序设计方法,学会使用C语言解决实际问题,进行初级的程序设计。

1.2 实验环境选择VC++6.0第 2 章实验要求2.1 实验过程要求本课程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。

在指定的实验时间内,必须到机房内实验,其余时间可自行设计和分析。

本课程所涉及的程序代码,都要求有较高的可读性和效率,多文件表示。

2.2 考核及评分标准若实验者在指定上机时间三次不到课,取消考核资格。

请假,必须提前出具正式假条,不接受事后假条。

如果发现抄袭、篡改、伪造实验数据,或实验报告和设计报告雷同,涉及的所有学生的该课程成绩计为0 分。

本课程采用结构化评分,主要由指导教师灵活处理,可以是考勤等。

第 3 章实验内容3.1 实验1 熟悉C语言运行环境一、实验目的1.了解什么是C语言2.熟悉C语言程序开发环境二、实验内容和步骤1.大学生涯的第一个程序1)运行Microsoft Visual Studio 2008或者VC6.02)创建项目,选择win32控制台应用程序或者空项目,项目名为MyFirstApp3)新建项目,选择C++源文件,文件名为HelloWorld4)在程序编辑窗口,输入如下代码#include <stdio.h>/* 主程序*/void main(){printf("hello world\n");}5)执行程序,Ctrl+F56)观察输出结果,并记录2.修改程序1)增加语句,观察输出结果是否不同printf("hello world\n");printf("world is me\n");2)删除输出字符串中的“\n”,观察输出结果是否不同printf("hello world\n");3)进行换行输出,观察输出结果是否不同printf("hello, ");3.2 实验2 数据类型一、实验目的1.掌握变量的命名规则和定义2.掌握C语言程序中的各种数据类型并使用它们二、实验内容和步骤1.定义3个变量numInt、numFloat、charInfo,他们的类型分别为整型,单精度类型,字符型;并分别初始化为2,2.0和‘A’,最后输出这三个变量的值。

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++ 6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。

图1-1 VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。

如图1-2所示图1-2 选择新建② 在弹出的新建对话框中设置好相应的内容,如图2-2所示。

要事先准备好保存文件的目录,例d:\lx 目录。

在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C 语言程序的扩展名“.c ”。

设置好后,单击“OK ”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c 文件存放在D 盘的LX 目录下。

图1-3 新建对话框的设置③ 在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c ”且一定要输入扩展名1.单击该处3.设置存放目录图1-4 输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。

图1-5 保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compile example.c),或者单击工具栏上的“编译”按钮,如图1-6所示。

在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。

内容是“This build command requires an activeproject worksapce,Would you like to create a default project worksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No ”,表示不同意,将取消编译。

计算机程序设计基础实训指导书

计算机程序设计基础实训指导书

计算机程序设计基础实训项目指导书目录实训一简单C语言程序设计 (1)实训二顺序结构程序设计 (3)实训三选择结构程序设计 (5)实训四循环结构程序设计 (6)实训五数组程序设计 (11)实训六函数程序设计 (16)实训七指针程序设计 (19)实训八结构体程序设计 (20)附录1 C语言上机步骤 (21)实训一简单C语言程序设计实训项目名称:简单C语言程序设计实训课时:4实训目的:1.掌握所用的C语言环境的基本操作方法。

2.掌握编辑、编译、连接和运行C程序。

3.掌握C程序的数据类型、运算符,表达式。

实训内容和要求1.打开C语言环境,编辑如下程序,写出运行结果。

#include <stdio.h>void main(){printf(“Hello World!\n”);}2. 在屏幕上显示下列图形:* * * ** * ** **3. 已知三角形的三边长为3,4,5,求三角形周长实训二顺序结构程序设计实训项目名称:顺序结构程序设计实训课时:4实训目的:1.掌握基本输入输出函数、库函数的使用。

2.能够编程实现简单的结构化程序。

实训内容和要求1.执行程序,写出运行结果。

#include <stdio.h>void main(){float a = 9.1234567891234567890;double b = 9.1234567891234567890;printf("%f, %lf\n",a,b);printf("%.15f,%.15\n",a,b);};2.运行程序,写出结果。

#include <stdio.h>void main(){float x1;double y1 ;scanf("%f %lf ",&x1,&y1) ;printf("x1=%f,y1=%lf ",x1,y1) ;}程序运行时输入x的值123456789,输入y的值123456789。

C语言课程实训题目

C语言课程实训题目

C语言课程实训题目《C语言程序设计》课程实训指导书1.学生学籍管理 ........................................................................... .............................. 2 2.通讯录管理 ........................................................................... .................................. 2 3.酒店房间登记管理 ........................................................................... ....................... 2 4.职工信息管理 ........................................................................... .............................. 3 5.销售管理 ........................................................................... ..................................... 3 6.银行账户信息管理 ........................................................................... ....................... 3 7.商品销售管理 ........................................................................... .............................. 4 8.设备管理 ........................................................................... ..................................... 4 9.飞机订票 ........................................................................... ..................................... 5 10.仓库管理 ........................................................................... ................................... 5 11.学校运动会管理 ........................................................................... ......................... 5 12.教师工作量管理 ........................................................................... ......................... 6 13.学生证管理程序 ........................................................................... ........................... 6 14.学分管理程序 ........................................................................... ............................... 6 15.图书登记管理程序 ........................................................................... ........................ 7 16.学生作业完成情况管理程序 ........................................................................... ......... 7 17.宿舍管理系统 ....................................................................................................... 7 18.图书租借管理系统 ........................................................................... ........................ 8 19.车票管理系统 ........................................................................... ............................ 8 20.学校职工工资管理系统 ........................................................................... .. (8)1《C语言程序设计》课程实训指导书1.学生学籍管理问题描述:已知程序要求管理的学生信息包括:学号,姓名,系别、班级,年龄,性别,入学时间。

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

例如,某人月工资 8000 元,按规定 19%缴纳三险一金,那么: 其应纳税所得额=8000 - 8000×19% - 3500=2980 元,对应税率和速算扣除数分别为 10%和 105 元, 因此,其个人所得税额为 2980×10%-105=193 元。
题目 6
算式求解
若有下述计算关系,试编写程序求十进制数字 A、B、C、D 的值。
题目 3
分段函数
请编写程序完成下面的计算要求。注:若 x 的值不在区间[0,50),则提示输入错误。
2 cos(x 30 0 ) y 4. 1 5 x 2 1.75( x 3.0) 45
0 x 10 10 x 30 30 x 50
题目 4
题目 17
素数排序
编写一个程序,从键盘输入 n 个非零整数(n>0) ,找出这 n 个数中所有的素数,并按照从小到大 的次序依次输出这些素数。
题目 18
多项式
一元多项式的一般形式如下: A(x) = p0+p1x+p2x2+ … +pixi+ … + pnxn 请编写一个程序,将输入的两个一元多项式相加(提示:对于多项式的每一项,输入其系数和指 数) ,最输出和多项式。可以用下面的数据进行测试。 (1)
题目 1
勾股定理
勾股定理指出:直角三角形两条直角边的平方和等于斜边的平方。例如,如果一个直角三角形的 两条直角边长分别为 3 和 4,那么斜边长必定为 5。整数 3、4、5 一起构成了一个勾股三元组,这样的 三元组有无数个。给定两个正整数 m 和 n,m>n,一个勾股三元组可以由下列公式产生: side1 = m2-n2 side2 = 2mn hypotenuse = m2+n2 当 m=2,n=1 时,根据公式就产生了三元组(side1=3,side2=4,hypotenuse=5) 。编写一个程序, 将 m、n 的值作为输入,并通过上面的公式将产生的勾股三元组的值显示出来。
级数 1 2 3 4 5 6 7 全月应纳税所得额 不超过 1,500 元 超过 1,500 元至 4,500 元的部分 超过 4,500 元至 9,000 元的部分 超过 9,000 元至 35,000 元的部分 超过 35,000 元至 55,000 元的部分 超过 55,000 元至 80,000 元的部分 超过 80,000 元的部分 税率(%) 3 10 20 25 30 35 45 速算扣除数(元) 0 105 555 1005 2755 5505 13505
题目 24
删除子串
编写程序, 其中包括一个函数, 此函数的功能是: 对一个长度为 N 的字符串从其第 K 个字符起, 删去 M 个字符,组成长度为 N-M 的新字符串(其中 N、M<=80,K<=N)。例如输入字符串"We are poor students.",利用此函数进行删除"poor"的处理,输出处理后的字符串是"We are students."。
题目 21
字符串处理-1
编写程序, 对于读入的一个字符串, 删除其中所有的空格。 例如, 将字符串 “ xidian university ” 中的空格删除后,得到“xidianuniversity” 。
题目 22
字符串处理-2
编写程序,将一个字符序列中的数字字符拼接成一个整数(串中数字个数不超过 9 个) ,输出该整 数及其平方根,例如,若输入的字符序列为“aj?3v87.y=:61w!0]#”,则输出 387610 及 622.58。
题目 25
求公共前缀
编写程序测试一个函数,该函数查找两个单词最长的共同前缀(例如,“global”和“glossary”最长 的共同前缀是“glo”,“department”和“depart”最长的共同前缀是“depart”,“glove”和“dove”最长的共同前 缀是空字符串) 。
题目 26
URL
题目 11
对称数
将一个数的数码倒过来所得到的新数叫做原数的反序数,如果一个数等于它的反序数,则称它为 对称数。例如,12321、3、151、44、6776 等都是对称数。 编写一个函数 f,判断十进制正整数 k 是否是对称数。 要求:在 main 函数中输入一个正整数 k 并调用该函数 f,若 k 是对称数,再判断 k 的二进制形式 是否也是对称数。若 k 及其二进制都是对称数,则输出 k 的十进制值及二进制值。
. . .
A
.
.
.
B C
4
(2) A(x)=1+x+x 2 x3 x 4 x5 B(x) x 3 x 4 C(x) 1+x+x 2 x 5 (3) A(x)=x+x 3 B(x) x x 3 C(x) 0 (4) A(x)=x+x100 B(x) x100 x 200 C(x) x 2x100 x 200 (5) A(x)=x x 2 x 3 B(x) 0 (6)
C(x) x x 2 x 3
A(x)=6x -3 -x+4.4x 2 1.2x 9 B(x) 6x -3 +5.4x 2 x 2 7.8x15 D(x) 7.8x15 1.2x 9 12x 3 x
题目 19
杨辉三角形
编写一个程序,输入一个正整数 n(不超过 15) ,输出 n 行的杨辉三角形。例如,输入 6 时的输 出如下:
N 的平方根
NG 0.5(LG N / LG)
数 N 的平方根可通过下式的迭代运算来近似计算: 式中 NG 表示下一次的猜测值,LG 表示上一次猜测值。编写一个函数利用上述方法计算平方根。 第一次猜测值就是 LG 的初始值,程序利用公式计算 NG。检测 NG 和 LG 的差值,看这两次猜测值 是否几乎相等。如果是,NG 就作为平方根;否则,用新的猜测值 NG 更新上次的猜测 LG,重复上 述过程(再计算新的 NG、检测 NG 和 LG 的差,等等) 。循环一直进行,直到 NG 与 LG 之差小于 0.005。第一次猜测值为 1.0。 编写 main 函数,调用你所编写的求平方根函数,用下面的数据测试:4、120.5、88、36.01、10 000、
5
题目 23
校验和
通信信道常常含有噪声, 因此设计了很多方法来保证数据的可靠传输, 一种成功的方法是利用校验 和。消息的校验和首先通过消息中各字符的整数编码的和计算,然后计算该和除以 64 的余数,并在此 结果上加一个空格字符的整数编码。因为这个值在可输出字符范围内,它也被显示成字符。编写程序, 接收以一个句点结尾的单行消息,并且显示每条消息的校验和字符。当用户输入只包含一个句点的消 息时,要求程序结束。 (字符的编码为其在 ASCII 字符集中的编码)
题目 12
计算 cosx
编制程序,利用下式计算 ucosx 的近似值,直到最后一项的绝对值小于 10 6 。
u cos x 1
x2 x4 x6 ... 2! 4! 6!
题目 13
分鱼
A、B、C、D、E 五人在某天夜里合伙去捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方去睡 觉。日上三竿,A 第一个醒来,他将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份;B 第二个 醒来,也将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份;C、D、E 依次醒来,也按同样的方 法拿鱼。试编程计算他们至少捕了多少条鱼。
1 1 1 1 1 1 5 4 10 3 6 10 2 3 4 5 1 1 1 1 1
题目 20
魔方阵
Dole Rob 算法生成奇数阶魔方阵的过程为:从 1 开始,依次插入各自然数,直到 N 2 为止。选择中; ② 新位置应当处于最近一个插入位置的右上方, 若右上方位置已超出方阵的上边界, 则新位置取 应选列的最下一个位置;若超出右边界则新位置取应选行的最左一个位置; ③ 若最近一个插入元素为 N 的整数倍,则选下面一行同列的位置为新位置。
题目 14
爱因斯坦数学题
有一条长阶梯,若每步跨 2 阶,则最后剩余 1 阶,若每步跨 3 阶,则最后剩 2 阶,若每步跨 5 阶, 则最后剩 4 阶,若每步跨 6 阶则最后剩 5 阶,若每步跨 7 阶,最后才正好一阶不剩。请问,这条阶梯 共有多少阶?
3
题目 15
阶乘
请编写程序计算 n!并输出,要求输入 n 的值且应满足 n<=1000。
A B C C B D 9 D A
×
题目 7
自由落体的球
设一球从 100m 高度自由落下,每次落地后反跳回原来高度的一半,再落下。求它在第 10 次落地 时, 共经过多少米?第 10 次反弹的高度是多少?该球经过多少次反弹后停止运动, 此时该球的运动路 程是多少(精确至小数点后第 6 位数字)?
题目 8
素性判定
编写一个程序,判断输入的一个整数是否为素数。
2
题目 9
可逆素数
编写一个程序,求四位的可逆素数。可逆素数指:将一个素数的各位数字的顺序倒过来所构成的反序 数也是素数。
题目 10
厄拉多赛筛法求素数
大约在公元前 250 年, 古希腊数学家厄拉多赛(Eratosthenes)提出一个造出不超过 N 的素数构造法, 称为厄拉多赛筛法。它基于这样一个简单的性质:如果 n≤N,且 n 是合数,则 n 必为一个不大于 N 的平方根的素数所整除。 基本方法如下:先列出从 2~N 的全体自然数,其中,2 是素数,在该数列中将 2 及其倍数去掉; 接下来数列中最小的 3 是素数,再将数列中的 3 及其倍数去掉;接下来数列中最小的 5 是素数,…, 重复该过程,直到数列为空。每次从数列中取出的最小数构成不超过 N 的全体素数。
0.25。
题目 5
相关文档
最新文档