C语言上机实验思路分享2

实验内容(方法和步骤):

1.编程序计算下面的函数:

y=x 0<x<1

y=|x|+2 3≤x≤4

y=sin(x 2 ) 当 x 取其他值时

程序代码:

#include<stdio.h>

#include<math.h>

int main()

{

int x,y;

scanf("%d",&x);

if(x>0&&x<1)y=x;

else if(x>=3&&x<=4) y=abs(x)+2;

else y=sin(x^2);

printf("%d",y);

return 0;

}

运行结果:

2.电文加密的算法是:将字母 A 变成字母 G,a 变成 g,B 变成 H,b 变成 h,依此类

推,并且 U 变成 A,V 变成 B,等等。从键盘输入一个电文字符,输出其相应的密码。(A

不做,B 做)

程序代码:

#include<stdio.h>

int main()

{

char a,b,c;

scanf("%c",&a);

if (a>=65&&a<=90)

{

b=(a-65+6)%26+65;

printf("%c",b);

}

else if (a>=97&&a<=122)

{

c=(a-97+6)%26+97;

printf("%c",c);

}

return 0;

}

运行结果

3.有 3 个整数 a、b、c,由键盘输入,用条件表达式求出其中的最大值和最小值并输出。

程序代码

#include<stdio.h>

int main()

{

    int max(int x,int y,int z);

    int min(int x,int y,int z);

int a,b,c,d,e;

scanf("%d,%d,%d",&a,&b,&c);

d=max(a,b,c);

    e=min(a,b,c);

printf("max=%d\n",d);

printf("min=%d",e);

return 0;

}

int max(int x,int y,int z)

{

int p;

if(x>y)p=x;

else p=y;

if(z>p)p=z;

return (p);

}

int min(int x,int y,int z)

{

int p;

if(x<y)p=x;

else p=y;

if(z<p)p=z;

return (p);

}

运行结果

4.个人所得税,应纳税款的计算公式如下:

收入 税率

收入<1000 元部分 0%

1000 元<=收入<2000 元的部分 5%

2000 元<=收入<4000 元的部分 10%

4000 元<=收入<6000 元的部分 15%

收入>=6000 元的部分 20%

输入某人的收入,计算出应纳税额及实际得到的报酬。(使用 if 和 switch 两种方法)

if程序代码

#include<stdio.h>

int main()

{

int x,y,z;

scanf("%d",&x);

if (x<1000)

{

y=0;

z=x-y;

 }

  if(x>=1000&&x<2000)

  {

    y=(x-1000)*0.05;

    z=x-y;

  }

  if(x>=2000&&x<4000)

  {

    y=(x-2000)*0.1+5;

    z=x-y;

  }

  if(x>=4000&&x<6000)

  {

    y=(x-4000)*0.15+5+200;

    z=x-y;

  }

  if(x>=6000)

  {

    y=(x-6000)*0.2+5+200+300;

    z=x-y;

  }

  printf("tax=%d\n",y);

  printf("money=%d\n",z);

  return 0;

}

if运行结果

switch程序代码:

#include<stdio.h>

int main()

{

   int x,y,z,grade;

   scanf("%d",&x);

   grade=x/1000;

   if(grade>=6)grade=6;

   switch(grade)

   {

      case 0:y=0;z=x-y;break;

      case 1:y=(x-1000)*0.05;z=x-y;break;

      case 2:

      case 3:y=(x-2000)*0.1+5;;z=x-y;break;

      case 4:

      case 5:y=(x-4000)*0.15+5+200;;z=x-y;break;

      case 6:y=(x-6000)*0.2+5+200+300;;z=x-y;break;  

   }

   printf("tax=%d\n",y);

   printf("money=%d\n",z);

    return 0;

}

switch运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值