C语言实验报告

合集下载

c语言实验报告实验

c语言实验报告实验

c语言实验报告实验C 语言实验报告实验一、实验目的本次 C 语言实验的主要目的是通过实际操作和编程实践,加深对 C 语言基本语法、数据类型、控制结构、数组、指针等重要概念的理解和掌握,提高编程能力和解决实际问题的能力。

二、实验环境本次实验使用的编程环境为 Visual Studio 2019,操作系统为Windows 10。

三、实验内容1、基本数据类型和运算符的使用定义不同类型的变量,如整数型(int)、浮点型(float、double)、字符型(char)等,并进行赋值和运算操作。

熟悉各种运算符的优先级和结合性,包括算术运算符(+、、、/、%)、关系运算符(>、<、>=、<=、==、!=)、逻辑运算符(&&、||、!)、位运算符(&、|、^、~、<<、>>)等。

2、控制结构的应用使用ifelse 语句实现条件判断,根据不同的条件执行相应的代码块。

运用 switch 语句进行多分支选择,处理不同的情况。

利用 for 循环、while 循环和 dowhile 循环实现重复执行的操作,例如计算数列的和、打印特定的图案等。

3、数组和字符串的操作定义和使用一维数组、二维数组,进行数组元素的访问、赋值和遍历。

掌握字符串的存储和处理方式,使用字符数组和字符串函数(如strlen、strcpy、strcmp 等)进行字符串的操作。

4、指针的应用理解指针的概念和指针变量的定义,通过指针访问变量和数组元素。

实现指针与数组、指针与函数的结合使用,体会指针在程序中的灵活运用。

5、函数的定义和调用编写自定义函数,实现特定的功能,如计算阶乘、判断素数等。

掌握函数的参数传递方式(值传递和地址传递),理解函数的返回值。

6、结构体和共用体的使用定义结构体类型,创建结构体变量,访问结构体成员。

了解共用体的概念和使用场景,比较结构体和共用体的区别。

四、实验步骤1、实验准备打开 Visual Studio 2019 开发环境,创建一个新的 C 语言项目。

c实验报告

c实验报告

c实验报告C实验报告实验目的:通过编写C程序,了解C语言的基本语法和控制结构。

实验内容:编写一个C程序,实现以下功能:1. 输入两个数字,计算它们的和、差、积和商,并输出结果。

2. 输入一个数字,判断它是否为偶数,并输出结果。

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

2. 在main函数中添加代码,实现输入两个数字,并计算它们的和、差、积和商。

代码示例:```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个数字: ");scanf("%d%d", &num1, &num2);int sum = num1 + num2;int difference = num1 - num2;int product = num1 * num2;float quotient = (float)num1 / num2;printf("和: %d\n", sum);printf("差: %d\n", difference);printf("积: %d\n", product);printf("商: %.2f\n", quotient);return 0;}```3. 编译并运行程序,输入两个数字,观察输出结果。

4. 在main函数中添加代码,实现输入一个数字,判断它是否为偶数,并输出结果。

代码示例:```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;}```5. 编译并运行程序,输入一个数字,观察输出结果。

C语言实训总结报告范文(通用5篇)

C语言实训总结报告范文(通用5篇)

C语言实训总结报告范文(通用5篇)在经济飞速发展的今天,报告的适用范围越来越广泛,报告包含标题、正文、结尾等。

一听到写报告马上头昏脑涨?以下是小编整理的C语言实训总结报告范文,仅供参考,希望能够帮助到大家。

C语言实训总结报告篇1这个星期,我们迎来了C语言实训——一次至为重要的实训。

在这个星期里,同学们都很认真的做着那20多道实训题目,遇到不懂的互相请教,或请问老师。

非常感谢老师对我们的帮助,这次实训使我受益匪浅,收获了很多。

通过C语言实训,让我加深了对C语言的了解,而不只是单单的在课本中学到的那些理论,平时乏味的课程,通过自己动手亲自编写,变的生动有趣,而在自己动手的过程中,出现的问题很多,比理论要难的多,当一个程序写完以后,经常会有很多错误而没法解决。

不过,通过几天的实训,逐渐积攒了一些经验,有些错误可以很快就看出来。

这次实训有很大的收获,让我对C语言有了更深的认识,平时在课堂上学到的东西可以自己动手编写,将其转化成一些实用的技能。

如果是一个程序写完一处错误也没有,会有种成就感,于是兴趣就来了,兴趣来了,自然学的东西也就多了,能把理论变成实际的技能,让我对C语言有了浓厚的兴趣和更深层的认识。

C语言是一个有序的学习,学了最基本的替换,然后扩展到循环,嵌套,条理很清楚,不是一个零散的知识,实际上所有的课程都如此,不过通过实训我也知道了自己的不足,存在的很多问题。

比如自己写的写的小程序出了问题,不会解决了就叫老师帮忙,虽然说一定意义上增加了师生之间的感情,但是会养成一种依赖的心理,碰到问题了第一个想到的是求助而不是自己独立解决,所以以后要多多锻炼自己的信心和增加自己的能力,争取做到老师不在身边的时候也可以完成一些简单的程序编写与错误排除。

还有自己的基础知识不扎实,遇到的问题,没有很好的逻辑思维,亲自编写一个陌生的程序的时候会有种无法下手的感觉,找不到突破口。

通过实训,逐渐理清了顺序,对于简单的程序和一些相对比较繁琐的嵌套,循环,不在是看着一头雾水。

C语言程序设计实验实验报告

C语言程序设计实验实验报告

C语⾔程序设计实验实验报告《C语⾔程序设计实验》实验报告实验九⽂件编程(⼀)班级:_07某某专业1班_学号:______姓名:___实验样例_____⽇期:___2008.6.10_____台州学院数信学院计算机系制作⼀、实验⽬的和要求综合使⽤基本结构、基本算法、函数、指针、结构体、链表等知识设计程序。

⼆、实验指导1、注意:本次实验为综合性实验,需要综合本课程以前所学内容,完成编制⼀个⼩型应⽤程序。

需要复习课本以前所学内容,浏览上课讲解的相关内容。

2、实验时间安排:准备实验⽅案,上课时上机编程,课余完成整个设计并完成实验报告。

3、实验具体要求:以⼀张假想的学⽣期中成绩表为实验对象,编制⼀个⼩型应⽤程序,可以考虑实现以下功能:(1)成绩修改;(2)成绩查询;(3)成绩统计;(4)成绩输⼊。

也可以实现其他⾃定义的功能。

界⾯采⽤简易菜单形式,可以分级显⽰。

实验需要进⾏以下步骤:需求分析、程序设计、程序调试、程序运⾏,并对程序运⾏效果进⾏分析,提出改进⽅案。

初步锻炼学⽣的程序设计能⼒、程序调试能⼒、对实验结果进⾏综合分析的能⼒。

4、实验成绩评价标准:参见成绩评定表。

四、实验报告内容(参见样本,请另附页)实验报告必须包含以下内容:1、对你设计的程序功能进⾏的较详细描述。

2、画出程序测试⽤的学⽣期中成绩表(包含:表头、若⼲⾏包含学⽣成绩等信息的数据⾏)。

3、给出程序清单(包含结构体的声明与定义、所有的函数声明、所有的全局变量、所有的函数定义、必要的注释。

注:如果程序过长,可以不⽤给出所有的函数定义,只给出主要的函数定义)。

4、运⾏结果(写出运⾏时的主界⾯、各模块的实现界⾯等,不作具体要求,但要求能清晰地体现出程序的功能)。

5、对你的设计作⼀个评价(可以包含你所花的时间、精⼒,你遇到的困难及如何解决的,你的设计过程所遇到的其他事情;必须包含你对设计的客观评价,以及提出的改进⽅案)。

1、程序功能描述:(略)2、成绩表样表:3、程序清单:(红⾊部分是和上⼀个程序的区别之处)#includestruct student /*期中成绩表的结构声明*/{int num;char name[20];char sex;float YuWen;float ShuXue;float YingYu;float totle;};#define MAX_STU_NUMBER 100 /*宏定义最⼤学⽣数为100⼈*/struct student Stu[MAX_STU_NUMBER]; /*⼀次性定义100个学⽣的存储空间*/int STU_NUMBER; /*存放学⽣数*/char *FileName = "chengji.txt"; /*成绩存放的⽂件*//*所有的函数声明:*/int SelectMainMenu(); /*显⽰并选择主菜单。

c语言程序设计_实验一实验报告

c语言程序设计_实验一实验报告

实验项目名称:实验一C 语言的运行环境的使用实验目的及要求:1. 了解 Windows 系统下 C 语言的运行环境,熟悉 C 程序编辑、调试、运行的基本操作方法。

2. 熟练掌握编辑、编译、连接和运行 C 程序的方法。

3. 通过运行简单的 C 程序,初步了解 C 源程序的特点。

4. 初步理解 C 语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运行结果的基本输出方法。

实验内容(方法和步骤):1、编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for程序代码:#include <stdio.h>int main(){printf("Hello,World!\n");printf("Welcome to the C language world!\n");printf(Everyone has been waiting for.\n");return 0;}运行结果:2、编写程序,将两个整数相加,并输出结果。

程序代码:#include <stdio.h>int main(){int a,b,c;a=12;b=26;c=a+b;printf("c=%d\n",c);return 0";}运行结果:3. 编写程序,要求从键盘输入2 个整数,输出其中较大的数程序代码:#include <stdio.h>int main(){int max(int x,int y);int a,b,c;scanf("%d,%d",&a,&b);c=max(a,b);pintf("max=%d",c);return 0;}int max(int x,int y){ int z;if (x>y) z=x;else z=y;return(z);}运行结果:4.输入并运行下程序,观察运行结果。

c语言实训报告

c语言实训报告

c语言实训报告一、实训介绍作为计算机专业学生,我们需要熟练掌握各种编程语言,其中C语言是所有计算机专业学生必须学会的语言之一。

为了更好地掌握C语言的使用,我们参加了C语言实训。

本次实训分为理论学习和实践操作两部分,理论学习主要涵盖C语言的基本语法、数据类型、运算符、流程控制等内容,实践操作部分则要求我们通过编写各种程序来巩固所学知识并提高编程能力。

二、实训过程1. 理论学习在理论学习阶段,我们通过老师讲解和课堂互动的方式掌握了C语言的基本概念和语法规则,并进行了主要控制语句的讲解和练习。

同时,我们通过一些实例掌握了C语言的运算符和数据类型,并学会如何使用它们来编写程序。

2. 实践操作实践操作阶段是整个实训的重点和难点,主要包括以下几个方面的内容:(1)程序编写在实践操作过程中,老师为我们提供了多个练习题目,包括简单的判断语句、循环语句、数组等等。

我们需要通过编写代码来实现这些题目的要求,并进行调试修改,直到程序执行无误为止。

(2)实验报告为了让我们更好地掌握C语言的应用,老师还要求我们编写实验报告,记录我们在实践过程中遇到的问题和解决方案,以及程序设计的思路和实现过程。

通过编写实验报告,我们不仅可以更好地回顾和总结实践操作,还能提高我们的文字表达能力。

三、实训体会通过参加C语言实训,我对C语言的掌握更加深刻,不仅能灵活运用其语法和控制语句,还能熟练使用其常用函数和数据类型。

在实践操作中,我也锻炼了自己的程序设计和调试能力,并学会了一些解决问题的方法和技巧。

同时,我也认识到了C语言编程并不是简单的代码拼接,要求我们具备较强的逻辑思维能力和耐心,只有不断地进行练习和思考,才能在C语言编程中达到自己的目标。

四、总结通过C语言实训,我不仅掌握了C语言的基础知识和应用技巧,还培养了自己的创新思维和问题解决能力。

在未来的学习和工作中,我会继续学习和应用C语言,不断提升自己的编程水平,并为计算机行业的发展做出自己的贡献。

c语言实验报告

c语言实验报告

计算机软件技术基础实验报告实验一:线性表的排序与查找一.实验内容a)键盘输入一组无序数据,添加到线性表中;b)排序线性表并输出排序结果;c)键盘输入一个数,并插入到排好序的线性表中(要求插入后的表仍为有序表),输出结果;d)键盘输入一个数,并从线性表中删除相应的数据,输出结果。

二,源程序// Experiment1。

cpp :定义控制台应用程序的入口点。

//#include "stdafx.h”#include "iostream”#include 〈conio。

h〉// 程序实现有各种方法,这里给出一个实例。

// 定义一个线性表const int nMaxSize = 15;// 最大值int nLen = 0; // 表中元素个数int nLinearList[nMaxSize];// 定义操作void LSort();void LOut();void LInsert(int n);void LDelete(int n);int main(int argc,TCHAR*argv[]){// 输入数据并放入线性表中printf(”Pleas e input data\n"); // std::cout 〈< "Please input data\n”;int nIn = 0;for (int i = 1; i <= 10;i++){scanf(”%d”,&nIn);// std::cin >〉nIn;nLinearList[i] = nIn;nLen++;}LSort();// 排序线性表LOut();// 输出结果printf(”Please input a data to i nsert \n”);scanf(”%d”,&nIn);LInsert(nIn);// 输入一个数字,并插入到线性表中LOut();printf(”Please input a data to delete \n");scanf("%d”,&nIn);LDelete(nIn);// 输入一个数字,并从线性表中删除LOut();char chTmp;printf(”Please input a char to finish this program.");chTmp = getch();return 0;}void LSort()// 冒泡排序,由大到小{int j,F,k,M;F=nLen;while(F〉0){k=F-1;F=0;for(j=1;j<=k;j++){if(nLinearList[j]〈nLinearList[j+1]){M=nLinearList[j];nLinearList[j]=nLinearList[j+1];nLinearList[j+1]=M;F=j;}}}}void LOut(){printf("\n”);for (int i = 1;i 〈= nLen;i++){printf( "%d, ", nLinearList[i]);}printf(”\n”);}void LInsert(int n){int i,j;i=1;while (i<nLen){ if(nLinearList[i]〈=n){nLen++;for(j=nLen;j>=i;j—-)nLinearList[j+1]=nLinearList[j];nLinearList[i]=n;break;}i++;}}void LDelete(int n){int i,j;for(i=1;i<=nLen;i++){if(nLinearList[i]==n){for(j=i;j〈=(nLen—1);j++)nLinearList[j]=nLinearList[j+1];nLen—-;break;}}}三运行结果实验2:栈与队列的应用一.实验内容a)键盘输入算数表达式,并放入队列当中;b)应用栈的概念设计表达式求值算法;输出表达式求值结果二.源程序// Experiment2。

c语言实验报告结果及分析

c语言实验报告结果及分析

c语言实验报告结果及分析#### 一、实验目的1. 学习如何使用函数;2. 了解函数的作用;3. 掌握C语言程序中函数的实现方法;4. 深入理解函数调用和参数传递。

#### 二、实验内容本次实验完成了一个函数factorial,它的作用是计算一个整数的阶乘。

实验代码:```c#include <stdio.h>int factorial(int n) //函数声明{int i; //定义变量int product = 1; //初始化变量for(i = 1; i<=n; i++) //循环语句{product *=i;}return product; //返回结果}int main(){int num;scanf("%d",&num); //输入变量printf("%d\n",factorial(num)); //调用函数return 0;}```#### 三、实验结果实验运行结果:![image-20200907223338892](C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20200907223338892.png)实验结果验证了函数factorial的功能,它计算出了正确的结果:输入5,计算出120;输入4,计算出24。

#### 四、实验分析1. 在实验代码中,我们首先定义了一个函数factorial,并给出了它的参数n和返回值product。

然后,运用循环语句把参数n的各个数相乘,取得最终结果product,并用return语句把结果返回。

2. 然后,在进入main函数时,我们用scanf传入变量num,然后调用factorial函数计算num的阶乘,将结果用printf输出,这就完成了整个程序的工作。

3. 本实验验证了函数factorial的功能,完成了整数的阶乘计算任务,并且符合了性能要求,每次输入及计算结果都符合预期,可以满足实际使用需求。

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

郑州轻工业学院
实践报告
实现内容:
OJ1123最佳校友(数组)、OJ1158又是升序(指针)、OJ1180成绩统计(结构)、OJ1203做幻方(文件)
学号:541507020140
学生姓名:王红旭
专业班级:电子信息科学与技术15-01
所在院系:计算机与通信工程学院
指导教师:王秉政
成绩:
实践名称:上机实验课
来源课程:[0404230]C程序设计进阶
实践时间:2016.03-05
实践地点:科学校区实验楼301
报告撰写时间:2016.05.10
1123最佳校友(数组)
1实践目的
为了方便数组的管理和使用,提高程序设计的效率。

2 实践要求
熟练使用数组解决问题。

3 使用的技术、知识点、工具等
C语言程序设计书本教材,数组等。

4 需求分析和功能描述
要求;北京校友会每年举办两次,所有校友都有校友编号,每次到会的校友都在签到簿上写下自己的编号和姓名,在校友会成立5周年的聚会上将颁发“最佳校友奖”,该奖项颁发给到会次数最多的校友。

现在请你编写程序,找出这个奖项的得主。

若有多个校友并列第一,则均可获奖。

5 系统总体设计
#include<stdio.h>
int main()
{
int a[100]={0};
int i,n,max,k;
while(scanf("%d",&n),n>=0)
a[n]++;
max=a[0];
for(i=1;i<100;i++)
{
if(a[i]>max)
max=a[i];
}
k=0;
for(i=0;i<100;i++)
{
if(a[i]==max)
{
if(k==0)
printf("%d",i);
else
printf(" %d",i);
k++;
}
}
printf("\n");
return 0;
}
1158又是升序(指针)
1 实践目的
指针可以表示复杂的数据结构,能动态分布内存,及方便地址使用字符串,可作为函数间传递的参数,也可以作为函数返回值,为函数之间各类型数据的传递提供简捷便利的方法。

2 实践要求
熟练使用指针
3 使用的技术、知识点、工具等
C语言程序设计书本教材,指针等
4 需求分析和功能描述
将输入的四个整数按由大到小的顺序输出。

已定义如下swap函数,可实现形参pa和pb所指内存单元的内容交换。

请务必使用本函数实现两个变量内容的互换。

void swap( int *pa, int *pb)
{
int t;
t=*pa; *pa=*pb; *pb=t;
}
5 系统总体设计
#include <stdio.h>
#include <stdlib.h>
void swap( int *pa, int *pb);
int main()
{
int a[10];
int i, j, n=4;
for(i=0; i<4; i++)\
scanf("%d", &a[i]);
for(i=0; i<n-1; i++)
for(j=i; j<n; j++)
if(a[i]<a[j])
swap(&a[i], &a[j]);
for(i=0; i<n; i++)
printf("%d%c", a[i], i!=n-1 ? ' ' : '\n');
return 0;
}
void swap( int *pa, int *pb)
{
int t;
t=*pa;
*pa=*pb;
*pb=t;
}
1180成绩统计(结构)
1实践目的
数组在一定情况下不能更好的完成要求,使用结构可以更好的将数据关联起来,更好的解决问题。

2 实践要求
熟练使用结构
3 使用的技术、知识点、工具等
C语言程序设计书本教材,结构等
4 需求分析和功能描述
从键盘输入若干个学生的信息,每个学生信息包括学号、姓名、3门课的成绩,计算每个学生的总分,输出总分最高的学生的信息。

5 系统总体设计
#include<stdio.h>
typedef struct {
char ID[20];
char name[20];
int a;
int b;
int c;
}STUDENT;
//int inputArr
int main()
{
STUDENT stu, first;
int T=0, n=0, i=0;
scanf("%d", &n);
first.a = first.b = first.c = -1;
for(i = 0 ; i < n ; i++)
{
scanf("%s %s %d %d %d", stu.ID, , &stu .a, &stu.b, &stu.c);
if(stu.a + stu.b + stu.c > first.a + first.b + first.c)
first = stu;
}
printf("%s %s %d %d %d\n", first.ID, , first .a, first.b, first.c);
return 0;
}
1203做幻方(文件)
1 实践目的
文件是处理大数据,并可以储存数据,防止数据消失。

2 实践要求
熟练使用文件
3 使用的技术、知识点、工具等
C语言程序设计书本教材,文件等
4 需求分析和功能描述
Apple最近迷上了做幻方,Apple还是个中高手,只要你说个奇数N就能把N*N的幻方做出来。

其实你可以比他做得更好的。

Apple总是画得很乱,而你可以利用程序排得很整齐^_^ 幻方的要求:每一行,每一列,还有两条斜线上数字的和都相等.
5 系统总体设计
#include<stdio.h>
#include<math.h>
#define N 30
int sqr(int m);
int main()
{
int m;
while(scanf("%d", &m), m != 0)
{
sqr(m);
}
return 0;
}
int sqr(int m)
{
int a[N][N] = {0};
int x=0, y=0;
int times, p, q, fmt;
int i, j;
x = m / 2;
y = m - 1;
times = m * m;
for(i = 0 ; i < times ; i++)
{
a[y][x] = i + 1;
p = x;
q = y;
x = x + 1;
if(x == m)
x = 0;
y = y + 1;
if(y == m)
y = 0;
if(a[y][x] != 0)
{
x = p;
y = q - 1;
}
}
fmt = log10(times);
if(fmt == 0)
{
for(i = 0 ; i < m ; i++)
{
for(j = 0 ; j < m - 1 ; j++)
{
printf("%d ", a[i][j]);
}
printf("%d", a[i][m - 1]);
printf("\n");
}
}
else if(fmt == 1)
{
for(i = 0 ; i < m ; i++)
{
for(j = 0 ; j < m - 1 ; j++)
{
printf("%2d ", a[i][j]);
}
printf("%2d", a[i][m - 1]);
printf("\n");
}
}
else if(fmt == 2)
{
for(i = 0 ; i < m ; i++)
{
for(j = 0 ; j < m - 1; j++)
{
printf("%3d ", a[i][j]);
}
printf("%3d", a[i][m - 1]);
printf("\n");
}
}
printf("\n");
return 0;
}。

相关文档
最新文档