C语言上机实验[1]
C语言程序设计 上机实验指导与习题 参考答案(第四版)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
C语言上机实验1-18
实验一C程序的运行环境及简单程序编写一、实验目的1.了解tc2.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
3.通过运行简单的C程序,初步了解C源程序的特点。
二、实验内容1.编写一个计算球体体积的程序,要求用户自行录入球体的半径。
参考公式V=4/3πr3.。
2.编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的20美元、10美元、5美元和1美元来付款。
运行结果:Ener a dollar amount:93$20 bills:4$10 bills:1$5 bills:0$1 bills:3实验二顺序结构程序设计一、实验目的1.熟悉C语言中的基本数据类型,掌握定义常量和变量以及对它们赋值的方法,了解数据输出时所用格式转换符。
2.掌握格式输入/输出函数的用法。
3.学会简单顺序程序的设计。
4.养成良好的程序设计习惯。
二、实验内容1.编写一个程序,对用户录入的产品信息进行格式化。
Enter item number:583Enter unit price:13.5Enter purchase date(mm/dd/yyyy):3/24/2010Item Unit PurchasePrice date583 $ 13.50 3/24/20102.编写一个程序,要求用户输入一个两位数,然后按数位的逆序打印出这个数。
Enter a two-digit number:28The reversal is :82实验三选择结构程序设计一、实验目的1.熟练使用if、switch编写程序。
二、实验内容1.编写一个程序,确定一个数的位数。
Enter a number:374The number 374 has 3 digits假设输入的数最多不超过4位。
提示:利用if语句进行数的判定。
例如,如果数在0到9之间,那么位数为1;如果数在10到99之间,那么位数为2。
C语言上机实验
实验一(第1章实验)实验目的:1.掌握运行C语言程序的全过程。
2.熟悉编译环境。
3.初步熟悉C语言程序的语法规定。
4.了解简单函数的使用方法。
实验内容:1.编程且上机运行:求3个整数的和。
2.编程且上机运行:求2个数的和、差、积和商。
3.编程且上机运行:输入3个数,求最大值。
4.编程且上机运行:输入圆的半径,求圆的面积和周长。
5.在屏幕上输出:“hello world!”实验结果:实验二(第3章实验)1.实验目的:理解C语言的类型系统。
实验内容:写程序测试数据-2在类型char,int,unsigned int,long int,unsigned long int 中存储情况。
实验过程:实验结果:参见各种类型的存储实现描述。
2.实验目的:了解混合类型计算中类型的转换规则。
实验内容:写程序测试多种类型数据一起运算时类型的转换及表达式结果的类型。
注意unsigned int和int数据运算时类型转换的方向。
实验过程:/** 类型转换问题* 试问下面两个表达式等价吗?*/#include <stdio.h>#include <stdlib.h>int main() {unsigned int ui,uj;ui = 1;uj = 2;if (ui < uj)printf("\n%u < %u is true !\n", ui, uj);elseprintf("\n%u < %u is false !\n", ui, uj);if (ui - uj < 0)printf("\n%u - %u <0 is true !\n", ui, uj);elseprintf("\n%u - %u <0 is false !\n", ui, uj);system("pause");return 0;}实验结果:参见类型转换规则。
C语言程序设计上机实验报告(精选5篇)
C语言程序设计上机实验报告(精选5篇)第一篇:C语言程序设计上机实验报告黔南民族师范学院 C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:《c语言程序设计》上机实验报告要求《c语言程序设计》上机实验报告要求1.实验环境:软件系统:使用的软件环境硬件系统:机型说明2.实验目的:掌握如何编辑、编译、链接调试运行c程序3.实验内容:(1)掌握顺序结构程序设计.P26 ,p49,p62 3.2~3.7(2)掌握选择结构程序设计(if 和switch语句的用法)p4.2~(3)循环结构程序设计(while, dowhile,for语句的用法)。
(4)掌握数组的定义、输入和输出的方法,字符数组、字符串函数的使用。
(5)了解函数的定义,熟悉函数实参与形参的“值传递”方式,掌握函数的嵌套调用和递归调用方法。
(6)熟悉指针含义及其使用。
(7)熟悉结构体和共用体的使用。
(8)熟悉文件的使用。
4.实验要求:(1)输入编写的源程序,检查程序有无错误(语法和逻辑错误),有则改之。
(2)编译和连接,仔细分析编译信息,如有错误应找出原因并改正。
(3)运行程序,输入数据,分析结果。
5.实验结果:输出程序清单和运行结果。
(要求把原题内容,调试好的程序和其结果一并打印),6.实验体会分析运行结果,本次调试程序取得的经验(遇到的问题,解决的方法等)。
第三篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1.理解指针、地址和数组间的关系;2.掌握通过指针操作数组元素的方法;3.掌握数组名作为参数的编程方式。
C语言程序设计 上机实验指导与习题 参考答案(第四版)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
C语言上机实验一
实验一:简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的编译环境和编写过程。
2、掌握C语言程序在Visual C++ 6.0环境下的调试过程。
3、初步了解C语言程序的特点输入/输出格式。
4、掌握C语言的数据类型。
三、实验内容:1、教材例题1-1,掌握C语言程序的调试流程、错误修改以及运行结果和信息复制。
2、计算两个数x和y的积。
(参考教材P5【例1-2】),了解C语言程序的调试流程、运行,掌握输出格式。
3、在屏幕上实现下列图案的输出并按实验模拟修改。
(参考实验教材P11)****************************hello,welcome to china!good bye!****************************4、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。
(实验教材P26)5、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。
(实验教材P18)四、实验程序代码:1#include "stdio.h"void main(){printf("Hello,World! ");printf("\n");}2#include "stdio.h"void main(){int x,y,sum;x=123;y=456;sum=x+y;printf("sum is =%d\n",sum);}3#include "stdio.h"void main(){printf("***********************\n");printf("hello,welcome to china!\n");printf(" good bye!\n");printf("***********************\n"); }4#include "stdio.h"#define P 3.14void main(){float r1,r2;double s1,s2,s;printf("please enter r1,r2:");scanf("%f%f",&r1,&r2);s2=r2*r2*P;s1=r1*r1*P;s=s2-s1;printf("s=%lf\n",s);}5#include "stdio.h"void main(){float h,c;printf("请输入华氏温度: ");scanf("%f",&h);c=5.0/9*(h-32);printf("华氏温度%f转换摄氏温度为%f\n",h,c); }五、实验运行结果(截图):。
C语言程序设计 上机实验指导与习题 参考答案
C 语言程序设计上机实验指导与习题参考答案仅供教师内部参考华南农业大学目录上机实验1实验1 C 语言程序初步1一实验目的1二实验内容1实验2 基本数据类型运算和表达式3一实验目的3二实验内容3实验3 基本输入与输出5一实验目的5二实验内容5实验4 选择结构程序设计4一实验目的4二实验内容4实验5 循环结构程序设计一9一实验目的9二实验内容9实验6 循环结构程序设计二15一实验目的15二实验内容15实验7 数组17一实验目的17二实验内容17实验8 字符数组的应用22一实验目的22二实验内容22实验9 函数的基本应用24 一实验目的24二实验内容24实验10 指针与结构体26一实验目的26二实验内容26*实验11 链表29一实验目的29二实验内容29*实验12 文件32一实验目的32二实验内容32上机实验实验1 C 语言程序初步一实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2 了解在该系统上如何编辑编译连接和运行一个C 程序3 通过运行简单的C 程序初步了解C 程序的特点4 在教师的指导下学会使用JudgeOnline 实验系统二实验内容1 运行第一个C 程序[题目The first C Program]将下列程序输入TC 或VC编译连接和运行该程序void mainprintf "The first C Program\n"[具体操作步骤]以Turbo C 上的操作为例1Windows 进入后按照第一章中介绍的方法进入Turbo C2在编辑窗口中输入程序3保存程序取名为a1c4按照第一章中介绍的方法编译连接和运行程序2 在JudgeOnline 系统中提交实现了计算ab 功能的程序[题目1001计算ab]由键盘输入两个整数计算并输出两个整数的和实现该功能的程序如下void mainint a bscanf "dd" a b1 printf "d" a b1在程序编辑窗口中输入程序2保存程序取名为a2c3按照前二章中介绍的方法编译连接和运行程序4在程序运行过程中输入15 30↙↙表示输入回车符5 如果看到如下输出结果则表明1530 的结果正确如果得不到如下结果则需检查并更正程序456 按照第三章中介绍的方法进入JudgeOnline 实验系统7 显示题目列表点击题号为1001题名为计算ab的题目8 查看完题目要求后点击页面下端的sumbit 参照第二章提交程序的方法提交程序a2c9 查看评判结果如果得到accepted则该题通过否则返回第一步检查程序是否正确2实验2 基本数据类型运算和表达式一实验目的1掌握C 语言数据类型熟悉如何定义一个整型和实型的变量以及对它们赋值的方法2 掌握不同的类型数据之间赋值的规3 学会使用C 的有关算术运算符以及包含这些运算符的表达式特别是自加和自减-- 运算符的使用4 进一步熟悉C 程序的编辑编译连接和运行的过程二实验内容1 变量的定义[题目1117变量定义按要求完成程序]下面给出一个可以运行的程序但是缺少部分语句请按右边的提示补充完整缺少的语句void mainint a b 定义整型变量a 和bint i j 定义实型变量i 和ja 5b 6i 314 j iabprintf "a db di fj f\n" a b i j[具体操作步骤]1将代码补充完整2在TC 或VC上运行通过3在JudgeOnline 实验系统上提交2 赋值表达式与赋值语句[题目1118赋值表达式与赋值语句写出程序运行结果] 阅读下面程序写出运行结果void mainfloat aint b cchar d ea 35b ac 330d c3e \\printf "fddcc" abcde运行结果为35000003330J\[提示]赋值语句具有类型转换的功能但可能会改变数据3 基本运算[题目1119基本运算写出程序运行结果]阅读下面程序写出运行结果void mainint a b cfloat d 15 e fa 357b 1510c be 1510f d10printf "dddfff" abcdef运行结果为0211500000010000001500000[提示]除法分整除与普通除法之分4实验3 基本输入与输出一实验目的1熟练掌握putchargetcharprintf scanf 函数的使用方法2 掌握各种类型数据的输入输出的方法能正确使用各种格式转换符二实验内容[题目1126字符的输入与输出]编程实现由键盘输入一个字符后在屏幕上输出该字符[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]a↙↙[正确输出] [正确输出]a参考程序include "stdioh"mainchar chch getcharputchar ch[题目1127计算加法]编程实现由键盘输入一个加法式输出正确的结果两个加数均为整数[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]1020 ↙- 1560↙[正确输出] [正确输出]30 45参考程序include "stdioh"mainint a bscanf "dcd" abprintf "d" ab[题目1014求圆面积]由键盘输入圆半径r 请计算该圆的面积注取314159结果保留两位小数位另外程序只要能对r 在0 到10000 范围的情况输出正确答案即可[第一组自测数据] [键盘输入]5652 ↙[键盘输入][正确输出] 112↙1335502 [正确输出][第二组自测数据] 39408[提示]结果保留两位小数可采用printf 函数的格式控制字符来实现参考程序include "stdioh"mainfloat arearscanf "f"rarea 314159rrprintf "02f"area2[题目1015计算摄氏温度值]从键盘输入一个华氏温度值要求按格式输出其对应的摄氏温度值精确到小数点后两位数学公式描述为5C F 329[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]100↙100↙[正确输出] [正确输出]3778 3778[提示]注意公式中的除为普通除法参考程序includevoid mainfloat fcscanf "f"fc 509 f-32printf "2f"c3实验4 选择结构程序设计一实验目的1了解C 语言表示逻辑的方法以0 代表假以非0 代表真2 学会正确使用逻辑运算符和逻辑表达式3 熟练掌握if 语句和switch 语句4 结合程序掌握一些简单的算法二实验内容[题目1120判断点是否在圆]由键盘输入一个点的坐标要求编程判断这个点是否在单位圆上点在圆上输出Y 不在圆上输出N 使用小数点后3 位精度进行判断[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]07070707 ↙8>0505↙[正确输出] [正确输出]Y N[提示] 1平面上的点与圆的关系分为在圆内在圆上在圆外三种本题要求判断是否在圆上2判断两实数相等采用判断这两实数的差的绝对值小于规定误差精度本题为0001 的方法实现参考程序include "stdioh"include "mathh"void mainfloat abscanf "ff"abif fabs aabb-1 1e-3printf "Y\n"else printf "N\n"[题目1017求数的位数]由键盘输入一个不多于9 位的正整数要求输出它是几位数[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]349213 ↙10000↙[正确输出] [正确输出]6 5[提示]划定一位数二位数九位数的范围后用if else if else 语句实现判断4参考程序mainint nplacescanf "ld"nif n 99999999 place 9else if n 9999999 place 8else if n 999999 place 7else if n 99999 place 6else if n 9999 place 5else if n 999 place 4else if n 99 place 3else if n 9 place 2else place 1printf "ld\n"place[题目1018数的排序]由键盘输入三个整数a b c按从小到大的顺序输出这三个数[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]654590 ↙963 ↙[正确输出] [正确输出]456590 369参考程序includemainint abctscanf "ddd"abcif a b t aa bb tif a c t aa cc tif b c t bb cc tprintf "ddd"abc[题目1016字符变换]由键盘输入5 个字符将其中的大写字母变成小写其它类型的字符不变并按输入顺序逐个输出[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]ApPLe ↙aB 5 ↙[正确输出] [正确输出]apple ab 5[提示]下面代码实现由键盘读入一个字符并按题意处理后输出char aa getcharif a A a Z a a32putchar a5现在题目要求处理5 个字符怎么做呢请自己思考参考程序includemainchar abcdescanf "ccccc"abcdeif a Za A a a32if b Zb A b b32if c Zc A c c32if d Zd A d d32if e Ze A e e32printf "ccccc"abcde[题目1019数的整除]由键盘输入5 个整数逐个判断它们能否被27 整除能的输出YES不能的输出NO 注意输出时一个判断结果占一行5 个数的判断共占5 行[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]8 27 17577 325 54 ↙8 27 17577 325 54 ↙[正确输出] [正确输出]NO NOYES YESYES YESNO NOYES YES[提示]整除即除得余数为0参考程序include "stdioh"mainint abcdescanf "d d d d d"abcdeif a27 0 printf "YES\n" else printf "NO\n"if b27 0 printf "YES\n" else printf "NO\n"if c27 0 printf "YES\n" else printf "NO\n"if d27 0 printf "YES\n" else printf "NO\n"if e27 0 printf "YES\n" else printf "NO\n"[题目1020正负奇偶判断]由键盘输入非零整数x 判断该数正负正数输出positive 负数输出negative 接着判断该数的奇偶性奇数输出odd偶数输出even[第一组自测数据] negative[键盘输入] odd-43 ↙[第二组自测数据][正确输出] [键盘输入]698 ↙positive[正确输出] even参考程序include "stdioh"mainint nscanf "d"nif n 0 printf "negative\n"else printf "positive\n"if n2 0 printf "even\n"else printf "odd\n"[题目1023简单计算器]下面程序是实现一个简单的运算器保留两位小数点如果由键盘输入1050计算机可以输出结果6000如果输入8 *6计算机输出4800如果输入204 计算机输出500 如果输入8-6计算机输出200 请在空处填上适当的代码运行通过后并提交include "stdioh"void mainfloat abcscanf "fcf"switch opcasecase - _case _case __default printf "error"returnprintf "result " c[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]452↙501-23 ↙[正确输出] [正确输出]90 27107参考程序includeint mainchar opscanf "fcf"aopbswitch opcase c abbreakcase -c a-bbreakcase c abbreakcase c abbreakdefaultprintf "error"breakprintf "result 2f"c8实验5 循环结构程序设计一一实验目的1熟悉掌握用while 语句do-while 语句和for 语句实现循环的方法2 掌握在程序设计中用循环实现一些常用算法如穷举迭代递推等二实验内容[题目1024计算阶乘]输入正整数n计算n 结果用长整型数表示注n 123n[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]5 ↙8 ↙[正确输出] [正确输出]120 40320参考程序includemainlong in 1ascanf "ld"afor i 1i ai n niprintf "ld\n"n[题目1025计算数列和]有数列1357911现要求由键盘输入n计算输出该数列的前n 项和[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]2 ↙ 5 ↙[正确输出] [正确输出]4 259参考程序includemainlong nsum 0it 1scanf "ld"nfor i 1i nisum sumtt t2printf "ld\n"sum或includemainlong nsumscanf "ld"nsum nnprintf "ld"sum注评判系统不对程序实现细节进行分析只对运行结果进行评测[题目1026 加一行字符中的数字]由键盘输入一行字符总字符个数从1 个至80 个均有可能以回车符表示结束将其中每个数字字符所代表的数值累加起来输出结果[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]abc123↙A6H7T65↙[正确输出] [正确输出]6 24[提示] 1可以使用下面程序段逐个读入键盘输入的一行字符char chwhile ch getchar \n2 数字字符转为对应的数值可用a ch-0参考程序includemainchar cint s 0awhile c getchar \nif c 0c 9a c-48s saprintf "d"s10[题目1029求最大公约数]由键盘输入两个正整数mn mn 用长整数表示计算它们的最大公约数[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]1624↙1725↙[正确输出] [正确输出]8 1[提示]公约数是既能整除m 又能整除n 的数题目要求满足这一条件的最大的一个参考程序includemainlong rmntempscanf "ldld"mnwhile m 0r nmn mm rprintf "ld\n"n或includemainlong mntisscanf "ldld"mnt m nnmfor i t-1i 1i--if mi 0ni 0s i breakprintf "d"s[题目1030字符变换]由键盘输入一个句子总字符个数从1 个至80 个均有可能以回车符表示结束将其中的大写字符变成小写其它类型的字符不变最后输出变换后的句子[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]How Are You ↙ThiS IS My fIrSt C ProgrAm ↙[正确输出] [正确输出]how are you this is my first c program11参考程序includemainchar cwhile c getchar \nif c Ac Zc c32putchar c[题目1037计算数列和]有数列编程实现由键盘输入n计算输出数列前n 项和结果保留四位小数[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]20 ↙30 ↙[正确输出] [正确输出]326603 880403参考程序includemainint itnfloat a 2b 1s 0scanf "d"nfor i 1i nis sabt aa abb tprintf "4f\n"s[题目1044输出最小值]从键盘输入十个整数输出最小值[ 自测数据][键盘输入]12 45 76 87 5 87 43 55 99 21 ↙[正确输出]512参考程序include "stdioh"mainint itminscanf "d" minfor i 1i 10iscanf "d" tif t min min tprintf "d\n"min*[题目1031统计单词个数]由键盘输入一个句子总字符个数从1 个至80 个均有可能以回车符表示结束以空格分割单词要求输出单词的个数[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]How Are You ↙There are many students and many[正确输出] trees↙3 [正确输出]7参考程序includemainint inum 0word 0char cfor i 0 c getchar \niif c word 0else if word 0word 1numprintf "d"num*[题目1042百万富翁]一个百万富翁遇到一个陌生人陌生人找他谈了一个换钱的计划该计划如下我每天给你m 元而你第一天只需给我一分钱第二天我仍给你m 元你给我2 分钱第三天我仍给你m 元你给我4分钱依次类推你每天给我的钱是前一天的两倍直到一个月38 天百万富翁很高兴欣接受这个契约现要求编写一个程序由键盘输入m计算多少天后百万富翁开始亏钱[第一组自测数据] 18[键盘输入] [第二组自测数据]100↙[键盘输入][正确输出] 10000↙13[正确输出] 25参考程序includeincludemainint nmiscanf "d"mfor i 1i 38iif 001 pow 2i-1 -1 -im 0 breakprintf "d"i-114实验6 循环结构程序设计二一实验目的1进一步熟悉掌握用while 语句do-while 语句和for 语句实现循环的方法2 掌握在程序设计中使用多重循环二实验内容[题目1028求素数]输出2 到200 之间包括2 200 的所有素数注要求1 行1 个素数按由小到大的顺序输出[提示]采用双重循环外层循环产生2 到200 之间的数内层循环对数进行判断是否为素数参考程序includeincludemainint mkifor m 2m 200mk sqrt mfor i 2i kiif mi 0 breakif i k printf "d\n"m[题目1035打印菱形]由键盘输入正数n要求输出2n1 行的菱形图案要求菱形左边紧靠屏幕左边[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]3 ↙ 2 ↙[正确输出] [正确输出]15参考程序include "stdioh"include "mathh"mainint nijkscanf "d"nfor i 1i 2n1ik abs n1-ifor j 1j kj printf " "for j 1j 2n1-2kj printf ""printf "\n"[题目1038打印图案]由键盘输入正数n要求输出中间数字为n 的菱形图案要求菱形左边紧靠屏幕左边[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]4 ↙ 3[正确输出] [正确输出]1 1121 121 12321 12321 1234321 121 12321 1 1211参考程序includeincludemainint nijkhscanf "d"nfor i -n1i n-1ifor j 0j abs i jprintf " "for k 1k n-abs i k printf "d"kfor h n-abs i -1h 1h-- printf "d"hprintf "\n"16实验7 数组一实验目的1掌握一维数组和二维数组的定义赋值和输入输出方法2 掌握与数组有关的算法二实验内容[题目1039倒序]由键盘输入10 个整数倒序输出数字间由一个空格分隔[ 自测数据][键盘输入]70 5 14 20 19 2 99 67 13 66 ↙[正确输出]66 13 67 99 2 19 20 14 5 70参考程序includemainint a [10]int ifor i 0i 10i scanf "d"a[i]for i 9i 0i-- printf "d\n"a[i][题目1040统计不同数字个数]由键盘输入20 个整数统计不同数字的个数[ 自测数据][键盘输入]70 5 14 22 19 2 99 67 13 66 5 93 44 38 22 11 39 22 33 11↙[正确输出]16[提示]上述答案中因为5 有1 个重复数字11 有1 个重复数字22 有2 个重复数字故不同数字有16个分别是70 5 14 22 19 2 99 67 13 66 93 44 38 11 39 3317参考程序include"stdioh"mainint a [20]int itp 0for i 0i 20iscanf "d"a[i]for t 0t itif a[t] a [i] breakif t ipprintf "d"p[题目1062打印矩阵]由键盘输入一个3×4 的矩阵要求输出它的转置矩阵[ 自测数据][键盘输入] [正确输出] 1 6 9 3 1 1 11 1 02 6 1 91 9 8 9 9 0 83 2 9参考程序includemainint a [3][4]b[4][3]ijfor i 0i 3ifor j 0j 4jscanf "d"a[i][j]b[j][i] a [i][j]for i 0i 4ifor j 0j 3jprintf "d "b[i][j]printf "\n"*[题目1047冒泡排序]由键盘输入10 个数用冒泡法对10 个数从小到大排序并按格式要求输出代码如下请填充完整数字间由一个空格分隔incude "stdioh"mainint a[10] i j t18for i 0i 10iscanf "d"___________for ___________for j 0j ____jif ______________________for i 0i 10iprintf "d "a[i][ 自测数据][键盘输入]70 5 14 20 19 2 99 67 13 66 ↙[正确输出]2 5 13 14 19 20 66 67 70 99参考程序includemainint a [10]int ijtfor i 0i 10iscanf "d"a[i]for i 0i 9ifor j 0j 9-ijif a[j] a [j1]t a [j] a [j] a[j1] a[j1] tfor i 0i 10iprintf "d "a[i]*[题目1046计算高精度加法]由键盘输入两个位数很长的整数一行一个数每个数最长不超过80 位试计算并输出这两个数的和[ 自测数据][键盘输入]1XXXXXXXXXX23456789 ↙987654321098765 ↙[正确输出]1XXXXXXXXXX4455555419参考程序include "stdioh"include "stringh"mainint a [100] 0 b[100] 0 c[100] 0char s[101]int i 0n1 0n2 0 0e 0gets sn1 strlen sfor i n1-1i 0i-- a[n1-1-i] s[i]-0gets sn2 strlen sfor i n2-1i 0i-- b[n2-1-i] s[i]-0if n1 n2 n1else n2for i 0i ic[i] a[i]b[i]e 10e a[i]b[i]e 10if c[] 0 printf "d"c[]for i -1i 0i--printf "d"c[i]*[题目找矩阵中的鞍点]由键盘输入一个3 ×4 3 行4 列的矩阵输出矩阵中的鞍点即在矩阵行中最大列中最小的数若没有鞍点输出NO 字样[ 自测数据][键盘输入]87 90 110 98 ↙70 97 210 65 ↙98 45 120 30 ↙[正确输出]11020参考程序includemainint ijka[3][4]jflagfor i 0i 3ifor j 0j 4jscanf "d"a[i][j] for i 0i 3ia [i][0]j 0for j 0j 4jif a[i][j]a [i][j] j jflag 1for k 0k 3kif a [k][j]flag 0 breakif flagprintf "d" breakif flagprintf "NO"21实验8 字符数组的应用一实验目的1掌握字符数组和字符串函数的使用2 掌握与字符串处理有关的算法二实验内容[题目1121定义存贮字符串的字符数组]在下面程序中填充定义字符数组的语句使程序完整include "stringh"void mainchar s[80] 定义字符数组sstrcpy s "abcdefghij klmn"printf "s" s参考程序[题目1123字符串的输入与输出]下面程序实现从键盘读入字符串后输出到屏幕请填充必要的语句include "stdioh"void mainchar s[50]printf "Whats your name"gets s 由键盘读入字符串printf "Your name is "printf "s" s 打印字符串参考程序[题目1122字符串的合并]从键盘输入3 个字符串每个字符串以回车符做为结束标志将3 个字符串以输入先后顺序合并到字符串s 中请填空使用程序完整include "stdioh"include "stringh"mainchar s[100] ""char a [30]gets a strcat s a22gets a strcat s agets a strcat s a可以写多行代码printf "s" s[ 自测数据][键盘输入] [正确输出]123 123abc456abc456参考程序[题目1050寻找字符串]由键盘输入两个字符串假设第一个字符串必包含第二个字符串如第一个字符串为ABCDEF第二个为CDE则CDE 包含在ABCDEF 中现要求编程输出第二字符串在第一行字符串中出现的位置如果第二个字符串在第一个字符串中出现多次则以最前出现的为准[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]ABCDEFG ↙hellhello ↙DE ↙hello ↙[正确输出] [正确输出]4 5[提示]方法1建立双重循环外层循环变量指示第一个串的查找起始位置内层循环从起始位置开始判断第二个字符中是否出现在此处方法2 使用字符串函数strstr参考程序include "stdioh"mainint ijchar a [80] b[80]gets a gets bfor i 0a[i] \0ifor j 0b[j] \0jif a[ij] b[j] breakif b[j] \0 breakif a[i] \0 printf "d"i1else printf "Not Found"23实验9 函数的基本应用一实验目的1掌握定义函数的方法2 掌握函数实参与参的对应关系以及值传递的方式3 掌握函数的嵌套调用和递归调用的方法4 掌握全局变量和局部变量动态变量静态变量的概念和使用方法二实验内容[题目1059函数定义]下面是使用辗转相除法求最大公约数的程序请补充完整程序中函数的定义与调用include "stdioh"int f int m int nint rwhile r mn 0m nn rreturn nmainint a b nscanf "dd" a bprintf "d\n" f a b[题目1083编写函数计算阶乘]下面程序实现由键盘读入整数n计算并输出n 请补充完整计算阶乘的函数long fanc int along in 1for i 1i ai n nireturn nvoid mainint nscanf "d" n24printf "ld" fanc n[题目1124函数中的变量]写出下面程序的运行结果int f1 int xstatic int z 3y 0yzreturn xyzmainint a 1kfor k 0k 3k printf "4d"f1 a 程序运行结果为6 8 10*[题目1084编写递归调用函数实现十进制数转二进制数]下面程序实现由键盘输入一个正整数不大于100000000 输出其对应的二进制数原码表示请填空include "stdioh"void fun int iif i 1fun i2printf "d" i2mainint nscanf "d" nfun n25实验10 指针与结构体一实验目的1通过实验进一步掌握指针的概念会定义和使用指针变量2 能正确使用数组的指针和指向数组的指针变量3 能正确使用字符串的指针和指向字符中的指针变量4 掌握结构体类型变量的定义和使用二实验内容[题目1091交换两数由大到小输出]下面程序交换两数使两数由大到小输出请填空include "stdioh"void swap int p1 int p2int temptemp p1p1 p2p2 tempint mainint ab int papbscanf "dd" a bpa a pb bif a b swap pa pbprintf "d d\n"ab[题目1065数组中的指针]设有如下数组定义int a[3][4] 1357 9111315 17192123计算下面各项的值设数组a 的首地址为2000一个int 类型数占四个字节注意地址则输出地址变量则输出变量值要求一行一个答案不允许多余空行及空格1a[2][1] 2 a[1] 3 a 4 a 15 a 16 a 17 a[2] 18 a 1 19 a2 226参考程序include "stdioh"mainprintf "19\n"printf "2016\n"printf "2000\n"printf "2016\n"printf "2004\n"printf "2016\n"printf "2036\n"printf "2020\n"printf "21"[题目1092函数实现求字符串长度]下面程序以指针方式传递参数由函数实现求字符串长度请填空完成include "stdioh"include "stringh"int f char preturn strlen pint mainchar s[80]int iscanf "s" si f sprintf "d" i[题目1125定义结构体类型]要求定义一个名为student 的结构体类型其包含如下成员1字符数组name 最多可存放10 个字符2 字符变量sex用于记录性别3 整数类型变量num用于记录学号4 float 类型变量score 用于记录成绩并使下列代码完整定义结构体类型struct studentchar name[20]char sex。
C语言上机实验报告 (1)
青岛理工大学课程实验报告步骤调试过程及实验结果1 2总结掌握了掌握C语言基本数据类型,变量的定义及变量的初始化和赋值操作,不同的类型数据之间赋值的规律。
了解了C语言的算术运算符的使用以及算术表达式的使用,自加自减运算符的特点及使用。
附录实验一 1#include<>void main(){int a,b,s;scanf("%d%d",&a,&b);printf("s=%d\n",a+b);}实验一 2#include<>#include<>void main(){double a,b,c,d,x1,x2;printf("a b c :");scanf("%lf%lf%lf",&a,&b,&c);d=b*b-4*a*c;if (d<0)printf("无解\n");else if (d==0){x1=(-b)/(2*a);printf("一个解:x=%g\n",x1);}else{x1=(-b+sqrt(d))/(2*a);x2=(-b-sqrt(d))/(2*a);printf("两个解:x1=%g,x2=%g\n",x1,x2);}}青岛理工大学课程实验报告课程名称计算机程序设计 (C) 班级软件 111 实验日期姓名赵亚东学号实验成绩实验名称实验二选择结构程序设计实验目的及要求1.掌握赋值语句的使用方法。
2.掌握各种类型数据的输入输出方法,能正确使用各种格式转换符。
3.能正确使用关系运算符及表达式、逻辑运算符及表达式。
4.熟练掌握if语句,学会使用if-else语句设计双分支和多分支结构程序。
5.熟练掌握switch语句的特点,学会使用switch语句设计多分支结构程序。
实验环境Visual ++ Windows 7实验内容3.编写程序,根据输入的学生成绩,给出相应的等级。
C语言上机试验1
(6)同时输入多个数据。新建一个文件,在TC中输入下面的程序代码:
main( )
{ int a;
float b,c;
scanf("%d%f%f",&a,&b,&c);
(2)练习使用scanf函数获取长整型数据。将上一个例子改为如下:
main( )
{ long a;
scanf("%ld",&a);
printf("%d\n",a*10);
}
注意,%ld中的l是字母l,不是数字1。运行程序,输入数据,看看程序的运行结果,然后将scanf函数中的格式控制符%1d改为%d,即将scanf函数改为:
实验一 熟悉C语言
实验要求:
1、能够熟练使用VC 6.0开发环境;
2、理解C语言顺序结构;熟练掌握printf函数和scanf函数的使用方法。
特别要求:
在实验中遇到困难时,切忌不要动不动就问老师,而是应该先思考。如果确实不能解决困难,先与坐在旁边的同学讨论,而无论这个同学在以前是否认识。如果有同学问你问题,无论你是否能解决这个问题,都应该和他讨论。如果讨论了仍然不能解决问题,就一起问老师。讨论问题的好处在于能够深刻的理解问题,记住问题。
printf("%u\n",a);
}
用笔把-1在两个字节中的补码计算出来,在与程序第二个输出结果进行比较,想想为什么。
2、练习scanf函数
(1)练习使用scanf函数从键盘输入整型数据。新建一个文件,在TC中输入下面的程序代码:
c语言上机实验报告
实验报告(一)C程序的运行环境及运行方法一、实验目的:1.了解所用计算机系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个c程序。
3.通过运行简单的C程序,初步了解C程序的特点。
二、操作步骤:1.进入Turbo C编译环境2. 输入源程序3. F2保存4. F9调试{若出现警告或错误,则按任意键返回修改,然后再保存(F2),再调试(F9)}5. Ctrl+f9运行程序6. Alt+f5切换到用户界面查看运行结果。
三、具体实验及结果分析实验一#include "stdio.h"int main (){printf("This is a C program.\n");return(0);}输入以上程序无错误,无警告,显示结果为;this is a C program.实验二#include "stdio.h"int main(){int a,b,sum;a=123;b=456;sum=a+b;printf("sum is %d\n",sum);return(0);}输入上述程序,无警告无错误,运行结果:sum is 579实验三#include "stdio.h"int main(){int a,b,c;scanf("%d %d",&a,&b);if(a>b)c=b;else c=a;printf("min=%d\n",c);return(0);}按上程序切换到用户界面后,输入15 21按enter,显示min=15;实验四#include "stdio.h"int main(){printf("********************\n");printf("This is a C program!\n");printf("********************\n");return(0);}运行结果:********************This is a C program!********************实验总结:1、写程序一定要注意细节,括号的完整性,分号,引号,单词的准确性。
C语言上机实验报告
青岛理工大学课程实验报告实x1=(-b+sqrt(d))/(2*a);x2=(-b-sqrt(d))/(2*a);5、输出结果。
验步骤过程2 及实验结果掌握了掌握C 语言基本数据类型,变量的定义及变量的初始化和赋值操作,不同的类型数据之间赋值的规律。
总了解了C语言的算术运算符的使用以及算术表达式的使用,自加自减运算符的特点及使用。
结实验一 1#include<> 附void main() 录{int a,b,s;scanf(%d%d,&a,&b);printf(s=%d\n,a+b);}实验一2#include<>#include<>void main(){double a,b,c,d,x1,x2;printf(a b c :);scanf(%lf%lf%lf,&a,&b,&c);d=b*b-4*a*c;if (d<0)牰湩晴尨无解\n);else if (d==0){x1=(-b)/(2*a);牰湩晴尨一个解:x=%g\n,x1); }青岛理工大学课程实验报告调试3 过验结 果掌握了赋值语句的使用方法,各种类型数据的输入输出方法,能 正确使用各种格式转换符、关系运算符及表达式、总 逻辑运算符及表达式。
掌握了if 语句,学会使用结 if-else 语句设计双分支和多分支结构程序;掌握了switch 语句的特点, 学会使用switch 语句设计多分支结构程序 实验二 3附用 if 录 语句:#include<>void main(){int a;牰湩晴尨请输入学生成绩:\n);scanf(%d,&a);if (a>90)牰湩晴尨该学生成绩等级是 A\n);else if (a>80)牰湩晴尨该学生成绩等级是 B\n);else if (a>70)牰湩晴尨该学生成绩等级是C\n); else if (a>60)牰湩晴尨该学生成绩等级是D\n); else牰湩晴尨该学生成绩等级是E\n); }用switch 语句:#include<>void main(){int a,m;学理工大青岛课程实验报告课程实验日2012-5-2计算机程序设111软件班级期名称(C)计实验成9学号赵亚东姓名绩实验循环结构程序设计实验三名称实for语句的特点,学会设计循环结构程序。
C语言课程设计上机实习内容.(共5篇)
C语言课程设计上机实习内容.(共5篇)第一篇:C语言课程设计上机实习内容.C语言课程设计上机实习内容一、程序设计题目:简单的学生成绩管理程序设计二、程序设计功能及要求:1、原始数据输入和结果输出要求使用文件存放;2、计算每个学生三门功课的平均分,并按平均分排列名次,若平均分相同则名次并列;结果写入文件。
3、统计全班每门课程的平均分,并计算各分数段(60以下,60~69,70~79,80~89,90以上)的学生人数;结果写入文件。
4、按格式在屏幕上打印每名学生成绩条;5、在屏幕上打印出所有不及格学生的下列信息:学号,不及格的课程名,该不及格课程成绩;6、(选做)在屏幕打印优等生名单(学号,三门课程成绩,平均成绩,名次),优等生必须满足下列条件:1)平均成绩大于90分;或平均分大于85分且至少有一门功课为100分;或者平均分大于85分且至少两门课程成绩为95分以上;2)名次在前三名3)每门功课及格以上;(若完成选做题,课程设计成绩将给予加分)三、文件格式1、原始数据文件格式(具体数据自行编写)学号姓名英语C语言高等数学张三李四….….….2、输出数据文件(由程序自动生成)1)学生综合成绩文件。
(由程序自动生成)学号姓名英语 C语言高等数学平均成绩名次张三 76 89 78 80.5 5 李四….….….3 ….2)统计结果文件。
分数段英语C语言高等数学<60…60~69…70~79…80~89…>=90 …平均成绩75.5 …四、实习报告要求1、程序分析和设计2、流程图3、源程序清单4、调试过程: 测试数据及结果,出现了哪些问题,如何修改的5、程序有待改进的地方。
6、本次实习的收获和建议。
第二篇:C语言上机实习报告一、实验目的1.能够描述VC++6.0开发平台的使用过程,学会运行一个C程序的基本步骤,包括编辑、编译、链接和运行。
2.能够使用算术表达式和赋值表达式书写正确的语句。
3.能够使用输入/输出函数编写简单的程序。
C语言程序设计 上机实验指导与习题 参考答案(第四版)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
C语言上机实验
实验六 指针程序设计
一、目的与要求
1、通过实验进一步掌握指针的概念,会定义和使用指针变量; 2、能正确使用数组的指针和指向数组的指针变量; 3、能正确使用字符串的指针和指向字符串的指针变量; 4、能正确使用指向函数的指针变量; 5、了解指向指针的指针的概念及其使用方法。
二、实验内容
1、编写子函数,对传送过来的三个数按由小到大的顺序排列,并通过形参传回调用函数。 2、编写函数int find(int *p,int n,int x),在指针p所指的数组中查找整型数x,如果x在数组 中,则该函数返回1,否则返回0。n为数组的大小。 3、有n个整数,使前面各数顺序向后移m个位置,最后 m个数变成最前m个数(如下图所示)。写一函数实现 以上功能,在主函数中输入n个整数和输出调整后的 n个整数。 4、在主函数中输入10个不等长的字符串。用另一个函数对它们按升序排序,然后在主函 数中输出这10个已排序的字符串。 5、用指针型指针对五个字符串进行排序,并将排序后的结果按顺序输出。 6、编写一程序,统计从键盘输入的命令行中第二个参数所包含的英文字符个数。
三、实验结果分析
对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。
实验四、数组程序设计
一、实验目的及要求
1.掌握一维、二维数组的定义、赋值和输入输出的方法; 2.掌握字符数组的使用; 3.掌握与数组有关的算法(例如排序算法)。
二、实验内容
1、给整型二维数组 b[3][4]输入12个数据,计算并输出数组中所有正数之和、所有负数之和。 2、青年歌手参加歌曲大奖赛,有10个评委进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。 分析:这道题的核心是排序。将评委所打的10个分数利用数组按增序(或降序)排列,计算数组中除第一个和最后一个 分数以外的数的平均分。 3、设二维数组 b[5][4]中有鞍点,即b[i][j]元素值在第i行中最小,且在第j列中最大,试编写一程序找出所有的鞍点,并输 出其下标值。也可能没有。 4、从键盘输入一数,然后在一个整型一维数组a[20]中,用折半查找法找出该数是数组中第几个元素的值。如果该数不在 数组中,则打印”No found”。 5、编程打印如下图形: * * * * * * * * 6、有一电文,已按下列规律译成译码: A→Z a→z B→Y b→y C→X c→x 即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。编写一个程序将密码译成原文,并输 出密码和原文。
C语言程序设计上机实验(一)
C语言程序设计上机实验(一)[实验目的](1)了解和熟悉VC++ C程序开发环境;(2)了解C语言的程序结构,掌握C语言基本数据类型的说明方法、表示范围及数据类型的自动转换规则,编写简单的C程序;(3) 掌握格式化输入/输出函数printf( )和scanf( )的基本使用方法。
[实验内容](1)编程,读入三个数,计算并输出它们的平均值及三个数的乘积。
程序内容://计算三个数的平均值与乘积#include <stdio.h>void main(){float a,b,c,product,average;printf("请输入三个数:\n");scanf("%f,%f,%f",&a,&b,&c);average=(a+b+c)/3;product=a*b*c;printf("a=%f b=%f c=%f\n",a,b,c);printf("average=%f\nproduct=%f\n",average,product);}运行结果:(2)编程,读入一个三位整数,将其反向输出。
例如输入123,输出为321。
程序内容://将一个三位整数反向输出,例如输入123,输出321#include<stdio.h>void main(){int a,b,c,d,e;printf("请输入一个三位整数:\n");scanf("%d",&a);b=a/100;c=a/10%10;d=a%10;e=d*100+c*10+b;printf("反向输出结果为:\n");printf("%d\n",e);}运行结果:(3) 已知三角形的三边A、B、C,可求出该三角形面积S。
公式为:其中程序内容://计算三角形面积#include<stdio.h>#include<math.h>void main(){float a,b,c,p;double s;printf("请输入三角形三边长(中间用逗号隔开):\n");scanf("%f,%f,%f",&a,&b,&c);p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c));printf("该三角形面积为:\n");printf("s=%f\n",s);}运行结果:1/2() P A B C =++S P P A P B P C =---()()()。
c的上机实验报告
c的上机实验报告C的上机实验报告一、实验目的本次实验的目的是通过上机实践,加深对C语言基本知识的理解和掌握,提高编程能力和解决问题的能力。
二、实验环境本次实验使用的是C语言开发环境,具体配置如下:操作系统:Windows 10开发工具:Code::Blocks 17.12编译器:GNU GCC Compiler三、实验内容与步骤1. 实验内容本次实验包括以下几个方面的内容:a) C语言基本语法的练习b) 数组和指针的应用c) 流程控制语句的使用d) 函数的定义和调用e) 文件操作的实践2. 实验步骤a) 编写一个简单的程序,要求用户输入两个整数,然后输出它们的和、差、积和商。
b) 编写一个程序,实现从键盘输入一组整数,然后按照从小到大的顺序输出。
c) 编写一个程序,实现从键盘输入一个整数n,然后计算并输出n的阶乘。
d) 编写一个程序,实现从键盘输入一个字符串,然后将其逆序输出。
e) 编写一个程序,实现从文件中读取一组整数,然后按照从小到大的顺序输出到另一个文件中。
四、实验结果与分析1. 实验结果经过实验,我们得到了以下结果:a) 用户输入的两个整数为5和3,程序输出它们的和为8,差为2,积为15,商为1.6667。
b) 用户输入的一组整数为{3, 1, 4, 2, 5},程序输出排序后的结果为{1, 2, 3, 4, 5}。
c) 用户输入的整数n为5,程序输出n的阶乘为120。
d) 用户输入的字符串为"Hello World!",程序输出逆序后的结果为"!dlroW olleH"。
e) 程序成功从文件中读取了一组整数,并按照从小到大的顺序输出到了另一个文件中。
2. 结果分析通过实验结果可以看出,我们编写的程序能够正确地实现所需的功能。
这说明我们对C语言的基本语法、数组和指针、流程控制语句、函数定义和调用、文件操作等方面有了一定的掌握。
五、实验心得通过本次实验,我对C语言的基本知识有了更深入的理解和掌握。
《C语言程序设计基础》上机实验报告
《C语言程序设计基础》上机实验报告实验一:C语言程序设计基础
实验目的:熟悉C语言编程环境,掌握C语言程序的基本编写方法。
实验内容:编写一个简单的C语言程序,实现输入两个整数,然后输出它们的和。
实验步骤:
1. 打开C语言集成开发环境(IDE),例如Dev C++、Code::Blocks 等。
2. 创建一个新的C语言项目,命名为“sum”。
3. 在项目中新建一个源文件,命名为“sum.c”。
4.编写C语言程序代码如下:
```c
#include <stdio.h>
int mai
int num1, num2, sum;
printf("请输入第一个整数:");
scanf("%d", &num1);
printf("请输入第二个整数:");
scanf("%d", &num2);
sum = num1 + num2;
printf("两个整数的和为:%d", sum);
return 0;
```
5.保存并编译程序。
6.运行程序,在控制台输入两个整数,程序会输出它们的和。
实验结果:输入第一个整数为5,第二个整数为7,程序输出结果为“两个整数的和为:12”。
实验总结:通过本次实验,我熟悉了C语言程序的基本编写方法,掌握了输入输出操作和基本运算操作的语法规则。
在以后的学习中,我将更加努力地学习C语言,提高编程能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四循环结构程序设计(4学时)一、实验方式:一人一机二、实验目的:1、熟练掌握while语句、do-while语句和for语句。
2、练习并掌握循环结构的嵌套形式。
3、掌握循环结构的程序设计方法。
三、实验内容:说明:前四题为必做题目,后两题为选做题目。
1、从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。
(实验指导书P41)2、求所有的水仙花数。
水仙花数是一个3位数的自然数,该数各位数的立方和等于该数本身。
(实验指导书P42)3、判断输入的某个数是否为素数。
若是,输出YES,否则输出NO。
(实验指导书P167)4、计算π的近似值。
公式如下:π/4=1-1/3+1/5-1/7+……,直到最后一项的绝对值小于10-6为止。
(实验指导书P169)5、计算1!+2!+……+n! 的值,n值由键盘输入。
(实验指导书P176)6、输入10个整数,统计并输出其中正数、负数和零的个数。
四、实验答案:(代码+运行结果截屏)实验五综合实验1:结构化程序设计(2学时)一、实验方式:一人一机二、实验目的:1、进一步掌握选择结构、循环结构的编程特点。
2、掌握C语言的结构化程序设计思想。
3、学习利用循环结构实现的一些常用算法(如穷举、迭代、递推等)。
三、实验内容:说明:前两题为必做题目,后两题为选做题目。
1、编一程序,对于给定的一个百分制成绩,输出对应A,B,C,D,E表示的的等级成绩。
设:90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
(实验指导书P162)2、百马百担问题。
(实验指导书P45)3、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
4、输出如下图案: *************************四、实验答案:(代码+运行结果截屏)实验六函数程序设计(4学时)一、实验方式:一人一机二、实验目的:1、掌握C语言中函数的三要素:函数定义、函数调用和函数说明。
2、掌握通过参数在函数间传递数据的方法。
3、掌握全局变量、局部变量、动态变量、静态变量的概念和使用方法。
三、实验内容:说明:前四题为必做题目,后两题为选做题目。
1、从键盘输入三角形的3条边,调用三角形面积函数求出其面积,并输出结果。
(实验指导书P54)2、输入整数n,输出高度为n的等边三角形。
当n=5时的等边三角形如下:(实验指导书P58)*************************3、输入并运行以下程序,分析运行结果。
#include <stdio.h>int a=5;int b=7;void main( ){ int a=4,b=5,c;c=plus(a,b);printf(“a+b=%d\n”,c);}plus(int x,int y){ int z;z=x+y;return (z);}4、求500以内的所有亲密数对。
若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数对。
(实验指导书P59)5、输入并运行以下程序,分析运行结果。
#include <stdio.h>int d=1;f(int p){ static int d=5;d+=p;printf(“%d ”,d);return (d);}void main( ){ int a=3;printf(“%d ”,f(a+f(d)));}6、设计一个函数,输出整数n的所有素数因子。
(实验指导书P181)四、实验答案:(代码+运行结果截屏)实验七数组程序设计(4学时)一、实验方式:一人一机二、实验目的:1、掌握数组的定义、赋值和输入输出的方法。
2、学习用数组实现相关的算法(特别是排序算法)。
3、掌握C语言中字符数组和字符串处理函数的使用。
三、实验内容:说明:前四题为必做题目,后两题为选做题目。
1、下列程序的功能是:输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。
程序中有几处错误,试找出它们后加以修改,并上机验证修改结果。
#include <stdio.h>void main( ){ int i,n,a[10],avg;for(i=0;i<n;i++)scanf(“%d”,a[i]);for(i=0;i<n;i++){ if(i%3==0) printf(“\n”);printf(“%d ”,a[i]);}for(i=0;i<n;i++)avg+=a[i];printf(“\navg=%f\n”,avg);}2、写一个函数,对输入的10个整数按从小到大的顺序排序(升序,用冒泡排序实现)。
(实验指导书P72)3、编写程序,判断某一字符串是不是“回文数”,回文数是从左至右或从右至左读起来都是一样的字符串。
(实验指导书P77)4、输入一个3行3列矩阵的所有元素,然后求出主对角线元素之和。
5、给定某年某月某日,将其转换成这一年的第几天并输出。
(实验指导书P76)6、编写程序,在有序的数列中查找某数,若该数在此数列中,则输出它所在的位置,否则输出no found。
(实验指导书P189)四、实验答案:(代码+运行结果截屏)实验八指针程序设计(2学时)一、实验方式:一人一机二、实验目的:1、通过实验进一步掌握指针的概念,会定义和使用指针变量。
2、能正确使用指向数组和字符串的指针变量。
3、熟悉指针作为函数参数的编程特点。
三、实验内容:说明:前两题为必做题目,后一题为选做题目。
要求用指针方法实现。
1、输入3个整数,按从小到大的次序输出。
(实验指导书P201)2、数据交换。
实验要求:1)定义两个函数,分别为void swap1(int a,int b)和voidswap2(int *a,int *b),用于交换a,b的值。
2)从主函数中分别输入两个整型变量a、b。
3)从主函数中分别调用上述两个交换函数,并打印输出交换后a、b的结果。
(实验指导书P90)3、编写一个程序计算字符串长度的函数,模拟C的<string.h>函数库内的计算字符串长度的函数strlen( )。
四、实验答案:(代码+运行结果截屏)实验九综合实验2:函数、数组、指针的综合应用(2学时)一、实验方式:一人一机二、实验目的:1、进一步掌握通过指针引用数组元素的方法。
2、综合运用函数、数组、指针的知识,实现复杂程序的编程。
3、掌握调试复杂程序的技巧。
三、实验内容:说明:前两题为必做题目,后两题为选做题目。
要求用指针方法实现。
1、数组元素奇偶排列。
实验要求:1)定义一个整型一维数组,任意输入数组的元素,其中包含奇数和偶数。
2)定义一个函数,实现将数组元素奇数排列在左,偶数排列在右的排列。
3)在上述定义的函数中,不允许再增加新的数组。
4)从主函数中分别调用上述函数,打印输出结果。
(实验指导书P93)2、编写函数lower( )模拟标准函数strlwr( ),调用形式为lower(char *st),其作用是将字符串st中的大写字母转换成小写。
(实验指导书P193)3、编写函数,比较两个字符串是否相等(用指针完成)。
(实验指导书P204)4、编写函数reverse( )模拟标准函数strrev( ),调用形式为reverse(char *st),其作用是颠倒字符串st的顺序,即按与原来相反的顺序排列。
(实验指导书P194)四、实验答案:(代码+运行结果截屏)实验十综合实验3:结构体、文件程序设计(6学时)一、实验方式:一人一机二、实验目的:1、掌握结构体类型变量的定义和使用。
2、掌握结构体类型数组的概念和使用。
3、学会使用文件打开、关闭、读、写等文件操作的函数。
三、实验内容:说明:前三题为必做题目,后一题为选做题目。
1、在选举中进行投票,包含候选人姓名、得票数,假设有多位候选人,用结构体数组统计各候选人的得票数。
(实验指导书P100)2、编写一个学生信息排序程序。
要求:1) 程序运行时可输入n个学生的信息和成绩(n预先定义)。
2) 学生信息包括:学号、姓名;学生成绩包括:高等数学、物理、计算机。
3) 给出一个排序选择列表,能够按照上述所列信息(学号、姓名、高等数学、物理、计算机)中的至少一个字段进行排序,并显示其结果。
4) 使用函数方法定义各个模块。
3、将磁盘上一个文本文件的内容复制到另一个文件中。
(实验指导书P118)4、从键盘输入一行字符串,将其中的小写字母全部转换成大写字母,输出到一个磁盘文件“test.dat”中保存,然后读出并输出在屏幕上。
(实验指导书P123)四、实验答案:(代码+运行结果截屏)。