C语言与软件技术基础指针(二)上机报告
C 语言与软件技术基础
实验六:指针(三)
一、实验目的
( 1) 通过实验进一步掌握指针的概念,会定义和使用指针变量。
(2)能正确使用数组的指针和指向数组的指针变量。
(3)能正确使用字符串的指针和指向字符串的指针变量。
二、实验内容
编程序并上机调试运行。
1、有一个班4个学生5门课程。
( 1)求第一门课程的平均分;( 2)找出有
2 门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩;( 3) 找出平均成绩在90分以上的学生。
分别编
3 个函数实现以上要求。
代码:
#include <>
void main()
{
void fun1( int ( * stu)[5]) ;
void fun2( int ( * stu)[5]) ;
void fun3( int ( * stu)[5]) ;
int stu[4][5] ;
int i,j ;
printf( "input the students'scores:\n" ) ; for (i =0;i <4;i ++)
{
printf( "student%d\n" ,i + 1) ;
for (j =0;j <5;j ++)
{
printf( "course%d:" ,j + 1) ; scanf( "%d", &stu[i][j]);
}
printf( "\n" ) ;
}
fun1(stu) ;
printf( "\n" ) ;
fun2(stu) ;
printf( "\n" ) ; fun3(stu) ;
}
void fun1( int ( * stu)[5])
{
int ave ;
printf( "fun1\n" ) ;
ave = ( ** stu + *( *stu + 1) + *(*stu + 2) + *(*stu + 3) + *(*stu + 4)) / 5; printf( "The first couse ave socre is :%d\n" ,ave) ;
}
void fun2( int ( * stu)[5])
{
int i,j ;
int cnt,sum ;
printf( "fun2\n" ) ;
printf( "This students have more than 2 courses's score less than 60 :\n" ) ;
for (i = 0 ;i < 4;i ++) {
cnt = 0 ;
sum = 0 ;
for (j = 0 ;j < 5;j ++)
{
if (*(*(stu + i) + j) < 60)
cnt ++ ;
}
if (cnt >= 2)
{ printf( "stu_id is:%-4d\n" ,i +1) ;
for (j = 0;j < 5;j ++)
{
printf( "score%d is:%-4d" ,j +1, * ( *(stu + i) sum +=
+ j)) ;
*(*(stu + i) + j) ;
} printf( "\n" ) ;
printf( "ave is:%-4d\n" ,sum / 5) ;
}
}
}
void fun3( int ( * stu)[5])
int ave,sum ;
int i,j ;
printf( "fun3\n" ) ;
printf( "This students ave score more than 90 :\n" ) ;
for (i = 0 ;i < 4;i ++)
{
sum = 0 ;
for (j = 0;j < 5;j ++)
{
sum += * ( * (stu + i) + j) ;
}
ave = sum / 5 ;
if (ave >= 90)
{
printf( "stu_id is :%-4d\n" ,i +1)
printf( "ave is:%-4d\n" ,sum / 5)
printf( "\n" ) ;
}
}
}
结果:
H SO FTV YjVa n\bi r,\ww?em p. exe
Funl
Tile fir Sib GUU^e avc ^ULrc =55
Fun2
T his studLeritG have noi^e t Ran 2 coLii'ueC1 c ECORE than £0 -sXuL_iil 1-& -2
s corel is :b& 朱core? is :bK score3 isSJjV scoi*e4 is :bkJ scoreE> is :t>3 ave is s E?1
fun 3
This students aue score nor*e than - stLi_id is -1
a.ve xs : 9G
Lnput the students* scores: studentl
cauFsel:98
c uuir-ae2 -?"5
coLirseS : V4
COUFSB4-??
c OLIFUB S -9*3
students
coursel
c ourceS ™ 5-8
courses«59 COUHPS:B4 <60
emirs FS5 ;63 c oursei :56i
&ours;s2
GouroQS s®7
couir&B^BbZ
courses:78
3 tudcrkt4
courssl-67 cours B2:89
□ mill*烷椁?
cauirac^l sG2
c oLtrse& :4b
2、编写一个程序,输入月份,输出该月的英文月名。
例如,输入“ 3”,则输
出“ March”,要求用指针数组实现
代码:
#inelude <>
void main()
{
char *month_n
ame[13]={ "illegal
mon th", "Ja nu ary" , "February" , "March", "April",
"May", "June", "July" , "August" , "September", "October" , "November", "De cember"};
int n;
printf( "in put mon th:\n" );
scanf( "%d", &n);
if ((n <=12) &&n>=1))
printf( "It is %s.\n" , *(month_name^n));
else
printf( "It is wron g.\n" );
结果:。
C上机实验报告实验
C上机实验报告实验实验报告:C语言上机实验一、实验目的通过编写C语言程序,掌握C语言的基本语法及应用,提高对C语言程序设计的理解与掌握。
二、实验内容1.编写程序,计算并输出n的阶乘。
2.编写程序,判断输入的年份是否为闰年。
3.编写程序,判断输入的数是否为质数。
4.编写程序,判断输入的字符串是否为回文字符串。
5.编写程序,实现选择排序并输出排序结果。
三、实验过程及结果1.阶乘计算程序```c#include <stdio.h>//函数声明int factorial(int n);int maiint n;printf("请输入一个整数n:");scanf("%d", &n);printf("%d的阶乘为:%d\n", n, factorial(n)); return 0;int factorial(int n)if (n == 0 , n == 1)return 1;} elsereturn n * factorial(n-1);}```实验结果:程序能够正确计算并输出n的阶乘。
2.闰年判断程序```c#include <stdio.h>int isLeapYear(int year);int maiint year;printf("请输入一个年份:");scanf("%d", &year);if (isLeapYear(year))printf("%d是闰年\n", year);} elseprintf("%d不是闰年\n", year);}return 0;int isLeapYear(int year)if (year % 400 == 0 , (year % 4 == 0 && year % 100 != 0)) return 1;} elsereturn 0;}```实验结果:程序能够正确判断输入的年份是否为闰年。
《软件技术基础》上机实验报告范文
《软件技术根底》上机实验报告范文今天为大家收集资料回来了关于实验的范文,希望能够为大家带来帮助,希望大家会喜欢。
同时也希望给你们带来一些参考的作用,如果喜欢就我们的后续更新吧!1.顺序表的建立、插入、删除。
2.带头结点的单链表的建立(用尾插法)、插入、删除。
1.分别建立二个文件夹,取名为顺序表和单链表。
2.在这二个文件夹中,分别存放上述二个实验的相关文件。
每个文件夹中应有三个文件(.c文件、.obj文件和.exe文件)。
3. 截止时间:12月28日(18周周日)晚上关机时为止,届时效劳器将关闭。
1.格式:《计算机软件技术根底》上机实验报告用户名se×××× 学号姓名学院① 实验名称:② 实验目的:③ 算法描述(可用文字描述,也可用流程图):④ 源代码:(.c的文件)⑤ 用户屏幕(即程序运行时出现在机器上的画面):2.对c文件的要求:程序应具有以下特点:a 可读性:有注释。
b 交互性:有输入提示。
c 构造化程序设计风格:分层缩进、隔行书写。
3. 上交时间:12月26日下午1点-6点,工程设计中心三楼教学组。
请注意:过时不候哟!0.顺序表的插入。
1. 顺序表的删除。
2.带头结点的单链表的插入。
3. 带头结点的单链表的删除。
注意:1. 每个人只需在实验报告中完成上述4个工程中的一个,详细安排为:将自己的序号对4求余,得到的数即为应完成的工程的序号。
例如:序号为85的同学,85%4=1,即在实验报告中应完成顺序表的删除。
2. 实验报告中的源代码应是通过编译链接即可运行的。
3. 提交到个人空间中的内容应是上机实验中的全部内容。
c语言上机报告
c语言上机报告引言C语言作为一门经典的编程语言,在计算机科学领域有着重要的地位。
在本次上机报告中,我将分享我在C语言学习过程中的一些体会和总结。
一、C语言的基本概念与特点C语言作为一种面向过程的编程语言,被广泛应用于嵌入式系统、操作系统和网络编程等领域。
它具有以下几个基本概念和特点:1. 简洁高效:C语言的语法简洁而精悍,运行效率高,这使得它成为开发高性能应用程序的理想选择。
2. 数据类型:C语言提供了多种数据类型,如整型、浮点型、字符型等,这使得程序员可以更加灵活地处理不同类型的数据。
3. 结构化编程:通过使用循环结构、条件语句和函数等,C语言可以实现结构化编程,使得程序更加清晰和易于维护。
4. 指针:指针是C语言的重要概念之一,它可以用来操作内存地址,实现高效的数据处理和数据结构。
二、C语言程序设计实践在学习C语言期间,我通过完成一系列的上机实验,加深了对C语言的理解和实践能力。
以下是几个我觉得比较有意义的实践项目的介绍:1. 温度转换程序:这个程序要求用户输入摄氏温度,并将其转换为华氏温度并显示。
通过这个小项目,我锻炼了输入输出、基本运算和数据类型转换的能力。
2. 学生成绩管理系统:这个程序允许用户输入学生成绩,并进行各种操作,如添加学生、删除学生、修改成绩和查询成绩等。
通过这个项目,我学会了如何使用数组、结构体和函数来实现数据管理。
3. 简易计算器:这个程序实现了基本的算术运算功能,包括加法、减法、乘法和除法。
同时,它还包括了错误处理和界面设计等方面的考虑,提高了用户体验。
以上这些实践项目使我熟悉了C语言的基本语法和常用函数,提高了编程思维和逻辑能力。
三、C语言学习中的困惑与解决在学习C语言的过程中,我也遇到了一些困惑和难点,下面是其中一些典型问题的解决思路:1. 内存管理:由于C语言使用指针来操作内存,所以需要特别注意内存的分配和释放。
我通过仔细阅读文档和参考书籍,学会了如何正确地管理内存,避免内存泄漏和指针悬空等问题。
c语言上机报告
c语言上机报告
C语言上机报告
在大学计算机专业的学习中,C语言是一门基础而又重要的编程语言。
而上机实验则是检验学生掌握C语言编程能力的重要环节之一。
本篇报告将介绍我在上机实验中的学习经历和心得体会。
我学习了C语言的基础语法,如变量、数据类型、运算符、流程控制语句等。
通过实验,我掌握了变量的定义和使用,学会了各种数据类型的声明和赋值,以及常用运算符的使用方法。
此外,我也了解了if语句、switch语句、for循环、while循环等流程控制语句的使用方法。
我学习了C语言中的数组和指针。
通过实验,我深刻理解了数组的定义和使用,以及数组下标的含义。
同时,我也学会了指针的定义和使用,包括指针的初始化、指针的运算、指针和数组的关系等。
这对于理解C语言的高级特性十分重要。
接着,我学习了C语言中的函数和文件操作。
通过实验,我了解了函数的定义和调用方法,以及函数的传参和返回值的使用。
此外,我也学会了文件的打开、读写和关闭等基本操作,这为我以后的文件操作打下了基础。
我学习了C语言中的动态内存分配和结构体。
通过实验,我了解了
动态内存分配的基本概念和使用方法,以及动态内存分配和指针的关系。
同时,我也学会了结构体的定义和使用,包括结构体的声明、结构体变量的定义和初始化、结构体成员的访问等。
总的来说,通过上机实验,我对C语言的基础知识有了更深刻的理解和掌握,并且能够熟练运用这些知识进行编程。
同时,我也意识到了编程技能的重要性,希望在以后的学习中能够不断提升自己的编程能力。
大一学生c 上机报告
大一学生c 上机报告引言本次上机实验是大一学生学习C语言的第一次上机实践,通过编写C 语言程序加深对C语言的理解和掌握。
本报告将详细记录我们小组在上机实验过程中的思路、问题和解决方案,以及最终的实验结果和心得体会。
实验内容本次实验的任务是编写一个C语言程序,实现一个简单的计算器功能。
具体要求如下:1. 实现基本的加、减、乘、除四则运算功能;2. 用户可连续进行多次运算,直到选择退出;3. 对于除法运算,要做除数为零的异常处理,避免程序崩溃;4. 存在整数和小数两种运算模式,需要进行相应的数据类型处理。
思路和问题在开始编写程序之前,我们小组进行了详细的讨论和思考,确定了以下的编程思路:1. 首先,需要进行程序的初始化,包括初始化变量和数据类型;2. 然后,需要设计菜单,让用户选择要进行的运算;3. 根据用户选择的运算类型,进行相应的运算,并输出结果;4. 在除法运算时,需要进行除数为零的异常处理,避免程序崩溃;5. 用户可以选择继续进行其他运算,也可以选择退出程序。
在实际编程过程中,我们遇到了一些问题,主要包括以下几点:1. 如何实现用户输入的读取和判断,以及对输入的数据进行数据类型处理;2. 如何实现菜单的设计和选择功能;3. 如何进行除数为零的异常处理。
解决方案针对上述问题,我们小组进行了如下解决方案:1. 使用`scanf`函数对用户的输入进行读取,并使用`if`语句判断用户选择的运算类型;2. 使用`switch`语句实现菜单的选择功能,根据用户选择进行相应的运算;3. 在进行除法运算时,使用`if`语句判断除数是否为零,若为零则输出错误信息,并返回菜单。
实验结果经过我们小组的共同努力,最终我们成功完成了实验,并得到了预期的实验结果。
我们的程序能够正确地进行加、减、乘、除四则运算,并且在除法运算时能够处理除数为零的异常情况。
用户能够根据菜单选择进行多次运算,也可以选择退出程序。
心得体会通过本次上机实验,我们小组对C语言的编程能力有了显著的提升。
软件技术基础2实验任务3
《软件技术基础2》实验报告3学院机械学院专业能源与动力工程年级2015姓名666任课教师葛卫民实验指导葛卫民2016年10月日实验三一、实验目的通过本试验,使学生理解数组、指针的概念及基本用法;掌握数组与指针程序的设计方法;掌握求最大最小、排序、字符串处理等基本算法的思想和使用方法。
二、实验内容1.通过程序实例,理解数组及指针的概念及基本语法。
2.编写教材第三章习题3中1、2、3、5、6、7要求的程序,并完成上机调试的实验任务。
其中第3题的第7小题需要分别用数组、指针结合动态内存分配两种方法来实现。
三、实验准备1.复习第三章的内容,重点是3.1、3.2、3.5节的内容及相关例题;2.编写教材第三章习题3中1、2、3、5、6、7要求的程序。
四、实验任务任务一:第1小题1.内容:向数组a中输入十个整数,求其中最大值,最小值和十个数的算术平均值。
2.源程序:#include <iostream.h>void main( ){int a[10],amax,amin,sum(0);double ave;cout<<"输入10个数:";for (int i=0; i<10; i++) cin>> a[i];for(i=0;i<10;i++) sum+=a[i];ave=sum/10.0;amax=amin=a[0];i=1;while(i<10){ if(a[i]>amax) amax=a[i];if(a[i]<amin) amin= a[i];i++;}cout<<"算术平均值="<<ave<<endl;cout<<"最大值="<<amax<<endl;cout<<"最小值="<<amin<<endl;}3.运行结果:4.实验中遇到的主要问题及解决方法无任务二:第2小题1.内容:输入十个学生一门课的成绩,分别统计大于平均值的人数和小于60分的人数。
c语言上机报告
c语言上机报告C语言上机报告(C Programming Report)一、背景介绍我们学校的C语言课程要求我们每个学期都要完成一些上机实验。
本次上机实验主要是让我们巩固和应用所学的C语言知识,加深对C语言的理解和掌握。
二、实验内容本次实验主要是编写一个简单的学生信息管理系统。
要求实现以下功能:1. 添加学生信息:输入学生的姓名、年龄、性别和学号,并将其添加到学生信息库中。
2. 删除学生信息:通过输入学生的学号,从学生信息库中删除该学生的信息。
3. 修改学生信息:通过输入学生的学号,修改该学生的姓名、年龄、性别等信息。
4. 查询学生信息:通过输入学生的学号,查询该学生的姓名、年龄、性别等信息。
5. 显示所有学生信息:将学生信息库中的所有学生信息按照一定格式进行展示。
三、实现过程1. 首先,我们定义一个结构体来存储学生的信息。
结构体包含姓名、年龄、性别和学号等成员变量。
2. 然后,我们定义一个数组来作为学生信息库,每个元素都是一个学生信息的结构体。
3. 编写函数实现不同的功能。
例如,添加学生信息的函数会从用户那里获取学生的姓名、年龄、性别和学号,并将其添加到学生信息库中。
4. 在主函数中,通过循环实现菜单的显示和用户输入的获取。
根据用户的选择,调用相应的函数来执行对应的功能。
5. 最后,编译和运行程序,测试各个功能是否正常。
四、遇到的问题及解决方法在实现过程中,我们遇到了一些问题。
例如,如何实现添加学生信息的功能,如何从用户那里获取输入等。
针对这些问题,我们通过查阅相关的资料和向老师请教,找到了解决方法。
五、实验结果经过测试,我们的学生信息管理系统能够正常运行,各个功能也能够按要求实现。
用户可以通过菜单选择不同的功能,对学生信息进行添加、删除、修改、查询和展示。
六、实验总结通过本次实验,我们巩固了C语言的知识,提高了对C语言的理解和掌握。
同时,我们锻炼了编程的能力和解决问题的能力。
通过与同学们的交流和讨论,我们也学到了其他人的思路和方法。
c 上机实验报告
c 上机实验报告C上机实验报告随着科技的不断发展,计算机技术已经成为了现代社会中不可或缺的一部分。
而在计算机技术的学习过程中,上机实验是一个非常重要的环节。
本文将围绕C语言上机实验展开讨论,探讨C语言的基本概念、实验内容以及实验结果与心得体会。
一、C语言的基本概念C语言是一种高级程序设计语言,由贝尔实验室的Dennis Ritchie在20世纪70年代开发。
它具有简洁、高效、灵活等特点,被广泛应用于软件开发、嵌入式系统等领域。
在进行C语言上机实验之前,我们首先需要了解C语言的基本概念。
C语言的基本语法包括变量、数据类型、运算符、控制语句等。
变量是存储数据的容器,可以存储各种类型的数据,如整数、浮点数、字符等。
数据类型决定了变量所能存储的数据范围和操作方式。
运算符用于进行各种数学和逻辑运算。
控制语句用于控制程序的执行流程,包括条件语句、循环语句等。
二、C语言上机实验内容C语言上机实验内容丰富多样,旨在通过实践掌握C语言的基本语法和程序设计技巧。
以下是几个常见的C语言上机实验题目:1. 计算圆的面积和周长:要求输入圆的半径,计算并输出圆的面积和周长。
2. 温度转换:要求输入摄氏温度,将其转换为华氏温度并输出。
3. 判断闰年:要求输入一个年份,判断该年份是否为闰年并输出。
4. 数组操作:要求输入一组整数,计算并输出这组整数的最大值、最小值和平均值。
5. 字符串处理:要求输入一个字符串,统计并输出其中的字母个数、数字个数和其他字符个数。
通过完成这些实验,我们可以熟悉C语言的基本语法和常用函数,提高程序设计的能力和思维逻辑。
三、实验结果与心得体会在进行C语言上机实验的过程中,我遇到了一些困难和挑战,但也取得了一些成果和收获。
以下是我在实验中的一些心得体会:首先,实验前的准备工作非常重要。
在进行实验之前,我会先仔细阅读实验要求和相关教材,了解实验的目的和要求。
然后,我会思考和设计解决问题的思路和方法,尽量提前预测可能遇到的困难和难点。
c语言上机实验报告
c语言上机实验报告C语言上机实验报告引言:C语言是一门广泛应用于计算机编程领域的高级编程语言。
通过学习C语言,我们可以了解计算机程序的基本原理和实现方法。
在本次实验中,我们将进行一系列的C语言上机实验,旨在提高我们的编程能力和解决问题的能力。
实验一:基本语法和数据类型在这个实验中,我们首先学习了C语言的基本语法和数据类型。
我们了解了变量的定义和使用,以及常用的数据类型,如整数、浮点数和字符。
通过编写简单的程序,我们掌握了C语言的基本语法和运算符的使用方法。
实验二:流程控制和循环结构在这个实验中,我们学习了C语言的流程控制和循环结构。
我们了解了条件语句(if-else语句)和循环语句(for循环和while循环)的使用方法。
通过编写程序,我们掌握了如何根据不同的条件执行不同的代码块,以及如何使用循环结构重复执行一段代码。
实验三:数组和字符串在这个实验中,我们学习了C语言中数组和字符串的使用方法。
我们了解了如何定义和初始化数组,以及如何使用下标访问数组元素。
我们还学习了字符串的定义和常用的字符串处理函数。
通过编写程序,我们掌握了如何使用数组和字符串解决实际问题。
实验四:函数和指针在这个实验中,我们学习了C语言中函数和指针的使用方法。
我们了解了如何定义和调用函数,以及如何传递参数和返回值。
我们还学习了指针的概念和使用方法,包括指针的定义、指针的运算和指针的传递。
通过编写程序,我们掌握了如何使用函数和指针提高程序的模块化和灵活性。
实验五:文件操作在这个实验中,我们学习了C语言中文件操作的使用方法。
我们了解了如何打开和关闭文件,以及如何读取和写入文件。
我们还学习了文件指针和文件位置指示器的概念和使用方法。
通过编写程序,我们掌握了如何读取和处理文件中的数据,以及如何将数据写入文件。
总结:通过这一系列的C语言上机实验,我们深入学习了C语言的基本知识和编程技巧。
我们掌握了C语言的基本语法和数据类型,了解了流程控制和循环结构的使用方法,掌握了数组和字符串的操作技巧,学会了函数和指针的使用方法,以及文件操作的基本知识。
c语言上机实验报告
c语言上机实验报告《C语言上机实验报告》在计算机科学领域,C语言是一种非常重要的编程语言,它被广泛应用于系统软件开发、嵌入式系统设计以及高性能计算等领域。
为了更好地掌握C语言的基本语法和编程技巧,我们进行了一次C语言上机实验,以下是实验报告。
实验目的:1. 熟悉C语言的基本语法和数据类型;2. 掌握C语言的控制结构,如条件语句和循环语句;3. 学习C语言的函数定义和调用;4. 掌握C语言的数组和指针的使用。
实验内容:1. 编写一个简单的C程序,实现从键盘输入两个整数,然后输出它们的和、差、积和商;2. 编写一个C程序,实现计算n的阶乘;3. 编写一个C程序,实现对一个整型数组进行排序;4. 编写一个C程序,实现对一个字符串数组进行排序。
实验步骤:1. 首先,我们编写了一个简单的C程序,使用了scanf函数从键盘输入两个整数,然后使用printf函数输出它们的和、差、积和商。
通过这个实验,我们熟悉了C语言的输入输出函数的使用。
2. 接着,我们编写了一个C程序,实现了计算n的阶乘的功能。
在这个实验中,我们学会了如何定义和调用函数,以及如何使用循环语句。
3. 然后,我们编写了一个C程序,实现了对一个整型数组进行排序的功能。
在这个实验中,我们掌握了C语言的数组的使用方法,并且学会了一种简单的排序算法。
4. 最后,我们编写了一个C程序,实现了对一个字符串数组进行排序的功能。
通过这个实验,我们进一步掌握了C语言的数组和指针的使用方法。
实验总结:通过这次C语言上机实验,我们更加熟悉了C语言的基本语法和编程技巧,掌握了C语言的控制结构、函数定义和调用、数组和指针的使用方法。
这些知识和技能对我们今后的学习和工作都将非常有帮助。
希望通过不断的实践和实验,我们能够更加熟练地掌握C语言,为以后的编程工作打下坚实的基础。
