实验三简单的C程序设计
C语言程序设计实验3
一、实验目的1. 掌握简单的程序设计,能正确写出顺序结构的源程序。
2. 掌握数据的输入输出方法,能正确使用各种格式转换符。
二、实验内容(程序清单及运行结果)(一)阅读程序1.先读下列程序,写出程序运算结果,再将该程序输入并运行,观察运行结果与你所写的结果是否相同。
①int main(){ int x,y,z;x=y=2;z=3;y=x++-1; printf("%d\t%d\t",x,y);y=++x-1; printf("%d\t%d\t",x,y);y=z--+1; printf("%d\t%d\t",z,y);y=--z+1; printf("%d\t%d\n",z,y);return 0;}②int main(){ char c1='a',c2='b',c3='c',c4='\101',c5='\116';printf("a%cb%c\tc%c\tabc\n",c1,c2,c3);printf("\tb%c%c",c4,c5);return 0;}2.以下各程序需要输入数据,请写出输入数据的格式和变量的值并上机验证。
①#include <stdio.h>int main(){ int a,b,c;printf("input a,b,c\n");scanf("%d%d%d",&a,&b,&c);printf("a=%d,b=%d,c=%d",a,b,c);return 0;}②main(){ int i, j;printf("i, j=?\n");scanf("%d, %d", &i, &j);}③scanf(“%d,%*d,%d”,&a,&b);若输入:3,4,5a=? b=?④scanf(“%3d%2d”,&a,&b);若输入:12345a=?b=?⑤按格式要求输入/输出数据#include "stdio.h"int main(){ int a,b;float x,y;char c1,c2;scanf(“a=%d,b=%d”,&a,&b);scanf(“%f, %e”,&x,&y);getchar();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);return 0;}运行该程序,必须按如下方式在键盘上输入数据a=3,b=7 ↙8.5,71.82 ↙a A ↙请同学们写出输出结果(二)完成程序要求:按照给定题目要求,参照出现的语句,填写程序空白处。
c程序设计 实验报告
c程序设计实验报告C程序设计实验报告引言:C程序设计是计算机科学中一门重要的编程语言,广泛应用于软件开发、系统编程等领域。
本实验报告旨在总结并分析我在C程序设计实验中的学习经验和成果。
实验一:基本语法和数据类型C语言作为一门结构化的编程语言,具有丰富的语法和数据类型。
在本实验中,我学习了C语言的基本语法,包括变量的声明和赋值、运算符的使用以及条件语句和循环语句的控制流程。
通过编写简单的程序,我熟悉了C语言的基本语法和数据类型的使用。
实验二:函数和指针函数是C语言中的重要概念,通过函数的封装和调用,可以实现程序的模块化和复用。
在本实验中,我学习了函数的定义和调用,了解了函数的参数传递和返回值的使用。
同时,我还学习了指针的概念和用法,掌握了指针变量的声明和指针运算的基本操作。
通过实验练习,我对函数和指针的使用有了更深入的理解。
实验三:数组和字符串数组和字符串是C语言中常用的数据结构,对于处理大量数据和字符操作非常重要。
在本实验中,我学习了数组的定义和使用,了解了数组的下标和内存分配的原理。
同时,我还学习了字符串的表示和处理方法,掌握了字符串的输入输出和常见操作函数的使用。
通过实验练习,我对数组和字符串的应用有了更深入的认识。
实验四:结构体和文件操作结构体是C语言中用于组织和管理复杂数据的一种方式,文件操作则是处理外部文件的重要技术。
在本实验中,我学习了结构体的定义和使用,了解了结构体成员的访问和结构体数组的操作。
同时,我还学习了文件的打开、读写和关闭操作,掌握了文件指针的使用和文件读写的基本流程。
通过实验练习,我对结构体和文件操作的应用有了更深入的了解。
实验五:动态内存分配和链表动态内存分配和链表是C语言中高级的数据结构和算法,对于处理动态数据和实现复杂逻辑非常重要。
在本实验中,我学习了动态内存分配的方法和使用,了解了malloc和free函数的原理和使用。
同时,我还学习了链表的定义和操作,掌握了链表的插入、删除和遍历等基本操作。
C语言程序设计
C语言程序设计上机实验报告实验一一、实验名称: C程序的运行环境和运行C程序的方法二、实验目的:了解在C编译系统上如何编辑、编译、连接和运行一个C程序三、实验内容:(1). 输入并运行一个简单的C程序。
(2). 设计程序,对给定的两个数求和。
(3). 设计程序,对给定的两个数进行比较,然后输出其中较大的数。
四、源程序代码:代码1:#include<stdio.h>int main(){printf("hello world!\n");return 0;}运行结果1:程序分析1:代码2:#include<stdio.h> int main(){int a=5,b=6,c;c=a+b;printf("c=%d\n",c);return 0;}运行结果2:程序分析2:代码3:#include<stdio.h>int main(){int a=5,b=6,c;if(a>b){c=a;}else{c=b;}printf("%d\n",c);return 0;}运行结果3:程序分析3:五.实验总结C语言程序设计上机实验报告实验二一、实验名称:顺序结构程序设计二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法,熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。
三、实验内容:(1). 编写程序,实现小写字母转大写。
(2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。
(3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。
(4). 编写程序,实现单字符getchar和putchar输入输出。
(5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。
四、源程序代码代码1:#include<stdio.h>int main(){char c1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1-32;printf("%c,%d\n",c2,c2);return 0;}运行结果1:程序分析1:代码2:#include<stdio.h>int main(){int a=5,c1,c2;double b=3.141592653,c3,c4;c1=a/b;c3=a/b;c2=a+b;c4=a+b;printf("%d,%d,%lf,%lf\n",c1,c2,c3,c4);return 0;}运行结果2:程序分析2:代码3:#include<stdio.h>int main(){here: printf("计算三角形的面积请输入‘1’,立方体的体积和表面积请输入‘2’,圆的面积和周长请输入‘3’.\n");int a;scanf("%d",&a);if(a==1){double l,h,s;printf("请输入三角形的底边长和所在底边的高.");scanf("%lf%lf",&l,&h);s=l*h/2;printf("三角形的面积为%.16f\n",s);}else if(a==2){printf("请输入立方体的长宽高.");double b,c,d,v,s;scanf("%lf%lf%lf",&b,&c,&d);v=b*c*d;s=b*c+b*d+c*d;printf("立方体的体积为%.16f,表面积为%.16f\n",v,s);}else{double r,s,c,m;printf("请输入圆的半径");scanf("%lf",&r);m=3.141592653;s=m*r*r;c=2*m*r;printf("圆的面积为%.16f,圆的周长为%.16f\n",s,c);}goto here;}运行结果3:程序分析3:代码4:#include<stdio.h> int main(){getchar();putchar('b');return 0;}运行结果4:程序分析4:代码5:#include<stdio.h>int main(){int a;printf("请输入任意十进制整数:");scanf("%d",&a);printf("转换为八进制数为:%o\n转化为十六进制数为:%x\n",a,a); return 0;}运行结果5:程序分析5:五、实验总结C语言程序设计上机实验报告实验三一、实验名称:选择结构程序设计二、实验目的:正确使用逻辑运算符和逻辑表达式,熟练掌握if 语句和switch 语句,学习调试程序。
C语言程序设计实验三答案
实验三 选择结构程序设计一、实验目的与要求1. 理解C 语言表示逻辑量的方法,学会正确使用逻辑运算符和逻辑表达式。
2. 掌握利用if 结构实现选择结构的方法。
3. 掌握利用switch 结构实现多分支选择结构。
4. 结合程序掌握一些简单的算法,学习调试程序5. 实验4学时二、实验内容1.程序改错题改正下面程序中的错误。
输入实数x ,计算并输出下列分段函数f(x)的值(保留1位小数)。
)100(1=x x==)(x f y)100(≠x x输入输出示例1(改正后程序的运行结果)Enter x :100f )=输入输出示例2(改正后程序的运行结果)Enter x :23f )=源程序(有错误的程序)#include<>#include<>void main(void){double x;printf("Enter x: \n");scanf("=%f", x);if (x = 100) {y = 1/sqrt(x)}else (x != 100) {y = x;}printf("f(%.2f) = %.1f\n",x,y);}答:#include<>#include<>void main(void){double x,y;printf("Enter x:\n");scanf("%lf",&x);if (x=100)y = 1/sqrt(x);elsey= x;printf("f(%.2lf)=%.1lf\n",x,y);}2.一般编程题编程题1输入任意三个整数a,b,c ,求3个数中的最大值和最小值。
答:#include <>void main(){int a,b,c;printf("请输入三个整数:");scanf("%d %d %d",&a,&b,&c);if (a>=b)t=a,a=b,b=t;if (a>=c)t=a,a=c,c=t;if (b>=c)t=b,b=c,c=t;printf("最小值为:%d\n",a);printf("最大值为:%d\n",c);}编程题2输入x ,计算并输出下面分段函数f(x)的值(保留2位小数)。
《C语言程序设计》实验设计习题答案
《C语言程序设计》实验设计习题答案C语言程序设计是计算机专业的一门基础课程,通过实验设计习题可以帮助学生巩固所学的C语言知识,并提升编程能力。
本文将为您提供《C语言程序设计》实验设计习题的答案,以帮助您更好地理解和掌握相关知识。
实验一:基本输入输出实验题目描述:请编写一个程序,实现输入两个整数并输出其和与积。
```c#include<stdio.h>int main(){int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);int sum = num1 + num2;int product = num1 * num2;printf("和:%d\n", sum);printf("积:%d\n", product);return 0;```实验二:判断奇偶数实验题目描述:请编写一个程序,实现判断输入整数是奇数还是偶数的功能,并输出结果。
```c#include<stdio.h>int main(){int num;printf("请输入一个整数:");scanf("%d", &num);if(num % 2 == 0){printf("%d为偶数\n", num);}else{printf("%d为奇数\n", num);return 0;}```实验三:求和实验题目描述:请编写一个程序,实现输入n个整数并输出其和。
```c#include<stdio.h>int main(){int n, num;int sum = 0;printf("请输入整数的个数:");scanf("%d", &n);for(int i = 0; i < n; i++){printf("请输入第%d个整数:", i+1);scanf("%d", &num);sum += num;printf("和:%d\n", sum);return 0;}```实验四:阶乘实验题目描述:请编写一个程序,实现输入一个整数并输出其阶乘。
C语言程序设计实验指导含答案
C语言程序设计实验指导含答案实验一:C语言程序设计基础实验内容:本实验主要以C语言的基础语法为主,通过一些简单的示例和练习来帮助学生熟悉C语言的基本概念和语法规则。
实验步骤:1. 编写一个简单的C程序,输出"Hello, World!"。
要求程序能够顺利编译并执行。
答案:#include <stdio.h>int main(){printf("Hello, World!");return 0;}2. 基于上一题的程序,修改代码,要求程序输入一个整数,并将其乘以2输出。
答案:#include <stdio.h>int main(){int num;printf("请输入一个整数:");scanf("%d", &num);printf("乘以2的结果为:%d", num * 2);return 0;}3. 编写一个C程序,输入一个圆的半径,计算并输出其面积和周长。
要求保留2位小数。
答案:#include <stdio.h>#define PI 3.14159int main(){float radius;printf("请输入圆的半径:");scanf("%f", &radius);float area = PI * radius * radius;float circumference = 2 * PI * radius;printf("圆的面积为:%.2f\n", area);printf("圆的周长为:%.2f\n", circumference);return 0;}实验二:循环和判断语句实验内容:本实验主要通过不同的练习来帮助学生熟悉和掌握C语言中的循环和判断语句的使用方法。
C语言实验学生版(最新版)
实验一:简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的编译环境和编写过程。
2、掌握C语言程序在Visual C++ 6.0环境下的调试过程。
3、初步了解C语言程序的特点。
4、掌握C语言的数据类型。
三、实验内容:1、计算两个数x和y的和。
(教材P5【例1-2】)2、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。
(实验教材P18)3、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。
(实验教材P27)4、从键盘上输入两个整数x、y,实现两个数的交换,并求出最大值、最小值和两个数的平均值。
(实验教材P21)5、输入并运行以下程序,分析运行结果。
(实验教材P27)#include <stdio.h>void main( ){int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}四、实验程序代码:五、实验运行结果(截图):实验二:顺序结构程序设计(2学时)一、实验方式:一人一机二、实验目的:1、掌握标识符、常量、变量的定义及使用。
2、掌握C语言的常用运算符及表达式。
3、掌握单分支if语句的使用方法。
4、掌握双分支if-else语句的使用方法。
三、实验内容:1、从键盘输入一个3位整数,请输出该数的逆序数。
(实验教材P27)2、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。
(实验教材P27)3、判断箱子是正方体还是长方体。
(实验教材P33)4、有一函数: x (x<1)y= 2x-1 (1≤x<10)3x-11 (x≥10) 编写程序,输入x值,输出y值。
C语言实验报告 实验三 参考答案
实验三循环结构程序设计(参考答案)1、设计程序sy3-1.c,计算并输出n(包括n)以内所有能被5或9整除的自然数的倒数之和。
例如输入n 的值为20时,输出0.583333。
算法分析:穷举1~n(含n)之间的每一个整数,能否被5或者9整除。
如果能,则把它的倒数累加到累加器里去。
因为能被5整除的自然数,应该至少从5才可能,所以循环控制变量i可以5开始。
参考答案:#include<stdio.h>void main(){int n,i;double s=0; //累加器要赋初值为0,结果为小数,所以定义为实数类型printf("请输入n的值:");scanf("%d",&n);for(i=5;i<=n;i++) //穷举小于等于n的自然数if(i%5==0||i%9==0)s=s+1.0/i;// 因为i是整数类型,所以1/i的值为0printf("s=%f\n",s);}运行结果:2、设计程序sy3-2.c,计算并输出给定整数n的所有因子(不包括1与自身)之和。
例如,输入n的值是856时,应输出763。
算法分析:因子,就是能整除n的值。
所以从2到n-1穷举每个数是不是它的因子,是就累加到s中。
参考答案:#include<stdio.h>void main(){int s=0,n,i;printf("请输入n:");scanf("%d",&n);for(i=2;i<n;i++) //穷举所有可能为因子的整数if(n%i==0) //因子即是能整除n的数s=s+i;printf("%d的所有因子之和是:%d\n",n,s);}运行结果:3、设计程序sy3-3.c,输入一个整数,要求将该整数上各位数字是偶数的数取出,并按原来从高位到低位的顺序组成一个新数。
C程序实验 顺序程序设计
实验三顺序程序设计一、实验目的1、熟练掌握C语言中赋值语句的使用方法。
2、掌握格式输入输出scanf()函数、printf()函数的调用方法:整型、实型字符型数据的输入输出格式。
3、掌握字符型输入输出函数getchar()、putchar()函数的调用语法。
二、实验内容与步骤:1、从键盘输入两个0到127的整数,求两数的平方差并输出其值以及这两个整数的ASCⅡ码对应的字符。
程序:#include <stdio.h>void main(){int x,y,sub;scanf("%d%d",&x,&y);sub=x*x-y*y;printf("%c,%c,%d\n",x,y,sub);}结果:从键盘输入"100 50",结果是?100 50d,2,75002、#include <stdio.h>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=3056; e=-6087;f=3157.; g=0.;m=50000; n=60000;p=32768; q=40000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%ld,n=%ld\np=%u,q=%u\n",f,g,m,n,p,q);}(1)运行程序并分析结果。
结果:a=61,b=62c1=a,c2=bd=3056.00,e=-6087.00f= 3157.,g= 0.0m=50000,n=60000p=32768,q=40000分析:a,b为整型变量,按%d输出,得到如上的结果;c1,c2为字符型,按%c输出,得到如上的结果;d,e为单精度浮点型,按%6.2f输出,其中整个数据占6列,小数两列,得到的结果如上;f,g双精度变量,按%15.6f输出,其中整个数据占15列,小数为6列(如全为小数,则小数全部输出),因为位置过宽,所以前面留有空格,结果如上;m,n为长整型,按%ld 输出,得到结果如上;p,q为无符号整型,存储范围增加,因此得到如上结果。
C语言程序设计实验报告
C语言程序设计实验报告一、引言C语言程序设计是计算机科学与技术专业中的一门基础课程。
通过实验学习,我深入了解了C语言的基本语法和程序设计的思想,掌握了一定的编程能力。
本文将详细介绍我在C语言程序设计实验中所进行的实验项目、实验结果和实验心得。
二、实验项目1. 实验一:C语言程序设计基础在这个实验中,我编写了一个简单的C语言程序,实现了对用户输入的两个整数进行相加并输出结果的功能。
在程序设计中,我正确使用了C语言的基本语法,包括变量定义、输入输出函数的调用等。
2. 实验二:条件语句和循环结构这个实验要求我编写一个C语言程序,实现对用户输入的分数进行等级评定的功能。
根据用户输入的分数,程序将输出相应的等级,如优秀、良好、及格等。
为了实现这个功能,我灵活运用了条件语句和循环结构,使程序具有良好的交互性。
3. 实验三:数组和字符串在这个实验中,我学习了C语言中数组和字符串的使用方法,并编写了一个程序,实现了对一个整数数组的排序功能。
通过实验,我进一步掌握了数组的声明、初始化和遍历等操作,提高了我对C语言程序设计的理解。
4. 实验四:函数和指针实验四要求我编写一个C语言程序,实现对一个数组中的元素求和的功能。
在这个实验中,我了解了函数的定义和调用、指针的基本概念以及函数指针的使用。
通过编写程序,我加深了对函数和指针的理解,并提高了程序的运行效率。
三、实验结果通过以上实验项目的设计与实现,我得到了如下实验结果:1. 实验一的结果是可以正确进行数值相加并输出结果。
2. 实验二的结果是根据输入的分数得到相应的等级评定。
3. 实验三的结果是对输入的整数数组进行排序,并输出排序后的结果。
4. 实验四的结果是对数组中的元素进行求和,并输出求和结果。
四、实验心得通过整个实验过程,我深刻认识到了C语言程序设计的重要性和应用广泛性。
C语言不仅是其他高级编程语言的基础,也是培养程序设计思维和逻辑思维的重要工具。
通过实验,我不仅掌握了C语言的基础知识和编程技巧,还培养了自己解决问题和分析问题的能力。
C语言程序设计基础实验报告3
实验3 逻辑结构程序设计一、实验目的1、了解C 语言表示逻辑量的方法(以0代表“假”,以非0代表“真” )。
2、学会正确使用逻辑运算符和逻辑表达式。
3、熟练掌握if 语句和switch 语句。
4、结合程序掌握一些简单的算法。
5、学习调试程序。
二、实验内容和步骤本实验要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。
1、改错题。
给定程序MODI1.C 的功能是:对于如下函数:用scanf 函数输入x 的值,求y 值。
/* MODI1.C */#include <stdio.h>void main(){int x, y;/***********found***********/scanf ("%d", &x);if ( x < 1 )y = x;/***********found***********/else if ( 1 <=x&& x < 10 )y = 2*x -1 ;elsey = 3*x -11; printf("y = %d\n", y ); }程序中有两处错误,错误都在提示行: /***********found***********/的下面一行。
请改正程序中的错误,使它能得出正确的结果。
注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构!修改程序后,运行程序,输入x 的值(分别为x<1、1≤x<10、x ≥10三种情况,如0.5、8、15),检查输出的y 值是否正确。
⎪⎩⎪⎨⎧≥-<≤-<=)10(113)101(12)1(x x x x x xy2、从键盘输入某学生的考试成绩,要求输出成绩等级A、B、C、D、E。
学生的成绩可分成5个等级,90-100分为A级,80-89分为B级,70-79分为C级,60-69分为D级,0-59分为E级。
要求在输入负数时,给出错误提示。
C程序设计实验(3)-选择结构程序设计
实验三 选择结构程序设计一:目的要求1.熟悉用关系运行与逻辑运行符的应用;2.掌握if 语句与switch 语句的使用;3.上机前按实验要求预习编写出完整的程序,才允许上机。
二:实验内容与步骤1、从键盘输入一个年份,判断其是不是闰年;2、从键盘输入a 、b 、c 三个数,并求出方程02=++c bx ax 的解,要求考虑有两个不等实根、两个相等实根、两个虚根的情况,要根据a 、b 、c 的不同值,给出不同结果的提示。
1.#include <stdio.h>int main(){int year,leap;printf("enter year:"); scanf("%d",&year);if (year%4==0)if(year%100==0)if(year%400==0) leap=1;else leap=0;else leap=1;else leap=0;if (leap) printf("%d is ",year);else printf("%d is not ",year);printf("a leap year.\n");return 0;}2#include <stdio.h>#include <math.h>int main(){double a,b,c,disc,x1,x2,realpart, imagpart;scanf("%lf,%lf,%lf",&a,&b,&c);printf("The equation ");if(fabs(a)<=1e-6)printf("is not a quadratic\n");else{disc=b*b-4*a*c;if(fabs(disc)<=1e-6)printf("has two equal roots:%8.4f\n", -b/(2*a));elseif(disc>1e-6){x1=(-b+sqrt(disc))/(2*a);x2=(-b-sqrt(disc))/(2*a);printf("has distinct real roots:%8.4fand %8.4f\n",x1,x2);}else{ realpart=-b/(2*a);imagpart=sqrt(-disc)/(2*a);printf(" has complex roots:\n");printf("%8.4f+%8.4fi\n”,realpart,imagpart);printf("%8.4f-%8.4fi\”, realpart,imagpart);}}return 0;}。
最简单的C程序设计—顺序程序设计实验报告
5 年期定期存款利息为 5.85%;
活期存款利息为 0.75%(活期存款每一季度结算一次利息)。
程序代码为:
#include<stdio.h> #include<math.h> int main() {float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5; p=1000; r5=0.0585; r3=0.0545; r2=0.0471; r1=0.0416; r0=0.0075; p1=p*((1+r5)*5); p2=p*(1+2*r2)*(1+3*r3); p3=p*(1+3*r3)*(1+2*r2); p4=p*pow(1+r1,5); p5=p*pow(1+r0/4,4*5); printf("第 1 种方案得到的本息和为 p1=%f\n",p1); printf("第 2 种方案得到的本息和为 p2=%f\n",p2); printf("第 3 种方案得到的本息和为 p3=%f\n",p3); printf("第 4 种方案得到的本息和为 p4=%f\n",p4); printf("第 5 种方案得到的本息和为 p5=%f\n",p5); return 0; }
#include<stdio.h> int main() {char c1='C',c2='h',c3='i',c4='n',c5='a'; c1=c1+4; c2=c2+4; c3=c3+4; c4=c4+4; c5=c5+4; printf("password is %c%c%c%c%c\n",c1,c2,c3,c4,c5); return 0;
C语言程序设计课程实验三实验报告
上海开放大学
闵二分校《学生实验报告》记录表
姓名: 学号: 实验日期: 2014 年 5 月19 日
实验名称:实验三函数
使用主要设备:VC++6.0
实验目的:
1、熟练掌握函数的定义和调用;
2、理解形式参与和实际参数的传递;
3、了解函数的递归调用;
实验要求:
1、根据每个实验的具体要求,填写程序或编写完整程序,将运行结果截图,并粘贴到指定位置。
2、实验独立完成。
实验安排:
1、本实验时间为4学时。
2、实验结束后,须完成实验报告作为评分依据,它应包括实验名称,实验目的、实验内容、实验结果及实验体会等内容,以电子版形式上交(包括调试源程序)
实验考核:
1、实验成绩占总成绩的20%,本次成绩占总成绩的5%。
2、实验成绩以百分制记分。
本次实验共4题,每题25分。
3、实验成绩的评分标准为:(1)编写了程序源代码,但没调试程序,得50%;(2)编写了程序源代码,并调试了程序,但结果不完全正确,得70%;(3)编写了程序源代码,并调试了程序,结果正确,得为90%;(4)编写了程序源代码,调试了程序,结果正确,并撰写体会,得95%或更高。
实验题序号 2
实验题描述:
完成求一个数组中平均值的函数,并在主函数中调用该函数。
程序文本,请补充完整
#include <stdio.h>
本次实验的体会(可选):。
C语言程序设计上机实验报告(精选5篇)[修改版]
第一篇:C语言程序设计上机实验报告黔南民族师范学院C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1. 理解指针、地址和数组间的关系;2. 掌握通过指针操作数组元素的方法;3. 掌握数组名作为参数的编程方式。
二、实验设备介绍软件需求: Visual C++ 6.0或CFree3.5以上版本硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
三、实验内容1. 定义函数void sort(int a[],int n)amain函数,并在其中调用sort函数。
示例如下:After sorted the array is: -9 -6 1 2 4 52. 输入10个整数存储到数组a,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示“Not found!”。
要求定义和调用函数search(int list[], int n, int x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1。
c语言程序设计实验报告
c语⾔程序设计实验报告C语⾔程序设计实验报告实验⼀1.⽤scanf函数输⼊数据,a=3,b=7,x=8.2,y=123.22,c1=‘A’,c2=‘a’,⽤printf 函数进⾏输出。
2.输⼊三⾓形的三边长,求三⾓形⾯积。
3..存款利息计算,有10000元,想存5年,按以下⼏种⽅法存。
(1)⼀次存5年。
(2)先存2年期,到期将本息再存3年。
(3)先存3年期,到期后再存2年。
(4)存1年期,到期将本息再存1年,连存5次。
计算各⾃存法5年后的本息是多少?4.设半径r=1.5,圆柱⾼h=3,求圆周长,圆⾯积,圆柱表⾯积,圆柱体积。
⽤scanf 输⼊数据,输出结果,输⼊要有⽂字说明,取⼩数点后2位数字。
5.给出⼀个不多于5位的正整数,要求:(1)求出它是⼏位数?(2)分别输出每个数字?(3)按逆顺序输出。
如(123输出321)实验⼆1.输⼊两个正整数,求其最⼤公约数和最⼩公倍数。
2.⼀个数如果恰好等于它的因⼦之和,这个数就称为完数,例如6=1+2+3,编程找出1000之内的所有完数,并按下⾯格式输出其因⼦。
6its factors are1,2,33.输⼊⼀⾏字符,分别统计出其中英⽂字母、空格、数字和其他字符的个数。
4.⼀个球从100m⾼度⾃由落下,每次落地后反跳回原⾼度的⼀半,再落下,再反弹。
求它在第10次落地式,共经过多少⽶,第10次反弹多⾼。
实验三1.从键盘输⼊⼀个整数,并将其插⼊到其元素已按升序排列的数组中,要求插⼊操作完成后,数组中的元素仍按升序排列。
2.⼀篇⽂章,共有三⾏⽂字,每⾏有80个字符。
要求分别统计出其中英⽂⼤写字母、⼩写字母、数字、空格以及其他字符的个数。
3.从键盘输⼊10个整数,并求出这10个数的最⼤值及出现次数。
4.编写个⼈所得税计算器。
输⼊个税起征点和⽉收⼊,计算应交税款。
(起征点为2000元)不超过500元的部分税率5%超过500元⾄2000元的部分税率10%超过2000元⾄5000元的部分税率15%超过5000元⾄20000元的部分税率20%超过20000元⾄40000元的部分税率25%超过40000元⾄60000元的部分税率30%超过60000元⾄80000元的部分税率35%超过80000元⾄100000元的部分税率40%超过100000元的部分税率45%。
C语言程序设计实验报告(实验大纲+过程)
《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程序。
c++程序设计实验三
实验三3.实验内容(1)输入一行字符,分别统计出其中英文字母、空格、数字字符和其它字符的个数。
提示:用cin.get(c)函数从键盘上输入一个字符给变量c ,直到输入回车换行字符'\n'为止。
(2)设有一个数列,它的前四项为0、0、2、5,以后每项分别是其前四项之和,编程求此数列的前20项。
(3)求π近似值的公式为:122122543432122+-⨯⨯⨯⨯⨯=n n n n π其中,n=1、2、3…设计一个程序,求出当n=1000时的π的近似值。
(4) 求出1~599中能被3整除,且至少有一位数字为5的所有整数。
如15、51、513均是满足条件的整数。
提示:将1~599中三位整数i 分解成个位、十位、百位,分别存放在变量a 、b 、c 中。
然后判断a 、b 、c 中是否有5。
将三位整数i (设i=513)分解成个位、十位、百位的方法是:c=i%10; //c= i%10=513%10=3a=i/10; //a= i/10=51b=a%10; //b=a%10=51%10=1a=a/10; //a=a%10=51/10=54.解答参考(1) # include <iostream.h>void main(void){ char c;int i,letter=0,number=0,blank=0,other=0;cout<<"请输入字符串:";cin.get(c); //get(c)函数用于从键盘上提取一个字符while(c!='\n'){ if ('a'<=c && c<='z' || 'A'<=c && c<='Z') letter++;else if ('0'<=c && c<='9') number++;else if (c==' ') blank++; else other++;cin.get(c);}cout<<"letter="<<letter<<endl;cout<<"number="<<number<<endl;cout<<"blank="<<blank<<endl;cout<<"other="<<other<<endl;}运行结果:请输入字符串:I am Student 1234letter=10number=4blank=3other=0(2) 数列前四项值存放在变量f1=0、f2=0、f3=2、f4=5中第5项的值用f1表示,则f1= f1+f2+f3+f4;第6项的值用f2表示,则f2= f2+f3+f4+f1;第7项的值用f3表示,则f3= f3+f4+f1+f2;第8项的值用f4表示,则f4= f4+f1+f2+f3;共进行5次,即可求出此数列的前20项。
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语言程序设计实验》指导书(实验1~6)
《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include"stdio.h"
main() { int g,s; char ch; printf("\ninputastudentgrade:"); scanf("%d",&g); s=g/10; if(s<0||s>10) printf("\ninputerror!"); else {switch(s) {case 10: case 9:ch='A';break; case 8:ch='B';break; case 7:ch='C';break; case 6:ch='D';break; default:ch='E'; } printf("\nthestudentscort:%c",ch); } }
【例4】输入一个摄氏温度,要求输出华氏温度。公式
为f=5/9*c+32. main() { float c,f; scanf(“%f”,&c); f=5.0/9*c+32; printf(“%5.2f\n”,c); }
【作业】
1.已知圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆 球表面积,圆球体积,圆柱体积。
若输入下列数据,分析程序的执行顺序并写出运行结果 (1)a=1,b=2,c=3 (2)a=2,b=1,c=3 (3)a=3,b=2,c=1 (4)a=3,b=1,c=2 (5)a=3,b=3,c=2 (6)a=2,b=1,c=2
【例2】输入某学生的成绩,经处理后给出学生的等级,等
级分类如下:
90分以上(包括90):A 80至90分(包括80):B
【目的与要求】
熟练掌握while、do—while和for三种循环语句的应用。
【例1】求5!
【例2】求和s=1!+2!+3!
【例3】求和s=1!+3!+5! 【例4】求和s= 3+33+333
【例5】有一数列:2/1,3/2,5/3,8/5,…求出这个数
列的前10项之和。 【例6】打印500以内的“水仙花数”。“水仙花数”是一 个三位数,其各位数立方和等于该数本身。 【例7】一个数如果恰好等于它的因子之和,这个数就 称为完数。求100之内的所有完数。
【例3】输入一串字符,计算其中空格的个数。
#include"stdio.h" main() { int score; char grade; printf("\npleaseinputastudentscore:"); scanf("%f",&score); if(score>100||score<0) printf("\ninputerror!"); else {if(score>=90) grade='A'; else {if(score>=80) grade='B'; else {if(score>=70) grade='C'; else {if(score>=60) grade='D'; else grade='E'; } } } printf("\nthestudentgrade:%c",grade); } }
70至80分(包括70):C
60至70分(包括60):D
60分以下:E
方法一:(用if嵌套`)
分析: 由题意知如果某学生成绩在90分以上,等级为A;否 则,如果成绩大于80分,等级为B;否则,如果成绩 大于70分,等级为C;否则,如果成绩大于60分为D; 否则,如果成绩小于60分,等级为E;但当我们输入 成绩时也可能输错,出现小于0或大于100,这时也要 做处理,输出出错信息。因此,再用if嵌套前,应先 判断输入的成绩是否在0~100之间。
#include"stdio.h"
main() { inta,b,c,max;/*定义四个整型变量*/ scanf(“a=%d,b=%d,c=%d”,&a,&b,&c); if(a>=b) max=a;/*a>=b*/ else max=b;/*a<b*/ if(c>max) max=c;/*c是最大值*/ printf("max=%d",max); }
分析:由已知可得在变量定义时定义四个变量a,b,c
和max,a,b,c是任意输入的三个数,max是用来存 放结果最大值的。第一次比较a和b,把大数存入max 中,因a,b都可能是大值,所以用if语句中if——else 形式。第二次比较max和c,把最大数存入max中,用 if语句的第一种形式if形式。Max即为a,b,c中的最 大值。
运行该程序,必须按如下方式在键盘上输入数据 a=3,b=7↙ 8.5,71.82↙ aA↙ 请同学们写出输出结果
【例2】输入三角形三边长,求三角形面积。
#include“math.h” main() { float a,b,c,s,area; scanf(“%f,%f,%f”,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(“area=%f”,area); }
【例4】判断m是否是素数。
【作业】
1.输入两个正整数m和n,求其最大公约数和最小公倍数。 2.求Sn=a+aa+aaa+…+aa…a 之值,其中a是一个数字。例 如:2+22+222+2222+22222(此时n=5), n由键盘输入。 3.求和1!+2!+3!+4!+…20! 4. 打印100-999之间所有的“水仙花数”。“水仙花数”是一 个三位数,其各位数立方和等于该数本身。 5. 一个数如果恰好等于它的因子之和,这个数就称为完 数。求1000之内的所有完数。 6. 有一数列:2/1,3/2,5/3,8/5,…求出这个数列的前 20项之和。 8. 打印下列图案 * *** ***** *** *
【作业】
1.c语言如何表示“真”与“假”?系统如何判断一个量的“真”与“假”? 2.写出下面各逻辑表达式的值。设a=3,b=4,c=5 (1)a+b>c&&b==c (2)a||b+c&&b-c (3)!(a>b)&&!c||1 (4)!(x=a)&&(y=b)&&0 (5)!(a+b)+c-1&&b+c/2 3.有3个整数a、b、c,由键盘输入,输出其中最大的数。 4.给一个不多于5位的正整数,要求: a.求出它是几位数; b.分别打出每一位数字; c.按逆序打出各位数字,例如原数为321,应输出123。 5.输入4个整数,要求按由小到大的顺序输出。
2.输入一个华氏温度,要求输出摄氏温度。公式为 c=5/9*(f-32).
【目的与要求】
1.了解C语句表示逻辑量的方法(以0代表“假”以1代 表“真”); 2.学会正确使用逻辑运算符和逻辑表达式; 3.熟练掌握if语句和switch语句。
【例1】已知三个数a,b,c,找出最大值放于max中。
【典型示例】
【例1】计算两个数的最大公约数; 分析:首先,随 机输入两个数m,n(默认m>n);其次,算法:使k为 m除以n的余数,如果m能被n整除,则k值为0,n为 这两个数的最大公约数,否则,使k代替n,n代替m, 重复以上过程,直到k值为0。
【例3】打印下列图案
* *** ***** *******
输入测试数据,调试程序。测试数据要覆盖所有路径,
注意临界值,例如此题中得100分,60分,0分以及小 于0和大于100的数据。
方法二:用switch语句
分析: switch语句是用于处理多分支的语句。注意,case后 的表达式必须是一个常量表达式,所以在以用switch 语句之前,必须把0~100之间的成绩分别化成相关的常 量。所有A(除100以外),B,C,D类的成绩的共同 特点是十位数相同,此外都是E类。则由此可得把 score除十取整,化为相应的常数。
【例3】已知圆半径,圆柱高,求圆周长,圆柱体积。
main() { float r,h,l,v,pi; pi=3.1415926; scanf(“%f,%f”,&r,&h); l=2*pi*r; v=pi*r*r*h; printf(“圆周长为:%6.2f\n”,l); printf(“%圆柱体积为:6.2f”,v); }
【目的与要求】
1.理解C语言程序的顺序结构
2.掌握常用的C语言语句,熟练应用赋值、输入、输 出语句。
【一般实例】
【例1】按格式要求输入/输出数据 #include"stdio.h“ 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); }
实验六 一维数组
【目的与要求】
1.掌握一维数组的定义、赋值和输入输出的方法;
2.掌握字符数组的使用;
3.掌握与数组有关的算法(例如排序算法)。