C语言基础实例.docx
《C语言基础实例.docx》由会员分享,可在线阅读,更多相关《C语言基础实例.docx(11页珍藏版)》请在冰点文库上搜索。
![C语言基础实例.docx](https://file1.bingdoc.com/fileroot1/2023-5/22/785b30ef-4c08-4554-ba06-083e2ee35255/785b30ef-4c08-4554-ba06-083e2ee352551.gif)
C语言基础实例
1实验名称:
求一个任意实数的正弦值
实验目的:
1.熟悉TC环境,掌握新建、输入、运行、查看结果的方法
2.掌握实数类型float的使用
3.掌握数学函数的使用方法
实验步骤:
#include"math.h"
main()
{
float x,y;
printf("pleaseinputx=");
scanf("%f",&x);
y=sin(x);
printf("y=%f",y);
}
实验结果:
pleaseinputx=0.19199
y=0.190813
2,项目二求一个三角形的面积
时间:
机制一二班是9月16号,机制三四五班是9月17号
实验名称:
输入三角形三边,若能构成三角形,输出yes以及三角形面积,否则输出no!
实验目的:
1.掌握ifelse语句的使用方法
2.熟悉三角形的判定方法以及利用海伦公式求三角形面积的方法
3.掌握数学函数的使用方法
实验步骤:
#include"math.h"
main()
{
float a,b,c,p,s;
printf("pleaseinputa,b,c:
");
scanf("%f%f%f",&a,&b,&c);
if(a>0&&b>0&&c>0&&a+b>c&&b+c>a&&a+c>b)
{
printf("yes!
\n");
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("s=%f",s);
}
else
printf("no!
\n");
}
实验结果:
输入:
345
输出:
yes!
s=6.000000
输入:
114
输出:
no!
项目三求一个三位整数的逆序数
时间:
机制一二班是9月23号,机制三四五班是9月24号
实验名称:
求一个任意三位数的逆序数
实验目的:
1.掌握算术运算符/和%的使用方法
2.掌握求一个整数任意位的方法
实验步骤:
main()
{
intx,y,a,b,c;
scanf("%d",&x);
a=x%10;
b=x/10%10;
c=x/100;
y=a×100+b×10+c;
printf("%d",y);
}
实验结果:
输入:
123
输出:
321
项目四求三个任意值的最大值
日期:
机制一二班是10月7号,机制三四五班是10月8号
实验名称:
求三个任意数的最大值和最小值
实验目的:
1.掌握if-else语句的使用方法
2.掌握条件表达式的使用方法
3.熟悉利用if-else语句和条件表达式求最大/小值的方法
实验步骤:
main()
{
float a,b,c,max;
printf("pleaseinputa,b,c:
");
scanf("%f%f%f",&a,&b,&c);
if(a>=b&&a>=c)
max=a;
elseif(b>=a&&b>=c)
max=b;
else
max=c;
printf("max=%f\n",max);
}
main()
{
float a,b,c,max,min;
printf("pleaseinputa,b,c:
");
scanf("%f%f%f",&a,&b,&c);
max=(a>b)?
(a>c?
a:
c):
(b>c?
b:
c);
min=(a
(aa:
c):
(bb:
c);
printf("max=%f\nmin=%f\n",max,min);
}
实验结果:
输入:
3.86 9.8 63.45(注意:
输入的为三个任意值,此处举例子为这三个数,写实验报告时任意即可)
输出:
max=63.450000
min=3.860000
项目五一个简单的计算器
时间:
机制一班二班是10月14号,机制三四五班是10月15号
实验名称:
制作一个简单的计算器,完成两个值的加减乘除运算
实验目的:
1.掌握switch_case语句的使用方法
2.掌握break语句
实验步骤:
main()
{
floatx,y;
charop;
printf("enterxoprationy:
");
scanf("%f%c%f",&x,&op,&y);
switch(op)
{
case'+':
printf("%f%c%f=%f\n",x,op,y,x+y);break;
case'-':
printf("%f%c%f=%f\n",x,op,y,x-y);break;
case'*':
printf("%f%c%f=%f\n",x,op,y,x*y);break;
case'/':
if(y==0.0)
{printf("error");break;}
else
{printf("%f%c%f=%f\n",x,op,y,x/y);break;}
default:
printf("wrong");break;
}
}
实验结果:
enterxoprationy:
3+2
3+2=5
项目六四个值的排序
实验名称:
四个值从小到大排序
实验目的:
1.掌握if语句的使用方法
2.掌握交换排序的思路
实验步骤:
main()
{
float a,b,c,d,t;
printf(“inputfournumbers:
\n”);
scanf(“%f%f%f%f”,&a,&b,&c,&d);
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(a>d)
{t=a;a=d;d=t;}
if(b>c)
{t=b;b=c;c=t;}
if(b>d)
{t=b;b=d;d=t;}
if(c>d)
{t=c;c=d;d=t;}
printf(“%.2f,%.2f,%.2f,%.2f\n”,a,b,c,d);
}
实验结果:
inputfournumbers:
4321
1.00,2.00,3.00,4.00
项目七求1+2+3+......+n的和
实验名称:
求1+2+3+......+n的和
实验目的:
1.掌握while循环语句的使用方法
实验步骤:
main( )
{
ints=0,i=1,n;
printf("inputn=");
scanf("%d",&n);
while(i<=n)
{
s=s+i;
i++;
}
printf("s=%d\n",s);
}
实验结果:
inputn=100
s=5050
项目八求任意整数的逆序数
实验名称:
求任意整数的逆序数
实验目的:
1.掌握do-while循环语句的使用方法
实验步骤:
main( )
{
intd;
longx,y=0;
printf("inputx=");
scanf("%ld",&x);
do
{
d=x%10;
y=y*10+d;
x=x/10;
}while(x);
printf("y=%ld\n",y);
}
实验结果:
inputx=1234
y=4321
项目九:
输出既能被7整除个位数又为7的所有三位整数
实验名称:
输出既能被7整除个位数又为7的所有三位整数
实验目的:
1.掌握for循环语句的使用方法
2.掌握此种题型的多种求解方法
实验步骤:
方法一:
main( )
{
int i;
for(i=100;i<=999;i++)
{
if(i%7==0&&i%10==7)
printf("%6d",i);
}
}
方法二:
main( )
{
int i;
for(i=107;i<=999;i=i+10)
{
if(i%7==0)
printf("%6d",i);
}
}
实验结果:
147 217 287 357 427 497 567 637 707 777 847 917 987
项目十:
输出形状为直角三角形的九九乘法口诀表
实验名称:
输出形状为直角三角形的九九乘法口诀表
实验目的:
1.掌握for循环语句的嵌套
2.掌握此种题型的求解方法
实验步骤:
main()
{
inti,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
printf("%d*%d=%d\t",i,j,i*j);
printf("\n");
}
}
实验结果:
项目十一:
百马百担
实验名称:
百马百担:
一百匹马,一百担货,大马驮三担,中马驮两担,两匹小马驮一担,问大马,中马,小马各多少只?
实验目的:
1.掌握for循环语句和选择语句的嵌套
2.掌握此种题型的求解方法
实验步骤:
main()
{
intx,y,z,i=1;
for(x=0;x<=33;x++)
for(y=0;y<=50;y++)
{
z=100-x-y;
if(3*x+2*y+0.5*z==100)
printf("%d:
x=%d,y=%d,z=%d\n",i++,x,y,z);
}
}
实验结果:
项目十二:
利用三重循环求水仙花数
实验名称:
求水仙花数,一个三位整数的各位数的立方和是它本身
实验目的:
1.掌握三重循环
2.掌握此种题型的求解方法
实验步骤:
main()
{
int a,b,c,i=1;
for(a=0;a<=9;a++)
for(b=0;b<=9;b++)
for(c=1;c<=9;c++)
{
if(a*a*a+b*b*b+c*c*c==c*100+b*10+a)
printf("%d:
%d\n",i++,c*100+b*10+a);
}
}
实验结果:
1:
153
2:
370
3:
371
4:
407
项目十三输出fibonacci序列前20项
实验名称:
输出fibonacci序列前20项
实验目的:
1.掌握数组的使用方法
2.掌握利用循环语句对数组进行输入、处理数据、输出的方法
实验步骤:
main()
{
inti,f[20]={1,1};
for(i=2;i<20;i++)
f[i]=f[i-1]+f[i-2];
for(i=0;i<20;i++)
{
if(i%5==0)
printf("\n");
printf("%12d",f[i]);
}
}
实验结果: