实验7 数组程序设计

合集下载

C语言程序设计实验指导书参考答案_第二版

C语言程序设计实验指导书参考答案_第二版
数的整除由键盘输入个整数逐个判断它们能否被27整除能的输出yes不能的输出no注意输出时一个判断结果占一行5个数的判断共占5第一组自测数据键盘输入271757732554正确输出yesyesyes第二组自测数据键盘输入271757732554正确输出yesyesyes提示整除即除得余数为0参考程序
C 语言程序设计 上机实验指导与习题(第二版) 参考答案(仅供教师内部参考)来自华南农业大学目 录
上机实验 ................................................................................................................................................................... 1 实验 1 C 语言程序初步 .................................................................................................................................... 1 一、实验目的............................................................................................................................................ 1 二、实验内容.................................................................................................................................

c语言实验7数组实验报告

c语言实验7数组实验报告

实验报告课程名称程序设计实验项目名称数组班级与班级代码14级计算机科学与技术1班实验室名称(或课室) SS1-332专业计算机科学与技术任课教师学号:姓名:实验日期:2014年月日广东商学院教务处制一.实验目的1.熟练掌握一维数组、二维数组的定义、赋值、输入、输出方法。

2.熟练掌握字符数组和字符串函数的使用。

3.熟练掌握一位数组以及一位数组元素的存储关系。

4.熟练掌握一位数组和二维数组的使用以及在函数中的传递。

5.通过上机实践掌握与数组有关的算法。

二、实验内容上机题1输入并运行以下程序。

实验内容:用2个数组对第3个数组进行赋值#include<stdio.h>main(){int i,a[5],b[5],c[5];a[0]=2,a[1]=6,a[2]=4,a[3]=8,a[4]=9;b[0]=2,b[1]=7,b[2]=9,b[3]=5,b[4]=3;for(i=0;i<=4;i++){c[i]=a[i]*b[i];printf("c[%d]=%d\n",i,c[i]);}}实验步骤○1int a[5]:整型一维数组说明,a是数组名,也是数组的起始地址,该数组可以存储5个整数。

a[0]~a[4]也可以看成是变量标识字符,[]中的数值称为数组下标,下标从0开始。

○2数组赋值方法和一般变量一样。

例如,a[0]=2表示将2赋给a[0]。

运行结果上机题2 输入并运行以下程序。

实验内容:对不指明数组的数组进行赋值并用循环结构进行求和#include<stdio.h>main(){int sum,i;int a[]={5,8,4,6,4,3,8,2,4,5,6};sum=0;for(i=0;i<=10;i++)sum+=a[i];printf("sum=%d\n",sum);}实验结果实验小结○1对全部元素赋初值时,可以不指定数组长度,C编译系统自动根据初值个数来决定数组长度。

程序设计基础实验

程序设计基础实验

实验5 C程序调用中的指针参数
分析程序并改正。 设计一个C程序,用以测试各表达式的运算。 想使指针变量pt1指向a和b中的大者,pt2指 向小者,以下程序能否实现此目的?如不 能实现目标,找出原因并修改之。
实验6 数组在C程序中的使用
编写程序,测试数组的定义方式是否正确。 运行C程序,根据运行结果,可以说明什么?。 操作符&用以求一个变量的地址,这在函数 scanf中已经使用过了。现在要你设计一个 程序,返回一个3 * 5 的二维数组各元素的 地址,并由此说明二维数组中各元素是按什 么顺序存储的(用二维数组和二维数组指 针两种方法实现)。
实验4 C程序函数调用
编写一个程序,给学生出一道加法运算题, 然后判断学生输入的答案对错与否,按下 列要求以循序渐进的方式编程。要求用Add 函数来进行两个整数的加法运算;用Print 函数判断正确与否;用main函数输入两个 相加的数和学生做的结果,然后判断该学 生输入的答案对错与否。
实验4 C程序函数调用
实验6 数组在C程序中的使用
已知一个数组a大小为20个元素,用随机函 数生成20个不同的2位整数填充该数组,再 将该数组元素从小到大排序。现要求任意 输入一个2位整数,要求将该数插入数组中 合适的位置,使得这个数组中的21个元素 仍然按照从小到大的顺序排列,并将数组 按下标顺序输出。
实验6 数组在C程序中的使用
(选做题)通过计算机随机产生10道四则 运算题,两个操作数为1~10之间的随机数, 运算类型为随机产生的加、减、乘、整除 中的任意一种,如果输入答案正确,则显 示“Right!”,否则显示“Not correct!”, 不给机会重做,10道题做完后,按每题10 分统计总得分,然后打印出总分和做错题 数。

C语言程序设计练习指导书实验答案

C语言程序设计练习指导书实验答案
}
(2)以下程序输入圆的半径,求圆面积。请将程序中的5处语法错误和逻辑错误改正。
#include "stdio.h"
void main()
{ int r;
float s;
printf("Enter r:");
scanf("%d", &r);
s=3.14159*r*r;
}
}
(2)已知鸡兔共有30只,脚共有90个,下面程序的功能计算并输出鸡兔各有多少只,请改正程序中的错误。
#include "stdio.h"
void main()
{ int x,y;
for(x=1;x<=30;x++)
{ y=30-x ;
if(2*x+4*y==90)printf("%d,%d\n",x,y) ;
0 x<0
y= x 0<=x<10
10 10<=x<20
-0.5x+20 20<=x<40
#include "stdio.h"
void main()
{ int a=1,b=2,c=3;
float d=4,e;
e=a/((b+c)*d);
printf("%f\n",e);
}
3.2 顺序结构程序设计
1、改错题
(1)以下程序计算并输出长方形面积和体积,请改正程序中的错误。
printf("s=%f\n",s);
}
2、填空题

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语言为载体,介绍程序设计语言的基本概念、结构化程序设计的一般方法以及算法的概念及其表示方式,C语言的基本数据类型及其运算、三种基本程序控制结构、编译预处理、数组、函数的嵌套调用与递归调用、结构体与共用体、指针及其应用、文件及其操作等,为后续其它程序设计语言与工具、学科基础课程、专业课程学习提供程序设计的基础。

三、课程目标结合专业培养目标,提出本课程要达到的目标。

这些目标包括:1.知识与技能目标通过本课程的学习,理解算法的概念与表示方式,掌握用程序框图或N-S 图对问题解决的算法思想的描述和表达。

掌握C语言的基本数据类型及其运算、三种基本程序控制结构、编译预处理、数组、函数的嵌套调用与递归调用、结构体与共用体、指针及其应用、文件及其操作。

通过学习和实践,逐步掌握程序设计的基本思想和方法,培养问题求解和语言的应用能力。

为后续课程打好基础。

2.过程与方法目标在本课程的学习过程中,学生将学习结构化程序设计的基本思想、方法。

通过大量的编程实践,使学生初步具备对现实世界问题进行抽象思维和分析,对解决问题的算法思想进行描述和表达的能力。

理解程序错误的主要方面与原因,掌握程序调试与排除错误的基本方法,培养良好的程序设计和调试能力。

3.情感、态度与价值观发展目标通过本课程的学习,使学生了解学习与运用、学习与能力的辩证关系。

培养学生独立思考、合理分配和利用时间、不断总结、提高学习效率的良好学习方法。

坚持不懈、勤于思考、严谨治学的科学态度,为未来的学习、工作奠定良好基础。

四、与前后课程的联系本课程是软件工程专业开设的第一门程序设计课程。

本课程讲授的内容在后续的专业基础课程和专业课程,如:算法与数据结构、操作系统、以及其它后续程序设计语言与工具课程中都有具体体现,是学习好上述后续课程重要基础。

程序设计基础(Ⅰ)实验目的、内容及实验报告填写要求2015新修改 (1)

程序设计基础(Ⅰ)实验目的、内容及实验报告填写要求2015新修改 (1)

封面:2015-2016学年第一学期,年级是2015级,指导教师:网络工程专业1班写:赵玉艳陈海宝;网络工程2班写:赵玉艳肖刚,其它如实填写。

实验名称:实验一用C语言编写简单程序;实验二分支结构程序设计;实验三循环结构程序设计;实验四函数程序设计;实验五数组程序设计;实验六指针程序设计;实验七结构体程序设计。

课程名称:程序设计基础(Ⅰ)实验时间:分别为9.28, 10.12, 11.9, 11.23, 12.7, 12.21, 1.4实验地点:X405组号,同组人以及成绩:不需要填写实验环境:Windows 7;Visual C++ 6.0。

实验目的实验一用C语言编写简单程序1. 熟悉VC6.0的编程环境,掌握运行C程序的基本步骤。

2. 了解C程序的基本框架,模仿例题编写简单的C语言程序。

3. 正确书写算术表达式、赋值表达式和关系表达式。

4. 掌握基本输入输出函数的使用,正确调用C语言提供的数学库函数。

5. 掌握简单的单步调试方法。

实验二分支结构程序设计1.熟练掌握关系表达式的使用。

2.熟练掌握使用else-if语句实现多分支结构程序设计。

3.熟练掌握关系表达式和逻辑表达式的使用。

4.熟练掌握字符型数据的输入输出。

5.熟练掌握用嵌套的if语句或switch语句实现多分支结构程序设计。

6.熟练掌握switch语句中的break语句的作用。

7.掌握使用断点调试程序的方法。

实验三循环结构程序设计1. 熟练使用for、while和do-while语句实现简单的循环程序。

2. 理解循环条件和循环体,以及for、while和do-while语句的相同及不同之处。

3. 掌握使用Debug菜单调试程序的方法。

4. 掌握break语句的使用。

5. 掌握continue语句的使用。

6. 熟练掌握嵌套循环程序设计。

实验四函数程序设计1. 熟练掌握函数的定义和调用。

2. 熟练掌握使用函数编写程序。

3.熟练掌握函数的实参、形参和返回值的概念及使用。

C语言程序设计实验手册

C语言程序设计实验手册

实验手册使用及要求实验操作是教学过程中理论联系实际的重要环节,而实验报告的撰写又是知识系统化的吸收和升华过程,因此,实验报告应该表达完整性、标准性、正确性、有效性。

现将实验报告撰写的有关内容说明如下:1、实验前按实验要求手写程序或程序填空,并走查代码,有疑问处标记,上机时在C语言集成开发环境下输入并调试手写程序,分析运行结果。

2、实验完毕后填写通过后的源程序和对实验的总结。

3、通过后的源程序可以手写也可以打印粘贴。

实验工程一览表实验一熟悉C语言编程环境实验目的:1.熟悉C语言编程环境〔VC++、Cfree、Turboc等〕2.了解C程序的根本框架3.理解程序调试的思想,能找出并改正C程序中的错误实验内容:1.1 建立自己的文件夹:在磁盘上建立一个文件夹,用于存放自己的C程序1.2 编程例如在屏幕上显示一个短句“Programming in C is fun!〞〔教师例如,学生模仿并创新,如输出汉字、特除字符等。

学会使用编程环境VC++,启动、编辑、编译、运行、保存、关闭、翻开〕1.3 编程在屏幕上显示如下网格。

+---+---+| | || | |+---+---+调试例如改正以下程序中的错误,在屏幕上显示“Welcome to You !〞。

〔掌握找错、改错的方法〕源程序:# include <stdio.h>int mian(void){printf(Welcome to You! \n")getchar();return 0;}注:需要修改的语句直接在程序上标注并修改实验总结:实验二用C语言编写简单程序实验目的:1.掌握算术表达式和赋值表达式的使用2.掌握根本输出函数的使用3.能够自己编程实现简单的数据处理4. 熟练掌握简单if语句使用5. 熟练掌握for语句的使用6. 掌握简单C程序的查错方法、单步调试实验内容:2.1 调试以下程序,求华氏温度对应的摄氏温度。

计算公式为:C=5*(f-32)/9#include <stdoi.h>int main(void){int celsius; fahr;scanf("%d ",fahr);celsius = 5 * (fahr - 32) / 9;printf("fahr = d, celsius = %d\n", fahr, celsius);return 0;}注:需要修改的语句直接在程序上标注并修改2.2编写程序计算定期存款本利之和:设银行定期存款的年利率rate为2.25%,并存款期为n年,存款本金为capital元,试编程计算n年后的本利之和deposit。

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

班级:计133班学号:10131516 姓名:徐晓阳实验7 数组程序设计一. 实验目的(1)熟练掌握数组的定义、数组元素的引用方法。

(2)熟练掌握使用一维、二维数组编写程序。

(3)掌握排序方法、字符串的存储及操作方法。

(4)掌握单步调试方法。

二. 实验要求熟练使用VC集成环境,能利用已学知识设计包含数组的程序,并解决实际问题。

三.实验内容1. 程序调试实践《C语言程序设计实验指导》p58中第1题、p65中第1题、p71中第1题的调试示例,不用写入实验报告。

(注:序号可编为1-3)。

2. 程序设计《C语言程序设计实验指导》p63-p64中的2-7题、p69-p70中的2-6题、p74-p76中的2-6题。

(注:序号可编为4-19)。

四.实验结果与分析在实验报告中列出相应的源程序、程序运行结果,分析实验中遇到的问题和解决问题的办法。

P63.2#include<stdio.h>int main(void){int n,i,a[10],total=0;double average;printf("Input n:");scanf("%d",&n);班级:计133班学号:10131516 姓名:徐晓阳printf("Input %d integers",n);for(i=1;i<=n;i++){scanf("%d",&a[i]);total=total+a[i];}average=1.0*total/n;printf("average=%.2lf",average);return 0;}P63.3#include<stdio.h>int main(void){int n,a[10],i,j,m;printf("Input n:");scanf("%d",&n);m=n;printf("Input %d integers:",n);for(i=1;i<=n;i++)scanf("%d",&a[i]);printf("After reversed:");for(i=1;i<=n;i++){j=a[m];m--;printf("%3d",j);}putchar('\n');return 0;班级:计133班学号:10131516 姓名:徐晓阳}P63.4#include<stdio.h>int main(void){int n,a[9],i,max=0,index;printf("Input n:");scanf("%d",&n);printf("Input %d integers:",n);for(i=0;i<n;i++){scanf("%d",&a[i]);if(a[i]>=max){index=i;max=a[i];}}printf("max=%d,index=%d\n",max,index);return 0;}P63.5#include<stdio.h>int main(void){int i,n,min,max,temp;int a[10];班级:计133班学号:10131516 姓名:徐晓阳printf("Input n:");scanf("%d",&n);printf("Input %d integers:",n);for(i=0;i<n;i++)scanf("%d",&a[i]);min=0;for(i=1;i<n;i++){if(a[i]<a[min])min=i;}temp=a[0];a[0]=a[min];a[min]=temp;max=0;for(i=1;i<n;i++){if(a[i]>a[max])max=i;}temp=a[n-1];a[n-1]=a[max];a[max]=temp;printf("After swapped:");for(i=0;i<n;i++)printf("%2d",a[i]);printf("\n");return 0;}P63.6#include<stdio.h>int main(void){i nt i,n,id,k,x;i nt a[10];p rintf("Input n:");s canf("%d",&n);班级:计133班学号:10131516 姓名:徐晓阳p rintf("Input %d integers:",n);f or(i=0;i<n;i++)scanf("%d",&a[i]);f or(k=0;k<n-1;k++){id=k;for(i=k+1;i<n;i++)if(a[i]>a[id])id=i;x=a[id];a[id]=a[k];a[k]=x;}p rintf("After sorted:");f or(i=0;i<n;i++)printf("%2d",a[i]);p rintf("\n");r eturn 0;}P64.7#include <stdio.h>int main(void){int i,x,n,k;k=0;int a[10];printf("输入数组元素个数:");scanf("%d",&n);printf("输入数组%d个元素:",n);for(i=0;i<n;i++)scanf("%d",&a[i]);printf("输入x:");scanf("%d",&x);for(i=0;i<n;i++){if(a[i]==x)k=i;elsek=k;班级:计133班学号:10131516 姓名:徐晓阳}if(k==0)printf("没有找到与%d相同的元素\n",x);elseprintf("和%d相同的数组元素是a[%d]=%d\n",x,k,a[k]);return 0;}P69.2#include <stdio.h>int main(void){i nt n,i,k,j,sum=0;i nt a[6][6];p rintf("Input n:");s canf("%d",&n);p rintf("Input array:\n");f or(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);f or(i=0;i<n-1;i++)for(j=0;j<n-1;j++)sum=sum+a[i][j];k=n-2;f or(i=1;i<n-1;i++){sum=sum-a[i][k];k=k-1;}p rintf("sum=%d\n",sum);r eturn 0;}班级:计133班学号:10131516 姓名:徐晓阳P69.3#include <stdio.h>int main(void){i nt i,j,n,k,x,y;i nt a[1][10];p rintf("Input n:");s canf("%d",&n);f or(i=0;i<1;i++)for(j=0;j<=n;j++)if(j==0)printf("* ");elsescanf("%d",&a[i][j]);f or(k=1;k<=n;k++){printf("%d",k);i=0;for(y=1;y<=k;y++){x=k*a[i][y];printf("%2d",x);}printf("\n");}r eturn 0;}P69.4#include <stdio.h>班级:计133班学号:10131516 姓名:徐晓阳int main(void){int i,j,n,k,sum,x;k=0;sum=0;int a[6][6];for(x=1;x<=2;x++){printf("Input n:");scanf("%d",&n);printf("Input array:\n");for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=1;i<n;i++){for(j=0;j<=k;j++)sum=sum+a[i][j];k=k+1;}if(sum==0)printf("YES\n");elseprintf("NO\n");}return 0;}P70.5#include <stdio.h>int main(void){int i,year,month,day,y;int day_of_year(int year,int month,int day);for(i=1;i<=2;i++){班级:计133班学号:10131516 姓名:徐晓阳printf("Input year,month,day:");scanf("%d%2d%2d",&year,&month,&day);y=day_of_year(year,month,day);printf("Days of year:%d\n",y);}return 0;}int day_of_year(int year,int month,int day){int k,leap;int a[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};leap=(year%4==0&&year%100!=0||year%400==0);for(k=1;k<month;k++)day=day+a[leap][k];return day;}P70.6#include <stdio.h>#include <stdlib.h>#define N 10#define M 10int main(void){int i,j,k,n,flag1,flag2,a[N][M],max,maxi,maxj=0;printf("Input n:");scanf("%d",&n);printf("Input array:\n");if(n>6)printf("please input 1<=n<=6!!");for(i=1;i<=n;i++)for(j=1;j<=n;j++)scanf("%d",&a[i][j]);班级:计133班学号:10131516 姓名:徐晓阳flag2=0;for(i=1;i<=n;i++){max=a[i][1];for(j=1;j<=n;j++)if(a[i][j]>max){max=a[i][j];maxi=i;maxj=j;}if(j>n&&maxj==0) goto aa;for(k=1,flag1=1;k<=n&&flag1;k++)if((k!=maxi)&&(max>=a[k][maxj]))flag1=0;if(flag1){printf("a[%d][%d]=%d\n",maxi-1,maxj-1,max);flag2=1;}aa:;}if(!flag2)printf("NO\n");return 0;}P74.2#include <stdio.h>int main(void){班级:计133班学号:10131516 姓名:徐晓阳int i,b=-1;char a,str[80];printf("Input a character:");scanf("%c", &a);printf("Input a string:");scanf("%s", str);for(i=0;i<80;i++){if(str[i]==a)b=i;}if(b==-1)printf("NotFound\n");elseprintf("index=%d\n",b);return 0;}P75.3#include <stdio.h>int main(void){int n=0,i;char s[81];printf("Input a string:");gets(s);for(i=0;s[i];i++)if(s[i]!='A'&&s[i]!='E'&&s[i]!='I'&&s[i]!='O'&&s[i]!='U'&&s[i]>='A'&&s[i]<='Z') n++;printf("count=%d\n",n);return 0;}班级:计133班学号:10131516 姓名:徐晓阳P75.4#include <stdio.h>int main(void){char a[80];int i,n;printf("Input a string:");i=0,n=0;while((a[i]=getchar())!='\n'){i++;n++;}for(i=0;i<n;i++){if(a[i]<='Z'&&a[i]>='A'){a[i]=155-a[i];}}printf("After replaced:");for(i=0;i<n;i++){printf("%c",a[i]);}printf("\n");return 0;}P75.5#include<stdio.h>#include <string.h>int main(){int i=0,j=0,end=0;char a[79],b[79];班级:计133班学号:10131516 姓名:徐晓阳printf("Input a string: ");while((a[i]=getchar( ))!='\n')i++;a[i]='\0';for(i=0;i<=strlen(a);i++){if ((a[i]>='0'&&a[i]<='9')||(a[i]>='A'&&a[i]<='F')||(a[i]>='a'&&a[i]<='f')){b[j]=a[i];j++;}}b[j]='\0';for(j=0;b[j]!='\0';j++){if (b[j]>='0'&&b[j]<='9')end=end*16+b[j]-'0';else if(b[j]>='A'&&b[j]<='F')end=end*16+b[i]-'A'+10;elseend=end*16+b[i]-'a'+10;}printf("Hex=%d\n",end);return 0;}P76.6#include<stdio.h>#include<stdlib.h>#include<math.h>void main(){char c[80];int i,j,k,x;int sum,a[80];for(i=0;(c[i]=getchar())!='\n';i++);班级:计133班学号:10131516 姓名:徐晓阳for(j=0,k=0;j<=i-1;j++){if(c[j]>='0'&&c[j]<='9'){a[k]=c[j]-'0';k++;}}x=k;for(i=0,sum=0;i<=k-1;i++){sum+=a[i]*pow(10,x-1);x--;}printf("%d\n",sum);}。

相关文档
最新文档