C语言程序简单例子[共17页]_第1页
C语言程序简单例子[共17页]_第2页
C语言程序简单例子[共17页]_第3页
C语言程序简单例子[共17页]_第4页
C语言程序简单例子[共17页]_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、 实验二参考参考答案1输入两个整型数字,输出他们的和。#includemain()int a, b, sum;scanf( “d% d”, &a, &b);sum=a+b;printf( a+“b=%d”, sum);2输入两个实型数,输出他们的和与乘积。#includemain()float a, b, sum, product;scanf( “f %f”, &a, &b);sum=a+b;product=a*b;printf( a+“b=%5.2f, a*b =%5.2f” ,sum, product);22ax bx c 0b4ac 03求方程的根(设)(其中 a,b,c 的值由键盘输入

2、) 。#include#includemain()float a, b, c, dt, x1, x2;scanf( “f %f%f ”, &a, &b, &c);dt=sqrt(b*b-4*a*c);x1=(-b+dt)/(2*a);x2=(-b-dt)/(2*a);printf( x 1“=%5.2f, x2 =%5.2f” ,x1, x2); 4鸡兔同笼,已知鸡兔总头数为 h,总脚数为 f,求鸡兔各多少只?( h 和 f 的值由键盘输入,输出鸡和兔的头数)#includemain()int h, f, x,y;scanf( “d% d” ,&h, &f);x=2*h-f/2;y=f/2-h

3、;printf( x=“%d, y =%d” ,x, y); 实验三参考参考答案1 .输入三个数 a、b、c,要求按由小到大的顺序输出。#includemain()float a,b,c,t;scanf(“%f,%f,%f ”,&a,&b,&c);if(ab)t=a; a=b; b=t;if(ac)t=a; a=c; c=t;if(bc)t=b; b=c; c=t;printf( “%f,%f,%f ”,a,b,c);2编写程序,输入三角形三边 a、b、c,判断 a、b、c 能否组成三角形,若不能则输出相应的信息,若能则判断组成的是等腰、等边、直角还是一般三角形。(1)#includemain

4、()float a,b,c,t;scanf(“%f,%f,%f ”,&a,&b,&c);if(ab)t=a; a=b; b=t;if(ac)t=a; a=c; c=t;if(bc)t=b; b=c; c=t; if(a=c) printf(“等边三角型 ”);printf( “一般直角三角形 ”);y= 2x-1 (1 x 10) |3x-11| ( x 10 )#include#includemain()int x,y;printf(input x=:);scanf(%d,&x);if(x1) y=x;else if(x10)y=2*x-1;else y=abs(3*x-11);printf

5、(x=%d y=%dn,x,y);4编写程序,输入一百分制成绩,对应输出等级A、B、C、D、E,90 分以上为 A,80 分89 分为 B,70 分79 分为 C,60 分69分为 D,60 分以下为 E。方法一:用 if 语句#includemain()float score;char grade;scanf(%f, &score);if(score100|score=90) grade=A;else if(score=80)else if(score=70)else if(score=60)else grade=E;grade=B;grade=C;grade=D;printf(the st

6、udent grade=%c n, grade);方法二:用 switch 语句。 注意,case 后的表达式必须是一个常量表达式,所以在以用switch 语句之前,必须把0100 之间的成绩分别化成相关的常量。所有 A(除 100 以外),B,C,D 类的成绩的配合特点是十位数相同,此外都是 E 类。则由此可得把 score除十取整,化为相应的常数。#includemain()float score,ints;char grade;scanf(%f, &score);s=score/10;if(s10) printf(ninput error!);elseswitch (s)case 10:

7、case 9: grade =A; break;case 8: grade =B; break;case 7: grade =C; break;case 6: grade =D; break;default: grade =E;printf(the student grade =%c n , ch); 实验四参考参考答案1编写程序,计算以下级数前 n 项之和。234nsum 1 x x / 2! x / 3! x / 4! . x / n!#includevoid main()int i, n;float s=1.0, sum=1.0, x;scanf(“%d, %f”, &n, &x);fo

8、r(i=1; i=n; i+)s=s*x/i;sum=sum+s;printf( “sum=%5.2f”, sum);2编程打印如下图案(书后习题第 3 题):*#include main( )int i, j, n;for(i=1; i=7; i+)for(j=0; j14-2*i; j+) printf( );for(j=0; j2*i; j+)printf(n);printf(*); 3编写程序实现输入整数 n,输出如下所示由数字组成的菱形。 (图中 n=5)11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 3 2 11 2 3 2

9、 11 2 11#include main( )int i, j,n;scanf(%d, &n);for(i=1; in; i+)for(j=1; j0; j-)printf(n);printf( %d, j);for(i=n; i0; i-)for(j=1; j0; j-)printf(n);printf( %d, j);4输出 Fibonacci 数列第 n 项。其数列通项公式为 F =F +F ,F1=1,F2=1。nn-1n-2方法一:#includemain()float f, f1=1, f2=1;int i, n;scanf(%d, &n); for(i=3; i=n; i+)f

10、=f1+f2;f1=f2;f2=f;printf(%10.0f n, f );方法二:#include #define NUM 20void main()int i;float fNUM=1,1;for(i = 2; i NUM; i+)fi = fi-2+fi-1;for(i = 0; i NUM; i+)printf(%10.0f n, fi); 实验五参考参考答案1编写程序,将 1,2,3 这三个数赋给数组 a,将 5,6,7 赋给数组 b,将两数组对应元素相加的和赋给数组 c,输出数组 c#include void main()int a3=1,2,3, b3=4,5,6, c3;in

11、t i;for(i=0;i3;i+)ci=ai+bi;printf(%d,ci);2输入任意 10 个数,按从大到小或从小到大的顺序输出( “冒泡”排序)#include #define NUM10void main ()int aNUM, i, j, temp, flag;printf (input %d numbers: n, NUM);for (i=0; iNUM; i+)scanf (%d, &ai);for (i=1; iNUM; i+)for (j=0; jaj+1)temp=aj;aj=aj+1;aj+1=temp;flag = 1; if (flag = 0) break;pr

12、intf (the sorted numbers:n);for (i=0; iNUM; i+)printf (%d , ai);3输入 10 个整数并存放在一维数组中,找出其中最大值和此元素的下标#include #define NUM 10void main()int aNUM;int i,max, index;for(i=0; iNUM;i+)scanf(%d,&ai);max=a0;for(i=0; iNUM;i+)if(maxai)max=ai;index=i;printf(max=%d, index=%d, max, index);4将从键盘输入的字符串进行逆序输出,逆序后的字符串仍

13、然保留在原来字符数组中。(不得调用任何字符串处理函数包括 strlen)#include #define NUM 80void main()char aNUM, temp;int i, j, index;for(i=0; iNUM;i+) scanf(%c,&ai);if(ai=n) break;ai=0;index=i;for(i=0, j=index-1; i=index/2; i+, j-)temp=ai;ai=aj;aj=temp;for(i=0; iNUM; i+)if(ai=0) break;printf(%c, ai);printf(n); 实验五参考参考答案2x5x 41编写函

14、数,求表达式的值,x 有由主函数输入。(请同学们用有返回值和无返回值两种方式去做,练习简单的函定义、声明、及调用方法)有返回值#include float fun(float x)float m ;m=x*x-5*x+4;return m ;void main()float a, f;scanf(%f, &a);f=fun(a);printf(%f n, f);无返回值#include void fun(float x)float m ;m=x*x-5*x+4;printf(%f n, m);void main()float a;scanf(%f, &a);fun(a); void main(

15、)int i,n,flag;scanf(%d,&n);for (i=1;i=n; i+)if(n%i=0) flag=prime(i);else flag=0;if(flag=1) printf(%d n,i);4哥德巴赫猜想之一是,任何一个大于 5 的偶数都可以表示为两个素数之和。编写程序验证这一论断。#include int prime(int m)int j;if (m = 1) return 0;else if (m = 2) return 1;else if (m%2=0) return 0;elsefor(j=3; j=sqrt(m); j+=2)if(m%j=0) return 0;return 1;main( )int a,b,c,n;scanf(%d, &n);for (a=6; a=n; a+=2)for (b=3; b=a/2; b+=2)if (prime(b)=1)c=a-b; if (prime(c)=1)printf(%d=%d+%dn,a,b,c);break;5二维数组 score中存放 5 个学生的 3 门课成绩, 由主函数输入一个数, 将所有总成绩大于该数的学生输出。#include void max(float a5

温馨提示

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

最新文档

评论

0/150

提交评论