C语言上机实例

C语言上机实例

1、求矩形的面积和周长
#include<stdio.h>
int main()
{
int a,b,c,s;
printf(“请输入矩形的长(a)和宽(b):”);
scanf(“%d %d”,&a,&b);
c=2*(a+b);
s=a*b;
printf(“矩形的周长为%d,面积为%d”,c,s);
return 0;

}

2、判断三角形是等边三角形还是等腰三角形
#include<stdio.h>
int main()
{
int a,b,c;
printf(“请输入三角形的边长a,b,c:”);
scanf(“%d %d %d”,&a,&b,&c);
if((a+b>c)&&(a+c>b))
{
if((a!=b)&&(b!=c)&&(a!=c))
printf(“三角形是普通三角形\n”);
else if((ab)&&(ac))
printf(“三角形是等边三角形\n”);
else
printf(“三角形是等腰三角形\n”);
}
else
printf(“不能构成三角形\n”);
return 0;
}

3、输出1~100之间的数
#include<stdio.h>
int main()
{
int i;
for(i=1;i<=100;i++)
printf(“%4d”,i);
return 0;
}

4、输出1~100之间的偶数
#include<stdio.h>
int main()
{
int i;
for(i=2;i<=100;i=i+2)
printf(“%4d”,i);
if(i=100)
printf(“\n”);
return 0;
}

#include<stdio.h>
int main()
{
int i;
for(i=1;i<=100;i++)
{
if(i%2)
continue;
else
printf(“%4d”,i);
}
if(i=100)
printf(“\n”);
return 0;
}

5、输出1~100之间的偶数个
#include<stdio.h>
int main()
{
int i=1,t=0;
for(;i<=100;i++)
{
if(i%2==0)
t++;
}
printf(“%d\n”,t);
return 0;
}

6、输出1~100之间的数字,但不包含13,44,77
#include<stdio.h>
int main()
{
int i=1;
for(;i<=100;i++)
{
if((i13)||(i44)||(i==77))
continue;
printf(“%4d”,i);
}
return 0;
}

7、输出1-5,但是条件为i<10
#include<stdio.h>
int main()
{
int i=1;
for(;i<=10;i++)
{
if(i>5)
break;
printf(“%4d”,i);
}
return 0;
}

8、打印一个五行五列由“*”组成的矩阵
#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=5;i++)
{
for(j=1;j<=5;j++)
{
printf(“*”);
if(j==5)
printf(“\n”);
}
}
return 0;
}

9、打印一个五行五列由“*”组成的正三角形
#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=5;i++)
{
for(j=1;j<=i;j++)
{
printf(“*”);
if(j==i)
printf(“\n”);
}
}
return 0;
}

10、打印一个五行五列由“*”组成的倒三角形
#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=5;i++)
{
for(j=1;j<=6-i;j++)
{
printf(“*”);
if(j==6-i)
printf(“\n”);
}
}
return 0;
}

11、找出二维数组的最大值和最小值,并使二者位置调换
#include <stdio.h>
main()
{
int a[3][3],i,j;
int max,min;
int cmax=0,rmax=0,cmin=0,rmin=0;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf(“please enter a integer:\n”);
scanf(“%d”,&a[i][j]);
}
}
max=a[0][0];
min=a[0][0];
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(a[i][j]>max)
{
max=a[i][j];
rmax=i;
cmax=j;
}
if(a[i][j]<min)
{
min=a[i][j];
rmin=i;
cmin=j;
}
}
}
a[rmax][cmax]=min;
a[rmin][cmin]=max;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf(“%4d”,a[i][j]);
}
printf(“\n”);
}
}

12、有段英文文字共有四行,每行100个字符,请统计其中大写字母、小写字母、数字、空格、以及其他字符的个数。
#include<stdio.h>
void main()
{
char w[4][100];
int a=0,b=0,c=0,d=0, e=0;
for(int i=0;i<4;i++)
{
scanf(“%s”,w[i]);
for(int j=0;(j<100)&&(w[i][j]!=0);j++)
{
if((w[i][j]>=65)&&(w[i][j]<=90))
a++;
if((w[i][j]>=97)&&(w[i][j]<=122))
b++;
if((w[i][j]>=48)&&(w[i][j]<=57))
c++;
else if(w[i][j]==32)
d++;
else
e++;
}
}
printf(“大写字母有%3d个\n”,a);
printf(“小写字母有%3d个\n”,b);
printf(“数字有%3d个\n”,c);
printf(“空格有%3d个\n”,d);
printf(“其他字符有%3d个\n”,e);
}

13、求方程ax2+bx+c=0的根,用3个函数分别求当:b2-4ac大于0、等于0和小于0 时的根并输出结果。从主函数输人a,b.c的值
#include<stdio.h>
#include<math.h>
int main()
{
double a,b,c;
void fun1(double a,double b,double c);
void fun2(double a,double b);
void fun3();
printf(“请依次输入二次项a、一次项b、常数项c:”);
scanf(“%lf %lf %lf”,&a,&b,&c);
if(bb-4ac>0)
fun1(a,b,c);
if(b
b-4ac==0)
fun2(a,b);
else
fun3();
return 0;
}

void fun1(double a,double b,double c)
{
double x1,x2;
x1=(-b+sqrt(bb-4ac))/(2a);
x2=(-b-sqrt(bb-4ac))/(2a);
printf(“x1=%7.2lf\nx2=%7.2lf\n”,x1,x2);
}
void fun2(double a,double b)
{
double x;
x=(-b)/(2*a);
printf(“x=%7.2lf\n”,x);
}
void fun3()
{
printf(“方程无实根\n”);
}

14、编写一个程序计算函数f(x,y,z)=(x+z)/(y-z)+(y+2z)/(x-2z)
#include<stdio.h>
void main()
{
double x,y,z;
printf(“please enter x y z:”);
scanf(“%lf %lf %lf”,&x,&y,&z);
void fan(double x,double y,double z);
fan(x,y,z);
}

void fan(double x,double y,double z)
{
double f;
f=(x+z)/(y-z)+(y+2z)/(x-2z);
printf(“%lf”,f);
}

15、编写一个函数fan(int m),计算任一输入的整数的各个数字之和。主函数包括输入、输出和调用函数。
#include<stdio.h>
#include<math.h>
void main()
{
int x;
printf(“please enter a integer:”);
scanf(“%d”,&x);
void fan(int m);
fan(x);
}

void fan(int m)
{
int sum,a,b;
a=m%10;
b=m/10;
sum=a+b;
printf(“%d\n”,sum);
}

16、编写一个函数fun(n),计算n!,并编写mian函数测试,在main函数中输入num,调用fun(num),输出计算的结果。
#include<stdio.h>
void main()
{
int a;
printf(“please enter a integer:”);
scanf(“%d”,&a);
int fan(int n);
printf(“%d\n”,fan(a));
}

int fan(int n)
{
int f;
if(n<0)
{
void main();
main();
}
if(n0||n1)
f=1;
else
f=fan(n-1)*n;
return f;

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值