C语言程序设计上机实验指导

上传人:z****2 文档编号:220021585 上传时间:2023-06-28 格式:DOCX 页数:29 大小:41.35KB
收藏 版权申诉 举报 下载
C语言程序设计上机实验指导_第1页
第1页 / 共29页
C语言程序设计上机实验指导_第2页
第2页 / 共29页
C语言程序设计上机实验指导_第3页
第3页 / 共29页
资源描述:

《C语言程序设计上机实验指导》由会员分享,可在线阅读,更多相关《C语言程序设计上机实验指导(29页珍藏版)》请在装配图网上搜索。

1、C 语言程序设计上机实验指导目录实验一 C语言程序的开发环境实验二 数据类型描述实验三 顺序结构实验四 选择结构实验五 循环结构实验六 函数与编译预处理1216实验七 数组 实验八 指针 实验九 结构体数据类型与链表2527实验十 共用体与枚举类型实验十一 文件 实验一 C语言程序的开发环境一、目的、要求1、使学生了解c语言不同于其他语言的特点。2、掌握在c语言的开发环境中如何实现简单程序的编辑、运行,熟悉c程序的 开发环境及上机步骤。3、通过简单的c程序,熟悉c语言程序的结构特点,掌握其基本结构框架。4、通过实践,掌握c源程序的书写格式。二、预习内容1、熟悉Turbo c的集成开发环境,掌握

2、启动、退出、编辑运行的操作。2、了解基本命令及函数:include,include,main(),pri ntf( ),scanf ()等。三、上机内容1、输入下列程序,记录在Turbo c下的操作方法。 #include main()printf(“I am a student!”);环境的启动操作:程序的编译方法:快捷键是;菜单操作是程序的保存方法:快捷键是;菜单操作是程序的运行方法:快捷键是;菜单操作是运行结构的查看:快捷键是;菜单操作是环境的退出操作:快捷键是;菜单操作是预测结果并上机验证#include main()printf(“*n”);printf(“I am a studen

3、t!n”); printf(“*n”);预测的结果是:上机验证的结果是3、预测结果并上机验证#include#includemain()int a,b,sum; scanf(“%d,%d”,&a,&b);sum=a+abs(b);printf(“a and b is %d”,sum); 程序运行后输入:5,-5预测的结果是:上机验证的结果是:4、分析程序的功能,并上机验证 #include #includemain()int a,b,sum; scanf(“%d,%d”,&a,&b);sum=abs(a+b); printf(“%d+%d = %d”,a,b,sum);程序的功能是:上机验证的

4、结果是:5、试编写程序实现下列输出* * * * * * *编写的程序为:实验二 数据类型描述一、目的、要求1、了解C语言的数据类型的种类。3、熟悉c语言的变量与常量的定义与使用;符号常量的使用及合法标识符的命 名原则。3、掌握数据类型的定义与使用。4、掌握相关的算术运算符及相应表达式5、熟悉不同数据类型间的相互转换。二、预习内容1、继续熟悉Turbo c的集成开发环境,掌握启动、退出、编辑运行的操作。2、了解各种变量及常量的定义,熟悉标识符的正确含义。3、各种运算符的结合规则及优先级三、上机内容1、预测结果并上机验证(1) main()int a,b;a=b=3;printf(“a=%d,b

5、=%d”,a,b);预测的结果是:上机验证的结果是:若将以上程序进行改写,编辑如下:main()int a,b;a=3;b=3.1;printf(“a=%d,b=%d”,a,b);则程序运行的结果是:由此知,若赋值号左右数据类型不一致时,c语言将(2) 现有程序如下:1 main()2 3 int a=1,b=2;4 printf(“%d”,(a=a+b,b=b+a);5 程序运行的结果是:若将以上程序第四行进行改写,编辑如下: printf(“%d”,a=a+b,b=b+a);则程序运行的结果是:对比以上两程序,结果不同的原因在于(3) 若有以下程序段:int c1=2,c2=4,c3; c

6、3=1.0/c2*c1;则执行后,c3中的值是;若将程序段改为:int c1=1,c2=2,c3; c3=1/c2*c1;则执行后,c3中的值是分析c3所得结果,其中的关键在于2、填空题(1) main() int a=7, b=10; a=a+b; b=a-b; a=a-b; printf(“%d,%dn”, a, b );程序运行的功能是:(2) main() int a=0;a+=(a=8); printf(%dn,a);程序运行的结果是:(3) main()int a=2,b=5; int m=3,n; float c=2.1,d=4.5; n=a/m+b*c-d/m; printf(

7、“%d”,n);程序运行的结果是:(4) main () int x=1; printf(“%d %dn”,+x,x+);运行该程序的输出结果是(5) main()int x,y,z; x=y=1; z+=x+=y; x=z+; y=+x; z=x+y;printf(“x=%d,y=%d,z=%d”,x,y,z); 运行该程序的输出结果是3、改错题#include #define STA 30 main() int a,b=3;A=3*PI*SIN(b); STA=3*STA;printf(“%dn”,2a); printf(“%d”,STA); 正确的程序应改为:实验三 顺序结构一、目的、要

8、求1、了解C语言的基本语句的概念。2、了解数据的输入输出在c语言中的实现方法。3、掌握数据的输入输出函数的使用;熟练掌握格式输入输出函数。4、设计简单的顺序结构程序。二、预习内容1、了解c语言的基本结构。2、熟悉c语言输入输出函数的使用。三、上机内容1、写出以下程序的运行结果(1) 以下程序的输出结果是。main()unsigned int a=65536; int b; printf(“%dn”,b=a) ;分析原因得知:(2) 若有以下程序main() char a;a=a-A+B;printf(%cn,a);执行后输出结果是。(3) main()int a,b;a=3;b=3.1;pri

9、ntf(“a=%d”,a,b);执行后的输出结果是:分析原因得知:2、填空题(1) 若有程序main() int i,j;scanf(i=%d,j=%d,&i,&j);printf(i=%d,j=%dn ,i,j);要求给I赋5,给j赋10,则应该从键盘输入(2) 输入并运行以下程序:1 main( )2 int a,b;3 float d,e;4 char c1,c2;5 double f,g;6 long m,n;7 unsigned int p,q;8 a=61;b=62;9 c1=a;c2=b;10 d=3.56;e=-6.87;11 f=3157.890121;g=0.1234567

10、89;12 m=50000;n=-60000;13 p=32768;q=40000;14 printf(“a=%d,b=%dnc1=%c,c2=%cnd=%6.2f,e=%6.2fn”, a,b,c1,c2,d,e);15 printf(“f=%15.6f,g=%15.2fn m=%ld,n=%ldn16 p=%u,q=%un”,f,g,m,n,p,q);(a) 程序的输出结果是:在以上基础上,做以下改动:(b) 将程序第813行改为a=61;b=62; c1=a;c2=b;f=3157.890121;g=0.123456789;d=f;e=g; p=a=m=50000;q=b=n=-6000

11、0;运行程序,所得结果是。(c) 在(b)的基础上将printf语句改为:printf(“a=%d,b=%dnc1=%c,c2=%cnd=%15.6f,e=%15.6fn”, a,b,c1,c2,d,e);printf(“f=%f,g=%fn m=%d,n=%dnp=%d,q=%dn”,f,g,m,n,p,q);运行程序,所得结果是。(d) 将p, q改用o格式符输出。运行程序,所得结果是。(e) 改用scanf函数输入数据而不用赋值语句,scanf函数如下: scanf(“%d,%d,%c,%c,%f,%f,%lf,%lf,%ld,%ld,%u,%u”, &a,&b,&c1,&c2,&d,&

12、e,&f,&g,&m,&n,&p,&q);输入的数据如下: 61,62,a,b,3.56,-6.87,3,157.890121,0.123456789,50000 -60000,37678,40000(说明:lf和ld格式符分别用于double型和long型数据)分析运行结果。 三、编程题编辑程序,输入学生的三个课程成绩(考虑数据类型)。实验四 选择结构一、目的、要求1、掌握关系、逻辑运算符及其优先次序以及关系表达式的使用。2、重点掌握if语句的使用形式(了解各种形式的使用)。3、熟练掌握if语句的嵌套(清楚if.else的配对关系)。4、掌握选择结构的程序设计。5、熟练掌握多分支switch

13、语句的格式、功能及其使用。二、预习内容1、熟悉逻辑运算符、关系运算符的优先级,掌握表达式的书写。2、熟悉各种分支语句。3、掌握控制语句break的使用。三、上机内容1、写出以下程序的运行结果(1) 若有以下程序 main() int a=4,b=3,c=5 ,t=0; if(ab)t=a;a=b;b=t; if(abc); printf(%dn,d);(4) 若从键盘输入5&则以下程序输出的结果是main() int a;scanf(%d,&a);if(a50) printf(%d,a);if(a40) printf(%d ,a);if(a30) printf(%d ,a);(5) 有如下程序

14、 main() int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf(“a=%d,b=%dn ”,a,b);该程序的输出结果是。(6) 有以下程序main() inta=15,b=21,m二 0;switch(a%3) case0:m+;break; case1:m+;switch(b%2) default:m+; case0:m+;break;printf(“%dn”,m);程序运行后的输出结果是。(7) 有以下程序main() int i=1,j=1,k=2;if(j+|k+)&i+); print

15、f(%d,%d,%dn,i,j,k);执行后输出的结果是。(8) 设 a、b、C、d、m、n 均为 int 型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m二ab)&(n二cd)运算后,n的值为c(9) 运行程序并回答问题main( ) int a,b,max,min;scanf(%d%d,&a,&b);if(ab) max=a;min=b;else min=a;max=b; printf(max=%d,min=%dn,max,min);问题:a、此程序的功能是b、请用条件表达式语句(?:)修改程序使之完成相同的功能,其语句是。2、编程(1) 有一函数x-1(x1)

16、y2(x-1)(l=x=10)编程求当分别输入x的值为0.3, 3.9,11时,y的值。(2) 有一个不多于3位的整数,要求:a) 判断其是正数还是负数,并求出它是几位数;b) 分别打印出每一位数字;c) 按逆序打印出各位数字,例如原数为-321,应输出-123。(3) 编辑程序实现:当用户输入字母后,全部以大写格式输出,如果不是字母 则输出提示:error(4) 随机输入5个整型数据作为学生的课程成绩,编程实现由小到大排序输出 (对比第三章编程题,比较他们的优缺点)。实验五 循环结构一、目的、要求1、了解goto语句及利用goto语句构成的循环。2、掌握while语句,dowhile语句,及

17、for语句实现循环的方法及过程。3、掌握循环语句的嵌套使用,重点是for循环。4、熟悉break语句及continue语句在循环中的使用,区分其不同。二、预习内容1、熟悉while语句,dowhile语句,及for语句,掌握其运行过程。三、上机内容1、读程序,写出运行结果(1) 以下程序运行后的输出结果是。main() int i=10, j=0 ;do j=j+i; i-;while(i2); printf(“%dn”,j);(2) 设有以下程序:main() int a1,a2; scanf(“%d”,&a2);while(a2!=0) a1=a2%10;a2=a2/10; printf(

18、“%d”,a1);程序运行后,如果从键盘上输入456;则输出结果为。(3) 以下程序运行后的输出结果是。main() int x=15; while(x10&x50) x+;if(x/3)x+;break;else continue; printf(“%dn”,x);(4) 有如下程序main() int i,sum=0; for(i=1;i=3;sum+) sum+=i; printf(“%dn”,sum);该程序的执行结果是 若输入字符串:abcde回车,则以下while循环体将执行次。whil e(ch二ge tchar() = =e) prin tf(“ *”);(6)以下程序的输出结

19、果是main() int i=0,a=0; while(i20) for(;) if(i%10)= =0) break; else i-;i+=11; a+=i; printf(%dn,a);2、程序填空(1) 请你在下面的函数中填空,完成求n的功能。其中函数pi的功能是根据 以下近似公式求 n 值:(n *n )/6=1+1/(2*2)+1/(3*3)+.+l/(n*n) #include“math.h”double pi(long n) double s=0.0;long i; for(i=1;i=n;i+) s=s +return(sqrt(6*s);(2) 以下程序的功能是:按顺序读入

20、10名学生4门课程的成绩,计算出每位 学生的平均分并输出,补充实现该程序。main()int n,k;float score,sum,ave ; sum=0.0;for()for(k=l;k=4;k+)scanf(“%f”,&score);ave=sum/4.0;printf(“NO%d:%fn” ,n,ave);(3) 下列程序的功能是计算表达式的值。该表达式如下所示。1 1 1 1 + + + + 1*32*498*100 99*101补充程序完成该功能。#include “stiol.h”main()flaot s;int i;for( ,;) s+=;printf(“s=”,s);(4

21、) 利用以下程序,请填空完成如图所示的方阵输出。13 14 15 169 10 11 125 6 7 81 2 3 4main()int i,j,x;for(j=4;j-)for(i=1;i=4;i+)x=(j-1)*4+;printf(“%4d”,x);printf(“n”);(5) 以下程序的功能是输出100以内能被3整除且个位数为6的所有整数,请 填空补充完整。main()int i,j;for(i=0;i+)j=i*10+6;if() continue;printf(“%d”,j);3、编程(1) 百马百担。现有100匹马需驮100担货,其中大马驮3担,中马驮2担, 俩匹小马驮一担。编

22、程计算需要如何安排。(2) 利用循环嵌套实现如下图形输出。A1AB21ABC321ABCD4321(3) 输入n个学生的成绩(n值由用户输入决定)。要求输出其中的最高分及最 低分(比较与前2章输入学生成绩题目的不同)。(4) 输入一串字符串,以字符“#”表示输入结束。统计其中大写字母与小写 字母各出现了多少次。实验六 函数与编译预处理一、目的、要求1、了解模块化程序设计思想。2、熟悉函数的基本结构及定义方式。3、重点掌握函数调用和参数传递。4、掌握函数的嵌套调用,递归调用及递归函数设计。5、了解变量的作用域与存储方式。6、理解宏的概念,熟悉宏定义的方法,掌握其用法。二、预习内容1、熟悉函数的定

23、义及使用。2、重点掌握函数的调用及参数的传递。3、了解变量的作用域。4、掌握宏定义和文件包含等编译预处理命令三、上机内容1、预测结果,并验证(1) 现有程序如下: fun(int x, int y, int z) z=x*x+y*y; main() int a=31;fun(5,2,a); printf(“%d”,a);程序的输出结果是。分析原因可知:(2) 有以下程序:int a, b;void fun() a=100; b=200; main( ) int a=5, b=7;fun(); printf(“%dd n”, a,b);执行后的输出结果是。分析原因可知:(3) 有以下程序int

24、f(int n) if(n=1) return 1;else return f(n-1)+1;main() int i,j=0;for(i=i;i3;i+) j+=f(i); printf(“%dn”,j);运行后的输出结果是。(4) 以下程序输出的最后一个值是。int ff(int n) static int f=l;f=f*n;return f;main() int i;for(i=1;i=5;i+ ;printf(“%dn”,ff(i);(5) 设有以下函数:1 f ( int a)2 int b=0;3 static int c = 3;4 b+; c+;5 return(a+b+c)

25、;6 如果在下面的程序中调用该函数,则输出结果是 。main() int a = 1, i;for(i=0;i2) return(fib(n-1)+fib(n-2);else return(2);main() printf(“%dn”,fib(3);2、程序填空(1) strcen函数把b字符串连接到a字符串的后面,并返回a中新字符串的长 度。请填空实现该函数功能。strcen(char a, char b) int num=0,n=0;while(*(a+num)!二 ) num+;while(bn)*(a+num)=bn; num+; return(num);(2) isprime 函数的

26、功能是判断形参 a 是否为素数。如果是素数,则返回1,否 则返回 0。补充程序完成功能设计。int isprime( )int I;for(I=2;Ia/2;I+)if (a%I=0) 3、编程(1) 编辑函数,实现两数互换操作。(2) 编辑函数求水仙花数。要求通过main函数控制数值范围(即求出某范围 内的水仙花数)。(3) 输入两数,要求编辑函数求该数的最大公约数。(4) 利用函数实现n!实验七 数组一、目的、要求1、熟练掌握一维数组、字符数组的定义、初始化、引用的方法。2、掌握二维数组的定义、初始化、引用的方法。3、掌握字符串函数的使用。4、掌握数组作为函数的参数的使用。5、了解与数组有

27、关的非数值计算方法:气泡排序、选择排序、折半查找算法记 杨辉三角等。二、预习内容1、数组的定义方法。三、上机内容1、预计结果并上机验证(1) 下列程序段的输出结果是。main() char s二abcdef;s3=0; printf(%sn,s);(2) 若有以下程序main() int a44=1,2,-3,-4,0,-12,-13,14 ,-21,23,0,-24,-31, 32,-33,0;int i,j,s=0;for(i=0;i4;i+) for(j=0;j4;j+) if(aij0) continue; if(aij=0) break; s+=aij; printf(%dn,s);

28、执行后输出结果是。(3) 以下程序的输出结果是。main() int a33= 1, 2,3,4,5,6 ,i,j,s=0; for(i=1;i3;i+)for(j=0;j=i;j+)s+=aij;printf(“%dn”,s);(4) 以下程序段的输出结果是。main() char ch35 = AAAA,BBB,CC;char s=141141abct;printf (%sn,s);printf(%sn,ch 1);(5) 以下程序的输出结果是。main() int b33=0,1,2,0,1,2,0,1 ,2,i,j,t=1;for(i=0;i3;i+)for(j=i;j=i;j+) t

29、=t+bibj j; printf(%dn,t);(6) 有以下程序main() char a = a,b,c, d, e, f, g, h, 0 ; int i,j;i=sizeof(a);j=strlen(a); printf(“%d,%db”i,j);程序运行后的输出结果是。2、程序填空(1) 以下fun函数的功能是:在第一个循环中给前10个数组元素依次赋1、2、3、4、5、6、7、8、9、10;在第二个循环中使a数组前10个元素中的值对 称折叠,变成1、2、3、4、5、5、4、3、2、1。请填空。fun( int a ) int i;for(i=1; i=10; i+)=i;for(i

30、=0; i5; i+) =ai;(2) 函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形 式如下11 11 2 11 3 3 11 4 6 4 1.其构成规律是:(1) 第0列元素和主对角线元素均为1(2) 其余元素为其左上方和正上方元素之和(3) 数据的个数每行递增1 请将程序补充完整。#define N 6void yanghui(int xNN) int i,j; x00=1; for(i=1;iN;i+) xi0=1;for(j=l;ji;j+)xij=; 函数f的功能是在数组x的n个数(n个数互不相同)中找出最大最小数, 将其中最小数与第一个数对调,把最大数与最

31、后一个数对调。请填空。 #include “stdio.h” void f(int x,int n)int p0,p1,i,j,t,m; i=j=x0;p0=p1=0; for(m=0;mi)i=xmp0=m;else if(xmj) j=xm;p1=m; t=xp0;xp0=xn-1;xn-1=t;t=xp1;xp1=; main() int a10,u;for(u=0;u10;u+) scanf(“%d”,);f(a,10);for(u=0;u10;u+) printf(“%d”,au); printf(“n”);(3)函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b

32、 所指二维数组的第0列中,把a所指的二维数组中的第0行放到b所指的 二维数组的最后一列。其他数据不变。请填空。#define N 4 void rotate(int aN,int bN)int i,j; for(I=0;iN;i+)bIN-1=;(4) 程序的功能是求出数组中各个相邻两个元素的和,依次存放到 a 数组中, 然后输出。请填空。mian ()int x10,a9,i; for(i=0;i10;i+) scanf(“%d”,&xi);for(;I10;I+)ai-1=xi+;for(i=0;i9;i+)printf(“%d”,ai); printf(“n”);3、编程(1) 编辑程序

33、,将用户输入的任意字符串中的数字字符全部删除,形成新的字 符串输出。(2) 有 m 行 n 列的整数矩阵,现由用户给其赋值。要求编程找出其中最大数及 其所在行列。(3) 输入 n 个学生成绩,计算他们的平均值并输出所有高于平均成绩的学生成 绩(试与前各章节中输入学生成绩的题目比较,有和优点)。实验八 指针一、目的、要求1、重点掌握指针与指针变量的概念,指针与地址运算符的关系及运算;2、重点掌握指针常量的定义、初始化、与使用;3、掌握指针与数组、函数以及字符串的关系,熟练掌握指向数组、函数与字符 串的指针变量,并能够通过指针灵活引用该类型的数据;4、了解指向指针变量的指针;5、了解指针数组与多级

34、指针变量。二、预习内容1、掌握指针常量的定义、初始化、与使用;2、掌握指针运算符的使用。三、上机内容1、程序填空(1) 以下函数fun的功能是返回str所指字符串中以形参c中字符开头的后继 字符串的首地址。例如:str所指字符串是“Hello!”,c中的字符为e, 则函数返回字符串ello!的首地址。若str所指字符串为空串或不包含c 中的字符,则函数返回NULL。请填空。char *fu n(char *st r,char c)int n=0;char *p=str;if(p!=NULL)while(pn!=c &pn!=0) n+if(pn=0);return;(2) 以下程序的功能是利用

35、指针指向三个整型变量,并通过指针找出其中最大 的值,输出到屏幕上。请填空。main()int x,y,z,max,*px,*py,*pz,*pmax;scanf(“%d%d%d”,&x,&y,&z);px=&x;py=&y;pz=&z;pmax=&max;if(*pmax*py) *pmax= *py; if(*pmaxnext;m=p-data;p=p-next;for(;p!=NULL;p=)if(p-datanext;while()printf(“%sn”,p-sub);main()Node *hd;hd=fun();disp(hd); printf(“n”);2、编程(1)利用结构体类

36、型编写程序。要求记录3个学生的学号、姓名及课程成绩。找 出其中最高分输出。(2) 已知链表节点信息为学号、姓名、课程成绩。现有两个链表均按学号升序排 列。现在编程实现链表合并,要求仍按升序排列。实验十 共用体与枚举类型一、目的、要求1、理解共用体类型和枚举类型的概念;2、掌握共用体类型变量的定义与使用;3、了解枚举类型变量的定义。二、预习内容1、了解内存的动态分配。三、上机内容1、程序填空(1) 以下程序用已读入两个学生的情况存入结构数组。每个学生的情况包括: 姓名,学号,性别。若是男同学,则还登记视力正常与否(正常用Y,不 正常用N);对女学生则还登记身高和体重。请填空。structchar

37、 name 10;int number:char sex;unionchar eye;struct int heigth;int weight; f;body;.per2;main () int i;for (i=0;i2;i+) scanf (“%s %d %c”,&peri.name,&peri.number,&peri.sex); if(peri.sex=m)scanf (“%c”, );else if (peri.sex=f)scanf(“%d %d”, )else printf (“input errorn”);(2) 写出下列程序的输出结果。enum coin penny,nick

38、el,dime,quarter,half_dollar,dollar ; char *name =“penny”,”nickel”,”dime”,”quarter”, ”hal_fdollar”,”dollar”;main () enum coin money1,money2;money1=dime;money2=dollar;printf(“%d %dn”,money1,money2);printf(“%s %sn”,name(int)money1,name(int)money2); 2、编程 利用共用体类型编辑程序。要求3组记录分别记录学生的学号(或教师工号) 姓名、某一门课程成绩(或教师

39、所在院系)。实验十一 文件一、目的、要求 1、了解理解文件的基本概念; 2、熟悉文件类型指针;3、了解文件的定义、打开、读、写及关闭等基本操作的实现。二、预习内容1、了解文件的基本概念及相关操作函数。三、上机内容1、读程序,写结果(1) 下面的程序执行后,文件testt .t中的内容是。#includevoid fun(char *fname.,char * st) FILE *myf; int i; myf=fopen(fname,“w ” ); for(i=0;ibr sti,myf); fclose(myf); main() fun(“test”,“new world”; fun(“te

40、st”,“hello,”0;)(2) 有以下程序main() unsigned char a,b,c; a=0x3;b=a|0x8;c =b1; printf(“%d%dn”,b, c);程序运行后的输出结果是。(3) 有以下程序#include main() FILE *fp;in ti=20,j=30,k,n; fp=fopen(“d1.dat”“w”); fprintf(fp,“%dn”,i);fprintf(f p,“%dn”j); fclose(fp);fp=fopen(“d1.dat”,“r”); fp=fscanf(fp,“%d%d”,&k,&n);printf(“%d%dn”,

41、k,n); fclose(fp);程序运行后的输出结果是。2、程序填空(1) 以下程序用来统计文件中字符个数。请填空补充实现。 #include stdio.hmain() FILE *fp; long num=0L; if(fp=fopen(fname. dat,r)=NULL) pirntf(Open errorn); exit(0);while( ) fgetc(fp); num+; printf(num=%1dn,num-1); fclose(fp);(2) 以下程序段打开文件后,先利用 fseek 函数将文件位置指针定位在文件 末尾,然后调用ft ell函数返回当前文件位置指针的具体

42、位置,从而确定 文件长度,请填空。FILE *myf; ling f1;myf= ( “test .t, “rb);fseek(myf,O,SEEK_END); f1=f tel(myf); fclose(myf);printf(“%dn,f1);(3) 下面程序把从终端读入的文本(用作为文本结束标志)输出到一个名为 bi.dat的新文件中。请填空。#include “stdio.h FILE *fp; char ch;if( (fp=fopen ( ) )= = NULL)exi t(0);while( (ch=getchar( ) != ) fputc (ch,fp);fclose(fp);3、编程。1) 从键盘输入文件内容,要求保存到c:pral. txt文件中。2) 从键盘输入字母,要求将所有字母以大写形式保存到c:pra2. txt中。3) 将pral. txt和pra2. txt文件的内容合并存入c:pra3. txt中。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!