C语言实验报告_第1页
C语言实验报告_第2页
C语言实验报告_第3页
C语言实验报告_第4页
C语言实验报告_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、学生实验报告册(理工类)课程名称:C语言程序设计 专业班级:13电气工程及其自动化学生学号:1304102013 学生姓名:孙健所属院部:机电工程学院指导教师:胡盈盈20 1320 14学年第二学期金陵科技学院教务处制实验报告书写要求实验报告上交电子稿,标题采用四号黑体,正文采用小四号宋体, 单倍行距。实验报告书写说明实验报告中实验目得与要求、实验仪器与设备、实验内容与过程、 实验结果与分析这四项内容为必需项。 教师可根据学科特点与实验具 体要求增加项目。填写注意事项(1) 细致观察,及时、准确、如实记录。(2) 准确说明,层次清晰。(3) 尽量采用专用术语来说明事物。(4) 外文、符号、公式

2、要准确,应使用统一规定得名词与符号。(5) 应独立完成实验报告得书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明实验报告得批改要及时、认真、仔细 , 一律用红色笔批改。实验 报告得批改成绩采用五级记分制或百分制 , 按金陵科技学院课堂教 学实施细则中作业批阅成绩评定要求执行。实验项目名称:初级程序设计实验学时:6同组学生姓名:实验地点:A206实验日期:4、10-4、24实验成绩:批改教师:胡盈盈批改时间:实验1初级程序设计、实验目得与要求(1) 熟悉Visual C+集成环境,进行编辑、保存、编译、连接及运行 ,并能进行简单程序调试;(2) 掌握C语言中各种运算符得使用;(3)

3、 掌握C语言中各种数据类型得区别与应用;(4) 熟练掌握C语言中变量得定义、赋值与使用,表达式语句、输入/输出语句得使用;(5) 掌握C语言中输入/输出函数得使用;(6) 掌握C语言中控制语句得使用,含if-else 、for、while、do-while 语句得使用。、实验仪器与设备奔腾以上计算机,装有windows XP以上版本操作系统与 Visual C+ 6 、0软件。、实验内容与过程1、程序调试(1) #include <stdio 、h>mai n() int s,t ,p ,sum;scanf( “ %d%d%d ,&s,&t,&p);sum=

4、s+t+ p;prints“ sum=%dr” ,sum);(2)#i nclude <stdio、h>mai n() int k=3;if(k=3) printf(“ * ” );elsepnntf("#”);II II II J J(3)#i nclude <stdio、h>mai n()int k=0;do printf(“k=%dn ”,k);while(k+>0);2、程序改错面就是判断一个学生考试成绩及格与否得程序(成绩A ,或B ,或C者为及格;成绩为D者不及格),调试并改进如下程序使其能满足上述输出得需要。 include <std

5、io、h>main() char mark= “ A”;switch(mark) caseA”:caseB”:caseC” : printf(>=60n”);caseD” : printf(<60n”);default: printf(Errorn”);3、程序设计(1) 功能 : 编程实现使实型正数保留 2位小数 , 并对第三位进行四舍五入。 例如 : 实型数为 1234 、567, 则函数返回 1234 、 570000;实型数为 1234、564, 则函数返回 1234 、 560000 。(2) 功能 : 从键盘输入一个大写字母 , 要求改用小写字母输出。(3) 功能

6、 : 编写函数计算下列分段函数得值 :(4) 功能:判断整数x就是否就是同构数。若就是同构数,函数返回1;否则返回0。X得值由主函数从键盘读入 ,要求不大于 100。说明:所谓“同构数 ”就是指这样得数 ,这个数出现在它得平方数得右边。 例如: 输入整数 5,5得平方数就是 25,5就是25中右侧得数 ,所以5就是同构数。(5) 功能:功能:计算正整数n得所有因子(1与n除外)之与并输出。n得值由键盘输入。例如 :n=120 时, 输出 239。+ 1/n!(6) 功能: 计算并输出下列多项式得值 S = 1 + 1/1! + 1/2! + 1/3! +、例如:键盘给n输入15,则输出为:s=

7、2、718282。注意:要求n得值大于1但不大于100。(7) 功能:从低位开始取出长整型变量s奇数位上得数,依次构成一个新数放在t中。例如:当s中得数为:时,t中得数为:7531。4、思考题(1)功能:判断一个三位数就是否”水仙花数”。在main函数中从键盘输入一个三位数,并 输出判断结果。说明 :所谓"水仙花数 "就是指一 3位数 ,其各位数字立方与等于该数本身。例如 :153 就是一个水仙花数 , 因为 153=1+125+27。(2) 功能:计算并输出3到n之间所有素数得平方根之与。例如:键盘给n输入100后,输出为:sum=148、874270。(3) 功能:输出

8、Fib on acci数列中大于s得最小得一个数。其中Fib on acci数列F( n)得定义为:F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2)例如:键盘输入s=1000时,输出1597。程序清单及流程图 :2、#include<stdio 、 h>main()char mark='A'switch(mark)case'A':case'B':case'C':printf(">=60n");break;case'D':printf("<60n&

9、quot;);break;default: printf("Errorn");3(1)#include<stdio 、 h>main()float n,m;printf("please enter a number");scanf("%f",&n);m = n*100+0 、 5;m = (int) m;printf("%f",m/100 、0);3(2)#include<stdio 、 h>main()char ch;printf("press a key and the

10、n press Enter:");ch=getchar();ch = ch+32;putchar(ch);putchar('n');3(3)#include<stdio 、 h> main()int x,y,f(x);printf(" 请输入 x");scanf ("%d",&x);if (x<0&&x!=-3)y=xA2+X+6;elseif (0<=x<10&&x!=2&&x!=3) y=x2-5*x+6;elsey=x2-x-1; pri

11、ntf("%d",y); 3(4) #include<stdio 、 h> main() int x,m; printf("input x<=100:"); scanf("%d",&x);if (xA2)%10=x%10)m=1;else m=0;while (m=1)printf("%d 就是同构数 n",x) ;break;while (m=0)printf("%d 不就是同构数 n",x) ;break; ;3(5)#include <stdio 、h>

12、;main()int n,i,sum=0;printf(" 请输入一个正整数 :"); scanf("%d",&n);for(i=2;i<n;i+)if(n%i=0) sum+=i;printf("%d",sum);3(6)#include<stdio 、 h>main()int n,j,i=1;double sum=0、 00;printf(" 请输入一个正整数 n(1<n<=100)"); scanf("%d",&n);for(j=1;j<

13、=n;j+)i*=j; sum+=1、00/i;printf("%lf",sum);4(1)#include <stdio 、h>#include <math 、 h>void main()int n,a,b,c;printf(" 请输入一个三位数 :"); scanf("%d",&n);if(n<100 | n>999)printf(" 输入有误! n");else a=n/100; b=(n-100*a)/10; c=n%10;if(n=a*a*a+b*b*b+c*c

14、*c)printf("%d 就是一个水仙花数 !n",n);elseprintf("%d 不就是一个水仙花数 !n",n); return;四、实验结果与分析(程序运行结果及其分析)2、: £:壮3&4102025懂Webug迄色g 凹 lM>-&0*Protts 4nv ka# to oontinuo.p二3(1)I M ' D: 1 (Ml C ?G 3Dp >o3<1 y exe'O Oplease enter a riunbcrl234.5671 S 34_ E7R0尿空lee屮&quo

15、t;to cont "inue3(2)3(3)3(4)n D:订 5C4102022 厲一黙D 砧 Lig2 ae*input x<=100;5湛同构数Press any key to continue.3(5)3(6).eKe ;| 回ol. -71 RBJJPt'Rss any Xy to cnntiniiR五、实验体会(遇到问题及解决办法,编程后得心得体会)1、经常把“=”当做“=”;2、常忘记最后得“ ”与“;”实验项目名称:中级程序设计实验学时:8同组学生姓名:实验地点:A206实验日期:5 、8-5、22实验成绩:批改教师:胡盈盈批改时间:实验 2 中级程序

16、设计、实验目得与要求(1) 掌握函数得定义、调用及返回、声明得应用(2) 熟练掌握一维数组得定义、初始化及使用(3) 掌握二维数组得定义、初始化及应用(4) 熟练掌握向函数传递一维数组得方法与应用(5) 掌握向函数传递一维数组得方法与应用。、实验仪器与设备奔腾以上计算机 , 装有 windows XP 以上版本操作系统与 Visual C+ 6 、 0 软件。三、实验内容与过程1、程序调试#include <stdio、 h>int func(int a,int b)return(a+b); main()int x=3,y=8,z=4,r;r=func(func(x,y),z);p

17、rintf( “r=%d n”,r);2、程序改错要求 :1 、改错时 , 只允许修改现有语句中得一部分内容, 不允许添加与删除语句。2、提示行下一行为错误行。(1) 功能:判断m就是否为素数,若就是返回1,否则返回0。#include <stdio、 h>/*FOUND*/ void fun( int n)int i,k=1;if(m<=1) k=0;/*FOUND*/ for(i=1;i<m;i+)/*FOUND*/ if(m%i=0) k=0;/*FOUND*/ return m;void main()int m,k=0;for(m=1;m<100;m+)i

18、f(fun(m)=1)printf("%4d",m);k+;if(k%5=0) printf("n");(2) 功能:在一个已按升序排列得数组中插入一个数 ,插入后 ,数组元素仍按升序排列。 #include <stdio 、 h>#define N 11main() int i,number,aN=1,2,4,6,8,9,12,15,149,156;printf("please enter an integer to insert in the array:n");/*FOUND*/scanf("%d"

19、;,&number)printf("The original array:n");for(i=0;i<N-1;i+)printf("%5d",ai);printf("n");/*FOUND*/for(i=N-1;i>=0;i-)if(number<=ai)/*FOUND*/ai=ai-1;elseai+1=number;/*FOUND*/ exit; if(number<a0) a0=number;printf("The result array:n");for(i=0;i<N

20、;i+)printf("%5d",ai);printf("n");(3) 找出一个二行三列二维数组中得最大值 , 输出该最大值及其行列下标 ,建议二维数组 值由初始化给出。#include "stdio、 h"#include "conio 、 h"main()int i,j,max,s,t;/*FOUND*/int a2=1,34,23,56,345,7; clrscr();/*FOUND*/max=0;s=t=0;for(i=0;i<2;i+) /*FOUND*/for(j=1;j<3;j+)if(

21、aij>max) max=aij; s=i; t=j; /*FOUND*/printf("max=a%d%d=%dn",i,j,max); 3、程序设计说明,所有题目均需添加 main(), 在 main() 中调用子函数并设计完整得输入输出才可调 试通过 。求一分数序列 2/1,3/2,5/3,8/5,13/8,21/13得(1) 功能:编写函数 float fun(int n),前n项之与。说明 : 每一分数得分母就是前两项得分母之与 , 每一分数得分子就是前两项得分子之与。 例如 :求前20项之与得值为 32、660259。(2) 完成子函数 int fun(i

22、nt n), 找出一个大于给定整数且紧随这个整数得素数 , 并作为 函数值返回。(3) 功能:编写函数 void fun(int n,int a),字存到一维数组 ,然后在主函数输出。例如输入(4) 功能 : 编写函数 void fun(int arr,int n) main() 函数中输出。按顺序将一个 4 位得正整数每一位上得数5678,则输出结果为 5 6 7 8 。将一个数组中得值按逆序存放 , 并在例如 : 原来存顺序为 8,6,5,4,1 。要求改为 :1,4,5,6,8 。(5) 功能:程序定义了 NX N得二维数组,并在主函数中自动赋值。请编写函数fun(intaN,int n

23、),使数组a左下三角元素中得值乘以n。例如:若n得值为3,a数组中得值为| 1 9 7 | 3 9 7 |a = | 2 3 8 |则返回主程序后a数组中得值应为| 6 9 8 | 4 5 6 | 12 15 18|实现矩阵 (3行3列)得转置 (即行列互(6) 功能: 编写函数 void fun(int array33), 换)。例如 : 输入下面得矩阵 :300600900100 200400 500700 800 程序输出 :700800100 400200 500300 6009004、讨论、思考题(1) 功能 : 编写函数 float fun(), 利用以简单迭代方法 Xn+1=co

24、s(Xn) 求方程 :cos(x)-x=0 得一个实根。迭代步骤如下 :1) 取x1初值为0、0;2) x0=x1,把x1得值赋给x0;3) x1=cos(x0), 求出一个新得 x1;4) 若x0-x1得绝对值小于0、000001,执行步骤(5),否则执行步骤(2);5) 所求 x1 就就是方程 cos(x)-x=0 得一个实根 , 作为函数值返回。 输出 : 程序将输出结果 Root=0 、 739085。(2) 功能 : 编写 float fun(float array,int n), 统计出若干个学生得平均成绩 , 最高分 以及得最高分得人数。例如 : 输入 10 名学生得成绩分别为

25、92,87,68,56,92,84,67,75,92,66, 则输出平均成绩为 77、9,最高分为 92, 得最高分得人数为 3人。(3) 编写函数 int fun(int lim,int aaMAX),该函数得功能就是求出小于 lim 得所有素数并放在 aa 数组中 , 该函数返回求出素数得个数。指向一个M行N列得二(4) 功能: 编写函数 int fun(int aMM), 求 5行 5 列矩阵得主、副对角线上元素之与。 注意 , 两条对角线相交得元素只加一次。(5) 功能 : 请编一个函数 void fun(int ttMN,int ppN),tt维数组,求出二维数组每列中最小元素,并依

26、次放入PP所指一维数组中。二维数组中得数已在主函数中赋予。程序清单及流程图 :2、(1) #include<stdio 、h> int fun (int m)int i,k=1; if(m<=1) k=0; for(i=2;i<m;i+)if(m%i=0) k=0; return k;void main()int m,k=0;for (m=1;m<100;m+) if(fun(m)=1) Printf("%4d",m);k+;if(k%5=0)Printf("n");2(2)#include <stdio 、 h>

27、;#define N 11main() int i,number,aN=1,2,4,6,8,9,12,15,149,156; printf("please enter an integer to insert in the array:n"); /*FOUND*/ scanf("%5d",&number); printf("The original array:n"); for(i=0;i<N-1;i+) printf("%5d",ai);printf("n"); /*FOUND*

28、/ for(i=N-2;i>0;i-) if(number<=ai)/*FOUND*/ai+1=ai;elseai+1=number;/*FOUND*/break;if(number<a0) a0=number; printf("The result array:n");for(i=0;i<N;i+) printf("%5d",ai);printf("n");2(3)#include <stdio 、 h>#include <conio 、 h> main()int i,j,max,s,

29、t;/*FOUND*/int a23=1,34,23,56,345,7;/*FOUND*/ max=a00;s=t=0;for(i=0;i<2;i+) /*FOUND*/for(j=0;j<3;j+) if(aij>max) max=aij; s=i; t=j; /*FOUND*/printf("max=a%d%d=%dn",s,t,max);3(1)#include<stdio 、h>float fun(int n)float w=1 、0,x=2、0,y=2 、0,z=3、0,k,sum=0、0,p,q;int i;if (n=1)sum=

30、x/w;return sum;else if (n=2)sum=x/w+z/y;return sum;elsefor(i=3;i<=n;i+)k=(x+z)/(w+y);sum+=k;p=y;q=z;y=w+y;z=x+z;w=p;x=q;、5; return sum+3 main() int m;printf(" 请输入正整数 m"); scanf("%d",&m);printf (" 序列前 c项与为 f",m,fu n( m); 3(2) #include<stdio 、h>int fun(int n)

31、int j,k,l=0;for (j=n+1;j+)for (k=2;k<j;k+)if(j%k!=0) l=k; else break; if(k=j-1) return j; main()int m;请输入整数 mn");printf("scanf("%d",&m);printf("紧跟(得最大素数就是d",m,fun(m);3(4)#include<stdio 、h> #define N 5 fun(int arr,int n) int brrN,i; for(i=0;i<n;i+)brri=ar

32、rn-1-i;printf("%d",brri);main()int aN,i;printf(" 请输入要倒序排放得数 n"); for(i=0;i<N;i+)scanf("%d",&ai);ai=fun(a,N);3(6)#include<stdio 、h>int fun(int array33)int i,j,t33; for(i=0;i<3;i+) for(j=0;j<3;j+)tij=arrayij; for(i=0;i<3;i+)for(j=0;j<3;j+)arrayij=

33、tji; return array33;main()int a33=100,200,300,400,500,600,700,800,900,i,j; fun(a);for(i=0;i<3;i+)for(j=0;j<3;j+)printf("%5d",aij);printf("n");=丨回T四、实验结果与分析(程序运行结果及其分析)2、2(2)XAnd Sett LneffldBini3tratorDebue20. ezecont Lnuenflx=altl=345 Press any key to3(1)n * F:WLFDebug3 .斂

34、.Any ho vto continuDHI3(2)I fWLFDebug3(7J>e-,1continu*请输人要倒序排放的数0£G4114568Press any key to continue3(6)D:Cic Deb ugX ( 6 ) exe五、实验体会(遇到问题及解决办法,编程后得心得体会)1、数组得第一项就是a0;2、要注意数组不能越界;3、函数要先定义再使用。实验地点:A206实验项目名称:高级程序设计实验学时:6同组学生姓名:实验日期:5、29-6、12实验成绩:批改时间:批改教师:实验 3 高级程序设计、实验目得与要求(1) 理解C语言中指针得本质,区分指针

35、与指针变量,掌握有关指针得应用;(2) 熟练掌握字符串常量与字符串得存储及字符串处理函数得使用(3) 掌握字符指针得定义、使用等(4) 掌握向函数传递字符串得方法 ;二、实验仪器与设备奔腾以上计算机 , 装有 windows XP 以上版本操作系统与 Visual C+ 6 、 0 软件。三、实验内容与过程1 、程序调试(1) main() int a=10,b=20,x,*pa,*pb;pa=&a;pb=&b;printf( “%d,%d,%d,%”d ,a,b,*pa,*pb);x=*pa;*pa=*pb;*pb=x;printf( “%d,%d,%d,%”d ,a,b,*

36、pa,*pb);(2) main() int a=10,b=20,*p,*pa=&a,*pb=&b;printf( “%d,%d,%d,%”d ,a,b,*pa,*pb); p=pa;pa=pb;pb=p;printf( “%d,%d,%d,%”d ,a,b,*pa,*pb);(3) int *s *a,int *b) int *p;p=a; a=b; b=p;return(a);main() int x=3,y=4,z=5; s(&x,&y),&z);printf(“%d,%d,%”d ,x,y,z);思考:上面程序中函数 swap()预将两个数得值相

37、互交换,但结果为什么没有交换 ?2、程序改错要求 :1 、改错时 , 只允许修改现有语句中得一部分内容, 不允许添加与删除语句。2、提示行下一行为错误行。(1) 功能:为一维数组输入 10个整数 ;将其中最小得数与第一个数对换 ,将最大得数与最 后一个数对换 , 输出数组元素。#include <stdio、 h>void input(int *arr,int n) int *p,i;p=arr;printf("please enter 10 integers:n"); for(i=0;i<n;i+)/*ERROR*/ scanf("%d&quo

38、t;,p);void max_min(int *arr,int n)int *min,*max,*p,t;min=max=arr;for(p=arr+1;p<arr+n;p+) /*ERROR*/ if(*p<*max)max=p;else if(*p<*min) min=p; t=*arr;*arr=*min;*min=t;/*ERROR*/if(max=arr) max=min;t=*(arr+n-1);*(arr+n-1)=*max;*max=t;void output(int *arr,int n) int *p,i;p=arr;printf("The ch

39、anged array is:n"); /*ERROR*/ while(i=0;i<n;i+) printf("%3d",*p+);printf("n");main()int a10;input(a,10);max_min(a,10); output(a,10);(2)功能:将s所指字符串得反序与正序进行连接形成一个新串放在 例如 : 当#includet 所指得数组中。 s所指得字符串得内容为"ABCD时,t所指数组中得内容为"DCBAABCD" <conio、h>#include#includ

40、e /*FOUND*/ void fun (char s, char t) int i, d;/*FOUND*/<stdio<string、h>、h>d = len(s);/*FOUND*/for (i = 1; i<d; i+)ti = sd - 1 - i ;for (i = 0; i<d; i+)t d + i = si; /*FOUND*/ t2*d = '/0'main()char s100, t100; printf("nPlease enter string S:"); scanf("%s"

41、;, s);fun(s, t);printf("nThe result is: %sn", t); 3、程序设计说明,所有题目均需添加 main(), 在 main() 中调用子函数并设计完整得输入输出才可调试通过 。(1) 功能:请编写一个函数 int fun(int *s, int t, int *k), 在数组中得下标 , 用 k 返回。用来求出数组得最大元素例如: 输入如下整数 :876 675 896 101 301 401 980 431 451 777则输出结果为 :6, 980(2) 功能: 编写函数 void len_cat(char c1,char c2

42、)将第二个串连接到第一个串之后 , 不允许使用 strcat 函数(3) 功能:编写函数 long fun ( char *p), 用c语言提供得将字符串转换为整数得函数将一个数字字符串转换为一个整数 (不得调)。例如 : 若输入字符串 "-1234", 则函数把它转换为整数值 -1234 。成串中包含得字母个数作为函数得返回值。(5) 功能 : 编写函数 void fun(char s)将一个由四个数字组成得字符串转换为每两个数字间有一个空格得形式输出。例如:输入4567”,应输出4口 5口 6口 7”( 表示空格)。(6) 功能 : 编写函数 void fun(char

43、 s,char c)从字符串 s 中删除指定得字符c。说明:该字符可能多次与连续出现 , 算法应全面考虑。4、讨论、思考题将My N列得二维数组中得字从字符串 str 中删除第 i 个字(1) 功能: 请编写函数 void fun(char (*s)N, char *b), 符数据按列得顺序依次放到一个字符串中。例如 : 二维数组中得数据为 :W W W WS S S SH H H H则字符串中得内容应就是 :WSHWSHWSHW。 SH(2) 功能 : 编写函数 void fun(char str,int i,int n),)。符开始得连续n个字符(注意:strO代表字符串得第一个字符(3)

44、 功能:编写函数void fun (char *s,char t),将s所指字符串中除了下标为奇数、同时ASCII值也为奇数得字符之外,其余得所有字符都删除,串中剩余字符所形成得一个新串放 在t所指得数组中。例如:若s所指字符串中得内容为:"ABCDEFG12345",其中字符A得ASCII码值虽为奇数,但所在元素得下标为偶数,因此必需删除;而字符1得ASCII码值为奇数,所在数组中得下标也为奇数 , 因此不应当删除 , 其她依此类推。最后 t 所指得数组中得内容应就是 :"135" 。(4) 功能 : 请编写函数 int fun( char *s),统

45、计一行字符串中单词得个数作为函数值返回。规定所有单词由小写字母组成 , 单词之间由若干个空格隔开 , 一行得开始没有空 格。程序清单及流程图 :2(1)#include <stdio 、h>void input(int *arr,int n)int *p,i;p=arr;printf("please enter 10 integers:n");for(i=0;i<n;i+)/*ERROR*/scanf("%d",p+i);void max_min(int *arr,int n)int *min,*max,*p,t;min=max=arr

46、;for(p=arr+1;p<arr+n;p+) /*ERROR*/ if(*p>*max)max=p;else if(*p<*min) min=p; t=*arr;*arr=*min;*min=t;/*ERROR*/ if(max=arr) max=min;t=*(arr+n-1);*(arr+n-1)=*max;*max=t;void output(int *arr,int n)int *p,i;p=arr;printf("The changed array is:n"); /*ERROR*/ for(i=0;i<n;i+)printf(&quo

47、t;%3d",*p+); printf("n"); main()int a10; input(a,10);max_min(a,10);output(a,10); 2(2) #include #include #include<conio<stdio<string、h>、h>、h>/*FOUND*/ void fun (char s,char t) int i, d; /*FOUND*/ d = strlen(s);/*FOUND*/for (i = 0; i<d; i+)ti = sd - 1 - i ;for (i =

48、0; i<d; i+)t d + i = si;/*FOUND*/ t2*i = 'n'main()char s100, t100; printf("nPlease enter string S:"); scanf("%s", s);fun(s, t);printf("nThe result is: %sn", t); 3(1)#include<stdio 、 h>#define N 10fun(int *s,int t,int *k)int m,max=s0,n=0;for (m=1;m<=t

49、-1;m+)if(sm>max)max=sm;n=m;k=n;return k;main()int i,j,aN=876,675,896,101,301,401,980,431,451,777; i=fun (a,N,&i);printf("%d,%d",i,ai);3(2) #include<stdio 、 h> #include<string 、h> len_cat(char c180,char c240) int i,j;j=strlen(c1);for(i=0;c2i!='0'i+)c1i+j=c2i;c1i+j

50、='0'main()char str180,str240; gets(str1);gets(str2); puts(str1);puts(str2);len_cat(str1,str2);puts(str1);3(3) #include<stdio 、 h> long fun ( char *p) long n=0;int flag=0; while(*p!='0')if(*p='-')flag=1;else if (*p='+')flag=0;else n=n*10+(*p-'0');p+;if (f

51、lag=1) n=-n;return n;main()char a7;long b6=0; scanf("%s",a);b6 = fun(a); printf("%d",b6);3(4) include<stdio 、h> int fun(char *ptr) int i,j=0;for(i=0;*(ptr+i)!='0'i+) *(ptr+i)>='A')*(ptr+j)=*(ptr+i); j+;return j; main() 字母个数为 %d",n);、h>、h>char a

52、10; int m,n; scanf("%s",a); n = fun(a); for(m=0;m<n;m+) printf("%c",am); printf("n 3(5) #include<stdio #include<string void fun(char s) int i,len; len = strlen(s); for(i=len-1;i>0;i-) s2*i=si;s2*i-1=' 'len=strlen(s); slen='0'for(i=0;i<=len;i+)

53、printf("%c",si);main()char a8; scanf("%s",a); fun(a);3(6)#include<stdio 、 h> #include<string 、h> if(*(ptr+i)<='z'&& *(ptr+i)>='a'|*(ptr+i)<='Z'&&void fun(char s,char c); main()char a20,b; scanf("%s",a); printf("%sn",a); getchar (); scanf("%c",&b); fun(a,b);void fun(char s,char c)int n,m=0,len; len=strlen(s); for(n=0;n<len;n+) if(sn!=c) sm+=sn; sm= '0'printf("%s",s);斎 F:I3IP1102Q25»ebuffl3Cl)-owe四、实验结果与分析(程序运行结果及其分析)2(1)r F:WLFDebug2(U

温馨提示

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

评论

0/150

提交评论