C语言程序设计实验报告(实验大纲+过程)_第1页
C语言程序设计实验报告(实验大纲+过程)_第2页
C语言程序设计实验报告(实验大纲+过程)_第3页
C语言程序设计实验报告(实验大纲+过程)_第4页
C语言程序设计实验报告(实验大纲+过程)_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言程序设计实验报告(实验 大纲+过程) C 程序设计实验教学大纲一、适用范围大纲适用信息管理专业本科教学使用。二、课程名称C 程序设计三、学时数与学分总学时: 90 总学分: 4实验学时: 28 实验学分: 1四、教学目的和基本要求目的:通过C 程序设计实验,培养学生对学习程序设计的兴趣, 加深对讲授内容的理解, 尤其是通过上机来掌握语法规则,使学生全面了解C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。基本要求:了解和熟悉C 语言程序开发的环境;学会上机调试程序, 善于发现程序中的错误, 并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。 上机

2、实验前, 学生必须事先根据题目的内容编好程序, 然后在实验时输入程序、 调试程序、 直至运行结果正确为止,上机结束后,应整理出实验报告。五、实验项目与学时分配序号实验项目名称实验学时实验类型1C程序的运行环境和运行一个C程序的方法2验证性实验2数据类型、运算符和表达式3验证性实验3最简单的C程序设计3验证性实验4选择结构程序设计4设计性实验5循环控制4设计性实验6数组4设计性实验7函数4设计性实验8指针4设计性实验总计28注:带*的实验项目为选做实验项目六、教材、讲义及参考书«C程序设计题解与上机指导谭浩强主编 清 华大学出版社七、实验成绩评定办法实验成绩=平时实验表现+实验报告。实

3、验 成绩占总成绩的20%。实验成绩以等级形式给出,评定等级分优、 良、中、及格、不及格五类。1、平时考核:上机实验前,学生必须事先 根据题目的内容编好程序,然后在实验时输入程 序、调试程序、直至运行结果正确为止。在实验 中,教师可根据学生编程操作能力、观察和分析 及运用知识能力、程序编制正确性以及学生的课3堂纪律、 实验态度、 保持实验室卫生等方面的表现进行综合考核。2、实验报告:学生实验后应按时完成实验报告。八、实验教学大纲说明本大纲共安排28 学时的实验, 其中带 *号实验项目为选做实验项目,实际课时为 18 学时。实验项目多为设计性实验项目, 每个设计性实验项目中都包含数个小的设计性题目

4、,其中带 *号的题目为选做题目, 有时间和有能力的同学可以选做。九、实验项目实验一 C 程序的运行环境和运行一个C 程序的方法一、实验目的1 .了解Visual C+6.0 编译系统的基本操作方法,学会独立使用该系统。2 .了解在该系统上如何编辑、编译、连接和运行一个 C 程序。3 .通过运行简单的C 程序,初步了解C 源程序的特点。 4二、实验内容1 .用编辑程序, 输入教材第一章例 1.1 程序,并进行编译和运行。 应了解所用的系统是用什么命令进行编译和连接运行的。 编译和连接后所得到的目标程序的后缀是什么形式的?2 .编写一个 C 程序,输出以下信息:*very good!*3 .输入并

5、运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。实验二 数据类型、运算符和表达式一、实验目的1 .掌握 C 语言数据类型, 熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。2 .学会使用 C 的有关算术运算符, 以及包含这些运算符的表达式, 特别是自加 (+) 和自减(-)运算符的使用。:、实验内容1 .输入并运行以下程序:main( ) char c1,c2;c1=97;c2=98;printf(“ %c%c n” ,c1,c2);printf(“ %d%d n” ,c1,c2);在此基础上将第三行、第四行改为:c1=321;

6、c2=353;再使之运行,分析其运行结果。将第二行改为:int c1,c2;再使之运行,分析其运行结果。 。2 .输入并运行以下程序:main( )int i=8,j=10,m,n;m=+i;n=j+;printf( “ %d,%d,%d,%dn ” ,i,j,m,n);分别作以下改动并运行:程序改为 :main( )int i=8,j=10;printf( “ %d,%nd” ,i+,j+);在的基础上,将printf语句改为:printf(“ %d,%nd” ,+i,+j);再将 printf 语句改为:printf(“ %d,%d,%d,%dn ” ,i,j, i+,j+);程序改为:m

7、ain( )int i=8,j=10,m=0,n=0;m+=i+;n-=-j;printf(i=%d,j=%d,m=%d,n=%dn力 .,i,j,m,n);3 . 请将下列给出的两个程序段分别输入计算机后,分析其运行结果: main() int num;num=32767;printf( “num=%dn ”,+num); main() int a=-2;printf( “%d, %dn ”,a, a-);实验三 最简单的 C 程序设计一、实验目的1 .掌握 C 语言中使用最多的一种语句赋值语句的使用。2 .掌握数据的输入输出的方法, 能正确使用各种格式转换符。二、实验内容1 .上机输入以下

8、程序:main( )int a,b;float c;scanf(“%d%d%f ” ,&a,&b,&c);printf( “a=%-4d,b=%4d,c=%f,c=%.2fn ”,a,b,c,c );要使a=3, b=4, c=12.3456,在键盘上应如何输入?有几种方式?2 . 若 将 输 入 函 数 改 为scanf( “%d,%d ,%f ”,&a,&b,&c); 应该如何输入数据?3 .上机输入以下程序:main( )int a; float b; char c;scanf(“%4d%5f%3c ”,&a,&b,&

9、;c);printf( “a=%d,a=%o,a=%x,b=%8.3f,b=%4.0f,c =%cn ”,a,a,a,b,b,c);要使a=77, b=4.56 , c= A ,在键盘上应如何输入?4 .输入两面整型变量a、 b 的值,输出下列算式以及运算结果。a+b、 a-b、 a*b 、 a/b、 (float)a/b 、 a%b每个算式占一行。如 a 等于 10, b 等于 6,a+b 应输入为:10+6=165 .编写程序,用getchar 函数读入两个字符cl、c2)然后分别用putchar函数和printf函数 输出这两个字符。上机运行程序,比较用 printf 和 putchar

10、 函数输出字符的特点。实验四 选择结构程序设计一、实验目的1 .了解C 语言表示逻辑量的方法 ( 以 0 代表“假” ,以 1 代表“真” ) ;2 .学会正确使用逻辑运算符和逻辑表达式;3 .熟练掌握if 语句和 switch 语句。二、实验内容先编程序, 解以下问题, 然后上机调试运行 程序。1 .有一个函数x x1y 2x 1 1 x 103x 11 x 10用scanf函数输入x的值(分别为x<1、1 10、)10三种情况),求y值。2. 给出一个百分制成绩, 要求输出成绩等级 A , B , C , D , E 。 90 分以上为A ,8089分为B', 7079分为C

11、', 6069分 为 D , 60 分以下为 E 。要求分别用 if 语句和 switch 语句实现输广:融T位飙循环控制一、实验目的1 .熟悉用 while 语句, do-while 语句和 for 语句实现循环的方法。2 .掌握在程序设计中用循环的方法实现各(如穷举、迭代、递推等)。二、实验内容编程序并上机调试运行。1 .输入两个正整数, 求其中最大公约数和最小公倍数。2 .输入一行字符, 分别统计出其中的英文字 母、空格、数字和其它字符的个数。3 .打印出以下图案:*4 .编程求 1!+2!+3!+20!。5 .编写程序输出乘法表实验六 数组一、实验目的1 .掌握一维数组和二维数

12、组的定义、赋值和输入输出的方法;2 .掌握字符数组和字符串函数的使用。3 . 掌握与数组有关的算法 (特别是排序算 法)。二、实验内容编程序并上机调试运行。1 . 编写程序,用 scanf 函数输入 10个整数 的数列,先将整数按照从大到小的顺序进行排序, 然后输入一个整数插入到数列中, 使数列保 持从大到小的顺序。2 .有 15 个数存放在一个数组中,输入一个数, 要求用折半查找法找出该数是数组中第几个元素的值,如果该数不在数组中,则输出“无此数” ,并且可以实现连续查找。 15 个数用赋初 值的方法在程序中给出,要找的数用 scanf 函数 输入。3 .将以下二维数组中数按列的顺序存放到一

13、个一维数组中。二维数组的内容是11 22 33 4411 22 33 4411 22 33 44则一维数组中的内容是 11 1111 2222 22 33 33 33 44 44 444 .将两个字符串连接起来,不要用strcat 函数。5 .从键盘输入5个字符串, 找出最长的字符串和最大的字符串。实验七 函数一、实验目的1 .掌握定义函数的方法;2 .掌握函数实参与形参的对应关系,以及“值传递”的方式;3 .掌握函数的嵌套调用和递归调用的方法;4 .掌握全局变量和局部变量,动态变量和静态变量的概念和使用方法。二、实验内容编程序并上机调试运行之。1 .写一个判断素数的函数,在主函数输入一个整数

14、,输出是否是素数的信息。2 .两个函数,分别求两个整数的最大公约数 和最小公倍数,用主函数调用这两个函数,并输 出结果。两个整数在主函数中输入,并传送给函 数1,求出的最大公约数返回主函数,然后再与 两个整数一起作为实参传递给函数2,以求出最小公倍数,返回到主函数输出最大公约数和最小 公倍数。3 .已知二阶Fibonacci数列:0 0若 n=0Fib(n尸 1若 n=1Fib(n-1)+Fib(n-2)其他情况定义递归函数求Fib(n)。4 .编写函数,求10 n!1实验八指针 一、实验目的1 . 掌握指针的概念,会定义和使用指针变 量;2 .学会使用数组的指针和指向数组的指针 变量;3 .

15、学会使用字符串的指针和指向字符串的 指针变量;4 .学会使用指向函数的指针变量;5 .了解指向指针的指针的概念及其使用方 法。二、实验内容编程序并上机调试运行程序 (都要求用指针 处理) 。1.定义函数void fun(intx ,int *max,int*min) ,找出数组x 中的最大值和最小值,最大值和最小值通过形参指针 max 和 min 传回。2 .编写一个函数comp(s1,s2)现两个字符 串的比较。如果s1=s2,则函数返回值为0;如果slw s2, 返回它们二者第一个不同字符的 ASCII 码差 值(如“BOY ”与“BAD ”,第二个字母不同,“O” 与“A”之差为79-6

16、5=14);如果s1>s2,则输出 正值;如 s1<s2 则输出负值。两个字符串 s1,s2 由 main 函数输入, strcmp函数的返回值也在 main 函数输出。3 .从键盘输入一个字符串与一个指定字符,调用函数,将字符串中出现的指定字符全部删除。4 .将一个3 X 3的矩阵转置,用一函数实现。在一主函数中用 scanf 函数输入以下矩阵元素:1 357 91113 1517将数组名作为函数参数, 在执行函数的过程中实现矩阵转置, 函数调用结束后在主函数中输出转置后的矩阵。实验九 结构体和共用体一、实验目的1 .掌握结构体类型变量的定义和使用;2 .掌握结构体类型数组的概念

17、和应用;3 .掌握链表的概念, 初步学会对链表进行操作;4 .掌握共用体的概念与使用。二、实验内容编程序,然后上机调试运行。1 .有 3个学生,每个学生的数据包括学号、三门课的成绩,要求用 input 函数实现从键盘输入学生数据, 用 average 函数求每个人的平均分,用 output 函数打印学生数据及平均成绩。2 .建立一个带有头结点的单链表,每个结点包括:学号、年龄,并输出链表中所有结点的数据。 在链表中查找年龄最大的结点, 并将链表中等于此年龄的结点删除 (年龄最大的结点可能不止一个) 。*3. 将一个链表按逆序排列,即将链头当链尾,链尾当链头。4.上机输入如下程序:main( )

18、union btint k; char c2;a;a.k= -7;printf(“%o,%on ”,a.c0,a.c1);分析其运行结果。64实验十 位运算一、实验目的1 .掌握按位运算的概念和方法, 学会使用位 运算符;2 .学会通过位运算实现对某些位的操作。二、实验内容编写程序,上机调试并运行。1 .编一个函数getbits,从一个16位的单元 中取出某几位( 即该几位保留原值,其余位为 0) 。函数调用形式为: getbits(value,n1,n2)value 为该 16 位数的值, n1 为欲取出的起始 位 , n2 为 欲 取 出 的 的 结 束 位 。 如 :getbits(01

19、01675,5,8)表示对八进制数 101675,取出其从左面起的第 5 位到第 8 位。要求把这几位数用八进制数打印出来。注意, 应当将这几位数右移到最右端, 然后用八进 制形式输出。2 .利用位运算操作,实现交换两个变量的 值。3 .将一个十六进制整数的各位循环左移 4 位,然后用十六进制形式输出。实验十一 文件一、实验目的1 .掌握文件以及缓冲文件系统、文件指针的概念;2 .学会使用文件打开、关闭、读、写等文件 操作函数。3 .学会用缓冲文件系统对文件进行简单的 操作。二、实验内容编写程序并上机调试运行。1 .编程序求100以内的素数,分别将它输出 到显示器屏幕和x.txt文件中,要求每

20、行5个数。2 .从键盘输入几本书的数据,每本书的数据 包括条形码、书名和价格,将每项数据分别写入 文本文件s.txt和二进制文件s.dat。*3.从上题的文本文件 s.txt或二进制文件 s.dat中读入每本书的数据,计算所有书的平均 价格。要求用i叩ut函数读入,average函数求 平均价格。统计与信息学院C程序设计实验报告(一):姓名:班级:成绩:名称:C程序的运行环境和运 个C程序的方法指导教师:实验日期:地点:实验软件(主要仪器设备):Visual C+6.01 .了解Visual C+6.0编译系统的基本操作方法,学会独立使用该系统2 .了解在该系统上如何编辑、编译、连接和运行一个

21、C程序。3.通过运行简单的C程序,初步了解C源程序的特点实验:1、打开 VisualC+6.0O2、 新建文件C+Source File,文件 名.c并更改位置 后确定。3、 编辑#include"stdio.h" int main()printf("This isa C program.n"); return 0;4、编译,无错误printf(”*printf("Very good!n");printf(n"”*return 0;实验:#include"stdio.h"int main()printf(

22、"This is a C program.n"); return 0;n"无警告后执行实验:#include"stdio.h int main()统计与信息学院 C程序设计实电报告(二)姓名:|班级:|成绩:据类型、运算符和表达式 卜旨导教师:|实验日期:实验软件(主要仪器设备):Visual C+6.0C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及 方法,了解以上类型数据输出时所用格式转换符。使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自-)运算符的使用运彳Visual C+6.0并新建工作输入ude<stdio.h&

23、gt;)c1,c2;21;c2=353;tf("%c %cn”,c1,c2);tf("%d %dn",c1,c2);编译,无错误、无警告后运行,果如下:2、编译,无错误、无警告后运行,结Press any key to continute3、将步骤2程序改为:#include<stdio.h>main()int i=8,j=10;printf("%d,%dn”,i+,j+);4、编译,无错误、无警告后运行,10resa any key to continue5、 在步骤3的基础上,将printf诧printf("d,%d"

24、,+i,+j);6、编译,无错误、无警告后运行,:ress any key to continuea any kev to continue在步骤2的基础上将第三行、第 行改为:=321;c2=353;编译,无错误、无警告后运行, 果提示:7、 在步骤3的基础上,将printf诧 printf("d,%d,%d,%加”,i,j, i+8、编译,无错误、无警告后运行,:vess anku to continue9、将步骤2程序改为:#include<stdio.h>.obj -0 error(s), 2ng在步骤2的基础上将第二行改c1,c2;编译,无错误、无警告后运行,

25、果如下:main()int i=8,j=10,m=0,n=0;m+=i+,n-=-j;printf("i=%d,j=%d,m=%d,n=%dn",i 10、编译、运行,结果如下:i=9>m=8-nPpess any ke to continue353$ Kny k号y tq continue输入ude<stdio.h>)i=8,j=10,m,n;i;n=j+;3、输入#include<stdio.h>main()int a=-2;printf("%d,%dn",a,a-);4、编译,无错误、无警告后运行,-2,-2Ppess

26、 any key to continuef("%d,%d,%d,%dn”,i,j,m,n);ude<stdio.h>num;32767;tf("num=%dn",+num);编译,无错误、无警告后运行, 果如下:32768* an9 key to continue统计与信息学院 C程序设计实验.告(三)号:I姓名:I班级:I成绩:验名称:最简单的C程序设计卜旨导教师:I实验日期:验地点:实验软件(主要仪器设备):Visual C+6.0实验1.掌握C语言中使用最多的一种语句一一赋值语句的使用。要2.掌握数据的输入输出的方法,能正确使用各种格式转换符。

27、求实验1、 运行Visual C+6.0并新建工作区2、输入#include<stdio.h>main()int a,b;float c;scanf("%d%d%f",&a,&b,&c);泣 printf("a =%-4d,b=%4d,c=%f,c=%.2fn",a,b,c,c);验3、 程与少骤4、编译,无错误、无警告后运行,结果如下:a=3 b=4 c=12.3456a-8589934&0,b858993460,c10737417& .眄时眄r c 107374176.00ress anv key

28、to continue5、有空格、tab、回车三种输入方式。将步骤 2 中的 scanf("%d%d%f",&a,&b,&c); 改: scanf( %d, %d ,%f”,&a,&b,&c);编译,无错误、无警告后运行,结果如下:a =3,1j =4,c =12,3456a-8S8993460rb=-858993480,c107374176.000009, c107374176,00Press 通ny key to continue实验实验(1) a+b1、输入#include<stdio.h>main()int

29、 a,b,c;scanf("%d,%d",&a,&b);c=a+b;printf("%d+%d=%dn",a,b,c);1、 输入#include<stdio.h>main()int afloat b;char c;scanf("%4d%5f%3c",&a,&b,&c);printf("a=%d,a=%o,a=%x,b=%8.3f,b=%4.0f,c=%cn",a,a,a,b,b,c)2、编译,无错误、无警告后运行,结果如下:a-77b=4.5fcc-,fi, a

30、=-eS8993460=31462146314.ai=c:c ccccc c, b=-107274176.330, Jj=-107374176 c =?Press any *酢y to continue(4) a/b1、输入#include<stdio.h>main()int a,b,c;scanf("%d,%d",&a,&b);c=a/b;printf("%d/%d=%dn",a,b,c);2、编译,无错误、无警告后运行, 结果如下:2、编译,无错误、无警告后 运行,结果如下:p.32+3=5Pre S3 anv key t

31、o contintie(2) a-b1、输入#include<stdio.h>main()int a,b,c;scanf("%d,%d",&a,&b);c=a-b;printf("%d-%d=%dn",a,b,c);2、编译,无错误、无警告后 运行,结果如下:18,4Lfi-4=14Press key to continue(3) a*b1、输入#include<stdio.h> main()L5/3-5 resa any key to continue(5) (float)a/b1、输入#include<s

32、tdio.h>main()int a,b,c;scanf("%d,%d",&a,&b);c=(float)a/b;printf("%d/%d=%dn",a,b,c);2、编译,无错误、无警告后运行, 结果如下:15,S15/5=3Pre畜工 any Jteg to continue(6) a%b1、输入#include<stdio.h> main()int a,b,c;scanf("%d,%d",&a,&b);int a,b,c;scanf("%d,%d",&

33、;a,&b);c=a*b;printf("%d*%d=%dn",a,b,c);2、编译,无错误、无警告后 运行,结果如下:*9=36 ress keu to continue实验(1) getchar 输出1、输入#include<stdio.h> int main()char c1,c2;c1=getchar();c2=getchar();putchar(c1);c=a%b;printf("%d%d=%dn",a,b,c)2、编译,无错误、无警告后运行, 结果如下:却3Press any key to continue(2) pri

34、ntf 输出1、输入#include<stdio.h>int main()char c1,c2;c1=getchar();c2=getchar();printf("%c%cn",c1,c2);return 0;2、编译,无错误、无警告后运行, 结果如下:L2L2?rcsff «ny ke% t中 c«ntinIB,rcss any key to centinueputchar(c2);return 0;2、编译,无错误、无警告后运行,结果如下:vess any key to continue实验总结实 验 要 求统计与信息学院C程序设计实验报

35、告(四)学号:姓名:班级:成绩:实验名称:选择结构程序设计指导教师:张雄实验日期:实验地点:实验软件(主要仪器设备):Visual C+6.01 .了解C语言表示逻辑量的方法(以0代表“假”,以1代表“真”);2 .学会正确使用逻辑运算符和 逻辑表达式;3 .熟练掌握if语句和switch语句。实 验 过 程 与 步 骤实验1、 运行 Visual C+6.0。2、输入#include<stdio.h> int main()int x,y;scanf("%d",&x);if(x<1)y=x;else if(x>=10)y=3*x-11;els

36、ey=2*x-1;printf("x=%d,y=%dn",x,y);return 0;3、编译,无错误、无警告后运实验(1) if语句1、输入#include<stdio.h>main()float x;char ch;scanf("%f",&x);if(x>=90) ch="A"else if(x>=80) ch="B"else if(x>=70) ch="C"else if(x>=60) ch="D"else ch="

37、E"printf("%cn",ch);2、编译,无错误、无警告后运行,结果如下:-1K-1.Press 占ny key cu continue1=<x<10 时,行,结果如下:X<1 时,*res9 any key to con tin ue eress any key to continuepe any ket/ to continuex>=10 时,isL=1S , y=34Press dny hey to coniinuG(2) switch 语句1、输入#include<stdio.h> main() float x;i

38、nt y;char ch; printf("Your score:"); scanf("%f",&x);y=x/10;switch(y)case10:case9:ch='A'break;case 8:ch='B'break;case 7:ch='C'break;尸Press any kev to cont inue221:Press any Itey to contxnue实验:(水仙花数)1、输入#include<stdio.h>int main()int m,a,b,c;scanf(

39、"%d",&m);if(m/100=0)printf("dataerrorn");return 0;a=m%10;b=(m/10)%10;c=m/100;if(m=a*a*a+b*b*b+c*c*c) case 6:ch='D'break;default:ch='E'printf("%cn",ch);return 0;2、编译,无错误、无警告后运行, 结果如下:Ph零g any key to continueprintf("Yn",m);return 0;elseprintf

40、("Nn",m);return 0;2、编译,无错误、无警告后运行,结果如下:datA ei*por Press any key to continueH153Pi*ess dmy key tu continue统计与信息学院C程序设计实验报告(五)姓名:I班级:I成绩:环控制口旨导教师:I实验日期:实验软件(主要仪器设备):Visual C+6.0悉用while语句)do-while语句和for语句实现循环的方法。握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等):输入两个正整数,求其中最大公 和最小公倍数。)求最大公约数输入ude<stdio.h>

41、;()m,n,i,t;nf("%d%d”,&m,&n);<m)n;n=m;m=t;i=m;while(1)if(i%m=0&&i%n=0) breaprintf(" 它们的最小2 是:dn",i);return 0;2、编译,无错误、无警告后执果如下:斯备最大公约数是:Press 3。岁 key to continuem;lem%i=0&&n%i=0) break;i-;ntf("它们的最大公约数是:%dn",i);urn 0;编译,无错误、无警告后执行,结果如七大公约数是M实验:编写程序输

42、出乘法表1、输入#include<stdio.h>main()int i,j;for(i=1;i<=9;i+)ty key to continue)求最小公倍数输入ude<stdio.h>()m,n,i,t;nf("%d%d”,&m,&n);<m)n;n=m;m=t;:输入一行字符,分别统计出其中 文字母、空格、数字和其它字符的个输入ude<stdio.h>()r c;letter,space,number,other;for(j=1;j<=i;j+) printf("%d*%d=%-3d”,j prin

43、tf("n");system("pause");2、编译,无错误、无警告后 结果如下:1*1-1 1*2=2 2-2=4 DXT 224 ETXT7“TH1-5=52-5=193-545-20S-S=251-6=42-*=i23-4 =1»4-*=M5-4=382*7-i13*7-21E»7-15fi«7-427>7-191*8-fl3546-245响TSI6*B-4B T理3T zy 4-f =36 bTXb7«9=6M S-=73话标任其苒.for(j=1;j<=2*i+1;j+) printf(&

44、quot;*");printf("n");for(i=n-1;i>=0;i-)for(j=1;j<=n-i;j+) printf("");for(j=1;j<=2*i+1;j+) printf("*");printf("n");er=space=number=other=0;=getchar();(c>='a'&&c<='z'|c>='A'&&c<='Z') lette

45、r+;Ise if(c>='0'&&c<='9') number+;lse if(c='') space+;lseother+;2、编译,无错误、无警告后运果如下:MMLJCM M犹Presrs any kuy to conixnuele(c!='n');f("letter=%d,space=%d,number=%d, r=%dn",letter,space,number,other);urn 0;编译,无错误、无警告后执行,结果如1 Kiaoxiaa ape tuo .space&

46、quot;3 , number-O,ot ber_2 iy k金y to continue实验:编程求1!+2!+3!+1、输入#include<stdio.h>int main()int n,m=1,sum=0;for(n=1;n<=20;n+)m=n*m;sum=sum+m;printf("1+2!+3!+20!=%dn:打印出以下图案: 输入7行7列菱形ude<stdio.h> ne n 3 main() ,j;i=0;i<=n;i+) r(j=1;j<=n-i;j+) rintf("");2、编译,无错误、无警告后

47、运果如下:+2? +3?.*20*=2G8040729 ress any key to continue统计与信息学院C程序设计实验报告(六)学号:实验名称:数组姓名:指导教师:班级:成绩实验日期:实验地点:实 验 要 求实验软件(主要仪器设备):Visual C+6.01 .掌握一维数组和二维数组的定义、赋值和输入输出的方法;2 .掌握字符数组和字符串函数的使用。3 .掌握与数组有关的算法(特别是排序算法)。实验:编写程序,用scanf函数 输入10个整数的数列,先将整数实 验 过 程 与 步 骤按照从大到小的顺序进行排序, 后输入一个整数插入到数列中, 数列保持从大到小的顺序。1、输入#i

48、nclude<stdio.h>main ()void Rank(int N,int n);int i,j,k;int n11;for(i=0;i<10;i+)t=ni;ni=ni-1;ni-1=t;for(i=0;i<=N-1;i+) printf("%-4d",ni);printf("n");2、编译,无错误、无警告 后运行,运行结果如下:scanf("%d”,&ni);Rank(10,n); scanf("%d",&k);实验:将两个字符串连接 起来)不要用strcat函数(1、输

49、入#define M 50#define N 20main ()char aM,bN;int i,j;gets(a);gets(b);for(i=0;ai!='0'i+);for(j=0;bj!='0'j+) ai=bj;i+;ai='0'puts(a);2、编译,无错误、无警告 后运行,运行结果如下:jiplyirlfrlend葭 niny k已“tn cnnt inn实验:从键盘输入5个字 符串,找出最长的字符串和 最大的字符串。1、输入#include "string.h"if(k>n9) n10=k; else

50、for(i=0;ni<=k;i+); for(j=9;j>=i;j-) nj+1=nj;ni=k;for(i=0;i<=10;i+) printf("%-4d",ni);printf("n");void Rank(int N,int n) int i,k,t;for(k=1;k<=N-1;k+) for(i=N-1;i>=k;i-) if(ni-1>ni)实验:有15个数存放在一个数 组中,输入一个数,要求用折半查 找法找出该数是数组中第几个元素的值,如果该数不在数组中,则 输出“无此数”,并且可以实现 连续查找。15

51、个数用赋初值的方法 在程序中给出,要找的数用scanf函数输入。1、输入#include<math.h>main()static inti,j,m,a15=2,10,13,24,35,59,68,78, 98,102,234,526,649,758,893;scanf("%d",&m); for(j=0;j<15;j+) printf("%4d",aj); printf("n");i=7;while(fabs(i-7)<8)if(m<a7)#define N 20main()chara5N,max

52、N,m,n,max1;int b5;int i,j;for(i=0;i<=4;i+) gets(ai);for(i=0;i<=4;i+) bi=strlen(ai); max1=b0;m=0;for(i=1;i<=4;i+) if(bi>=max1) max1=bi;m=i;strcpy(max,a0);n=0;for(i=1;i<=4;i+)if(ai-m=0)printf("it is at (%d)n”,i+1);break; i-;else if(m>a7)if(ai-m=0)printf("it is at (%d)n”,i+1

53、);break; i+; else printf("8n");if(fabs(i-7)-8=0) printf("无此数 n");if(strcmp(ai,max)>=0)strcpy(max,ai);n=i;printf("n");puts(am);puts(an);2、编译,无错误、无警告 后运行,运行结果如下:Eh in a.re e r- ijc a Jurnpcf ricHListr«.Lia purope Press any kev to continuem=0;for(j=0;j<=3;j+) for(i=0;i<=2;i+)bm=aij;2、编译,无错误、2警告后运行, 运行结果如下:m+;for(m=0;m<12;m+) printf("%d ",bm);printf("n");2、编译

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论