一些经典问题代码

财务人员给员工发工资时经常遇到这样一个问题,即根据每个人的工资额(以元作为单位)计算出各种面值的钞票的张数,且要求总张数最少。

例如,某职工工资为3436元,发放方案为:100元34张,20元1张,10元1张,5元1张,1元1张。

#include<stdio.h>

int main()

{

   unsigned int salary;

   unsigned int g100,g20,g10,g5,g1;

   printf("Please input the salary:");

   scanf("%d",&salary);

   g100=salary/100;

   g20=(salary-100*g100)/20;

   g10=(salary-100*g100-20*g20)/10;

   g5=(salary-100*g100-20*g20-10*g10)/5;

   g1=salary-100*g100-20*g20-10*g10-5*g5;

  printf("100 yuan have %d\n",g100);

  printf("20 yuan have %d\n",g20);

  printf("10 yuan have %d\n",g10);

  printf("5 yuan have %d\n",g5);

  printf("1 yuan have %d\n",g1);

return 0;

}

从键盘输入一个大写字母,要求改用小写字母输出

#include<stdio.h>

int main()

{

    char bud;

    printf("Enter the word:");

    scanf("%c",&bud);

   bud=bud-'A'+'a';

  printf("the da xie is %c\n",bud);

  return 0;

}

输入两个实数a,b,如果a比b大,则将两个数数值交换,按代数值由小到大次序输出这两个数

#include<stdio.h>

int main()

{

   float a,b;

    printf("input a and b:");

   scanf("%f,%f",&a,&b);

    float t;

   if(a>b)

     {

       t=a;a=b;b=t;

     }

     printf("a=%f  b=%f\n",a,b);

   return 0;

}

有一函数如下,编一程序,输入一个x值,输出y值。

X>0,y=1;x<0,y=-1,x=0;y=0

#include<stdio.h>

int main()

{  int  X

printf(“enter X”);scanf(“%d”,X);

   If(X<0)printf(“y=-1”);

   Else if(x==0)printf(“y=0”);

   Else  printf(“y>0”);

   return 0;

}

闰年判断

#include<stdio.h>

 

int main()

{   

    int red;

printf("Please input the years:");

scanf("%d",&red);

printf("\n");

if((red%4)==0)

{

if((0!=red%100)||(0==red%400))

printf("%d is run year\n;",red);

}

else

printf("%d isn\'t run year\n",red);

return 0;

}

计算器

#include<stdio.h>

void fun()

{

double i,j;

char bing;

scanf("%lf%c%lf",&i,&bing,&j);

switch (bing)

{

    case '+' :

{printf("%lf\n",i+j);break;}

    case '-' :

{printf("%lf\n",i-j);break;}

    case '*' :

{printf("%lf\n",j*i);break;}

            case '/' :

{printf("%lf",i/j);break;}

    default: {printf("Error!\n");break;}

}

}

int main()

{       char  c;

printf("Please inter:\n");

        do

        {

          fun();

          printf("Enter q close or other once again\n ");

          scanf("%c",&c);

        }

      while(c!='q');

        return 0;

}

给出一百分制成绩,要求输出成绩等级‘A’、’B’、‘C’、‘D’、‘E’。90分以上为‘A’ ,80~89分为’B’ ,70~79分为‘C’...

#include<stdio.h>

 int main()

{

    int number;

     printf("Please input the number:") ;

      scanf("%d",&number);

      if(number>=60)

      number=number/10-5;

     else

      number=0;

     if(number==5)

     number--;

     switch (number)

     {  case 0: printf("E\n");break;

       case 1 :printf("D\n");break;

       case 2: printf("C\n");break;

       case 3: printf("B\n");break;

       case 4: printf("A\n");break;

      default :printf("Error\n");break;

     }

return 0;

}

计算1-100的值

#include<stdio.h>

int main()

{

   int i,b=0;

   for(i=1;i<101;i++)

     b=b+i;

  printf("he is:%d\n",b);

  return 0;

}

计算空格字母数字

#include<stdio.h>

int main()

{

   char word[20];

  int kg,zf,sz;

    kg=0;zf=0;sz=0;

  int i=0;

  printf("please input:");

   scanf("%s",&word[20]);

 while(word[i]!='\n')

{  printf("*\n");

   if(' '==word[i])

    kg++;

   if('0'<=word[i]&&(word[i]<='9')

    sz++;

   if(word[i]>='A'&&word[i]<='Z')||(word[i]>='a'&&word[i]<='z')

    zf++;

   

i++;

}

    printf("kongge=%d\nzhimu=%d\nshuzi=%d\n",kg,zf,sz);

 return 0;

}

计算1+3+5+ L +(2*i-1)

#include<stdio.h>

int main()

{

   int i,b=0;

   for(i=1;i<101;i++)

     b=b+(2*i+1);

  printf("he is:%d\n",b);

  return 0;

}

计算1!+2!+3!+ L+n!的和

#include<stdio.h>

 int fun(int s)

{int b=1;

for(;s>0;s--)

  b=b*s;

return b;

}

int main()

{   int i=0,n;

printf("input n:");scanf("%d",&n);

   for(;n>0;n--)

    i=i+fun(n);

  printf("%d\n",i);

return 0;

}

质数判断

#include<stdio.h>

 int main()

{

  int m,i;

  printf("input m:");

  scanf("%d",&m);

  for(i=2;i<m;i++)

   if(0==m%i)

    { printf("m not shus\n");break;}

  if(i==m)

    printf("m is shus\n");

return 0;

}

判断100-200之间的质数

#include<stdio.h>

int s=0;

void fun(int m)

 {int i;

  for(i=2;i<m;i++)

    if(0==m%i)

       break;

  if(i==m)

     {

     s++;

     if(4==s) {printf("%d\n",m);s=0;}

     else printf("%d    ",m);

     }

 }

int main()

{ int b;

  for(b=100;b<200;b++)

    fun(b);

   printf("\n");

  return 0;

}

 

将从键盘上输入的若干个正整数求和,遇到负数则终止

程序,并且输入的数不超过10个。

#include<stdio.h>

 int main()

{  int i,j,nu[10];

   float bbb;

    for(i=0;i<10;i++)

     {

       scanf("%d",&nu[i]);

       if(nu[i]<0)break;

     }

   bbb=0;j=i;

   for(;i>=0;i--)

      bbb=bbb+nu[i];

   bbb=bbb/(j--);

   printf("%f\n",bbb);

  return 0;

}

编程把100~200之间的不能被3整除的数输出。

#include<stdio.h>

int main()

{

int s,o=0;

for(s=100,s<200;s++)

{

if(0!=s%3)

{

o++;

if(5==o) printf("%d  ",s);

else printf("%d\n",s);

continue;

}

}

retrun 0;

}

判断谋杀者

#include<stdio.h>

int main()

{

  int a,b,c,d,g;

  a=1;b=1;c=1;d=1;

  printf("a say:\"not me\"!\na--\n");

  a--;

  printf("B say:C is the keileder!\nc++\n");

  c++;

  printf("C say:D is the keilder!\nd++\n");

  d++;

  printf("D say:C say lie\nd--\n");

  d--;

  if(a>=b) g=a;

   else g=b;

  if(g>=c);

   else g=c;

  if(g>=d);

   else g=d;

  if(g==a)printf("a is keilder\n");

  else if(g==b)printf("b is keilder\n");

 else if(g==c)printf("c is keilder\n");

 else if(g==d)printf("d is keilder\n");

  else ;

return 0;

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值