C语言九条语句经典例题,一起温故而知新!!!

简介: 代码如下

1.计算1+2+3+......+100的和

#include<stdio.h>
int main()
{
  int i,sum=0;
for(i=1;i<=100;i++)
{
   sum=sum+i;
}
printf("sum=%d\n",sum);
return 0;
}

2.求1+2+3+.....+n的和,n的值由键盘输入

#include<stdio.h>
int main()
{
  int i,n,sum=0;
  printf("请输入n的值:");
  scanf("%d",&n);
  for(i=1;i<=n;i++)
  {
    sum=sum+i;
  } 
  printf("sum=%d\n",sum);
  return 0;
}

3.求下列式子的值:1-1/2+1/3-1/4+……+1/99-1/100,将结果输出

#include<stdio.h>
void main()
{
  float sum=0.0,t,s=1;
  int i;
  for(i=1;i<=100;i++)
  {
    t=s/i;
    sum=sum+t;
    s=-s;
  }
  printf("1-1/2+1/3-1/4+……+1/99-1/100=%g\n",sum);
}

4.求1!+2!+3!+……+10!,将结果输出

#include<stdio.h>   //头文件  标准输入输出
int main()        //void 空的  在这里是无函数类型,无返回值
{
  float s=0,t=1;     //带小数点的有正负号的浮点型,并赋了初始值
  int n;            //整形的,带符号的   
  for(n=1;n<=10;n++)//循环20次
  {
    t=t*n;           //t=1//t=1*2//t=2*3//t=6*4
    s=s+t;           //s=1+2+6
  }
  printf("1!+2!+3!+……+10!=%e\n",s);
  return 0;
}

5.键盘输入三个整数,求这3个整数的最大值

#include<stdio.h>
int main()
{
  int a,b,c,max;
  printf("请输入3个整数:");
  scanf("%d%d%d",&a,&b,&c); 
  max=a;    //假设a是最大值 
  if(max<b)
  {
    max=b;
  }
  if(max<c)
  {
    max=c;
  }
  printf("max=%d\n",max);
  return 0;
}

6.打印出100~999之间的所有水仙花数。水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)

#include<stdio.h>
int main()
{
  int i,j,k,n;
  printf("100~999之间的所有水仙花数 are:\n");
  for(n=100;n<1000;n++)
  {
    i=n/100;
    j=n/10-i*10;
    k=n%10;
    if(n==i*i*i+j*j*j+k*k*k)
    {
      printf("%d  ",n);
    }
  }
  printf("\n");
  return 0;
}

7.我有1000块钱我想买100只鸡,市场上公鸡50块一只,母鸡30块一只,小鸡10块钱3只,问题我该如何去购买?列出所有购买方案(使用for循环套用的方式)

#include<stdio.h>
int main()
{
  int a,b,c;
  for(a=1;a<20;a++)
  {
    for(b=1;b<33;b++)
    {
      for(c=0;c<100;c++,c++,c++)//循环套用,遍历所有方案 
      {
        if((a+b+c==100) && (a*50+b*30+c*10/3.0==1000))
        {
          printf("%d只公鸡%d只母鸡%d只小鸡\n",a,b,c);
        } 
      }
    }
  } 
  return 0;
}

8.输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,何种类型的三角形:等腰、等边、直角、等腰直角、一般三角形

#include<stdio.h>
int main()
{
  float a,b,c;
  printf("请输入三角形边长:\n");
  scanf("%f%f%f",&a,&b,&c);
  if((a-b>=c)||(b-c>=a)||(c-a>=b))
  {
    printf("不能够成三角形\n");
  } 
  else if ((a*a+b*b==c*c)||(b*b+c*c==a*a)||(c*c+a*a==b*b))
  {
    if ((a==b)||(b==c)||(c==a))
    {
      printf("等腰直角三角形\n");
    }
    else 
    {
      printf("直角三角形\n");
    }
  }
  else if ((a==b)&&(b==c)) 
  {
    printf("等边三角形\n");
  }
  else if ((a==b)&&(b!=c)||(c==b)&&(b!=a)||(a==c)&&(c!=a)) 
  {
    printf("等腰三角形\n");
  }
  else 
  {
    printf("一般三角形\n");
  }
  return 0;
}

9.输入年号,计算这一年的2月份的天数,将结果输出

#include<stdio.h>
int main()
{
  int year;
  printf("请输入年份:\n");
  scanf("%d",&year);
  if(year%400==0 ||(year%4==0 && year%100!=0))
  {
    printf("%d年的2月有29天",year);
  }
  else
  {
    printf("%d年的2月有28天",year);
  }
  return 0;
}

10.输入年月,判断这个月有几天?

#include<stdio.h>
int main()
{
  int year,mouth,day;
  printf("请输入年月份:");
  scanf("%d%d",&year,&mouth);
  switch(mouth)
  {
    case 2:day=28;
      if(year%400==0 || (year%4==0 && year%100!=0))
      {
        day=29;
      }
      break;
    case 4:
    case 6:
    case 9:
    case 11:day=30;break;
    default:day=31;break;
  }
  printf("%d年%d月有%d天\n",year,mouth,day);
  return 0;
}

11.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。例如:1转换成Monday,7转换成Sunday

#include<stdio.h>
int main()
{
  int a;
  printf("输入一个整数:\n");
  scanf("%d",&a);
  switch(a)
  {
    case 1:printf("Monday\n");break;
    case 2:printf("Tuesday\n");break;
    case 3:printf("Wendesday\n");break;
    case 4:printf("Thursday\n");break;
    case 5:printf("Friday\n");break;
    case 6:printf("Saturday\n");break;
    case 7:printf("Sunday\n");break;
    default:printf("错误\n");break;
  }
  return 0;
}

12.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。

3000以下不需要交税,3000~4000税率1%,4000~5000税率是2%,5000~10000以上是3%,10000以上5%

#include<stdio.h>
int main()
{
  int a,n;
  float r,t,s;
  printf("请输入奖金数:\n");
  scanf("%d",&a);
  n=a/1000;
  switch(n)
  {
    case 0:
    case 1:
    case 2:r=0.01;break;
    case 3:
    case 4:r=0.02;break;
    case 5:
    case 6:
    case 7:
    case 8:
    case 9:r=0.03;break;
    default:r=0.05;break;
  }
  printf("税率:%7.2f\n",r);
  printf("税款:%7.2f\n",a*r);
  printf("实得奖金:%7.2f\n",a-a*r);
  return 0;
}

13.编写程序,输入两个整数,和+、-、*、/之中的任意一个运算符,输出计算结果

#include<stdio.h>
int main()
{
  float a,b;
  char c;
  printf("请输入一个运算符:\n");
  scanf("%c",&c);
  printf("请输入两个整数:\n");
  scanf("%d,%d",&a,&b);
  switch(c)
  {
    case'+':printf("%f\n",a+b);break;
    case'-':printf("%f\n",a-b);break;
    case'*':printf("%f\n",a*b);break;
    case'/':printf("%f\n",a/b);break;
    default:printf("错误");
  }
  return 0;
}

14.编程计算:1*2*3+3*4*5+……+99*100*101的值

#include<stdio.h>
int main()
{
  int i,j,k,sum=0;
  for(i=1,j=2,k=3;i<100,j<101,k<102;i+=2,j+=2,k+=2)
  {
    sum=sum+i*j*k;
  }
  printf("%d\n",sum);
  return 0;
}

15.输入一个正整数求出它是几位数;输出原数和位数

#include<stdio.h>
int main()
{
  unsigned int n,i=0,sum;
  printf("请输入一个正整数:");
  scanf("%d",&n);
  sum=n;
  while(n>0)
  {
    n=n/10;
    i++;
  }
  printf("原数:%d\n",sum);
  printf("位数:%d\n",i);
  return 0;
}

16.输入一个正整数求出它是几位数;输出原数、逆序和位数

#include<stdio.h>
int main()
{
  unsigned int n,i=0,sum,temp=0;
  printf("请输入一个正整数:");
  scanf("%d",&n);
  sum=n;
  while(n>0)
  {
    temp=temp*10+n%10;
    n=n/10;
    i++;
  }
  printf("原数:%d\n",sum);
  printf("位数:%d\n",i);
  printf("逆序:%d\n",temp);
  return 0;
}

17.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程

#include <stdio.h>
void main()
{
  int a=1020,c=0;
  do
  {
    a=a/2-2;
    c++;
  }while(a!=0);
  printf("c=%d",c);
}

18.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少

#include <stdio.h>
#define uchar unsigned char
#define uint unsigned int
int main()
{
  uchar day,i;
  uint s=0,j=1,k=0;
  printf("请输入第几天剩下一个桃子!回车结束!\n");
  scanf("%d",&day);         //输入第几天剩下一个桃子
  if(day==1)
  {
    printf("第一天共有桃子1个!\n");
  }
  else
  {
    for(i=1;i<day;i++)
    {
      s=(j+1)*2;  //计算公式  从最后一天算起,最后一天1个,前一天个数为后一天个数加一再乘2
      j=s;
    }
    printf("第一天共有桃子%d个!\n",s);
  }
}

19.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少

#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
int main()
{
  uint i,temp=1,n=1;
  uint mouth,sum;
  printf("请输入月份!回车结束!\n");
  scanf("%d",&mouth);                       //输入月份
  if(mouth<2)
  {
    printf("一共有2只兔子\n");
    return 0;
  }
  for(i=3;i<=mouth;i++)                
  {
    sum=n+temp;            //sum为本个月的总数
    n=temp;                //n为上上个月总数
    temp=sum;              //temp为上个月总数
  }
  printf("一共有%d只兔子\n",sum*2);
  return 0;
}

20.求Sn=a+aa+aaa+…+aa…a之值,n,a由键盘输入

#include<stdio.h>
int main()
{
  int a,n,i=1,sn=0,tn=0;
  printf("a,n=:");
  scanf("%d,%d",&a,&n);
  while(i<=n)
  {
    tn=tn+a;
    sn=sn+tn;
    a=a*10;
    ++i;
  }
  printf("a+aa+aaa+…+aa…a=%d\n",sn);
  return 0;
}

21.打印一个5*5的图形(原样打印)

* * * * *

* * * * *

* * * * *

* * * * *

* * * * *

#include<stdio.h>
int main()
{
  int i,j;
  for(j=0;j<5;j++)
  {
    for(i=0;i<5;i++)
    {
      printf("* ");
    }
    printf("\n");
  }
  return 0;
}

22.画实心圆

#include<stdio.h>
void main()
{
  char i,j,k;        
  for(j=0;j<4;j++)
  {
    for(i=0;i<3-j;i++)
    {
      printf(" ");
    }
    for(i=0;i<12+2*j;i++)
    {
      printf("*");
    }
    printf("\n");
  }
  for(i=0;i<18;i++)
  {
    printf("*");
  }
  printf("\n");
  for(j=0;j<4;j++)
  {
    for(i=0;i<j;i++)
    {
      printf(" ");
    }
    for(i=0;i<18-2*j;i++)
    {
      printf("*");  
    }   
    printf("\n");
  }
  printf("\n");
  return 0;
}

23.打印金字塔

#include<stdio.h>
int main()
{
  char i,j,k;        
  for(j=0;j<4;j++)
  {
    for(i=0;i<3-j;i++)
    {
      printf(" ");
    }
    for(i=0;i<=j*2;i++)
    {
      printf("*");
    }
    printf("\n");
  }
  return 0;
}

24.打印菱形

#include<stdio.h>
int main()
{
  char i,j,k;        
  for(j=0;j<4;j++)
  {
    for(i=0;i<4-j;i++)
    {
      printf(" ");
    }
    for(i=0;i<=j*2;i++)
    {
      printf("*");
    }
    printf("\n");
  }
  for(i=0;i<=4*2;i++)
  {
    printf("*"); 
  }
  printf("\n");
  for(j=0;j<4;j++)
  {
    for(i=0;i<=j;i++)
    {
      printf(" ");
    }
    for(i=0;i<(4-j)*2-1;i++)
    {
      printf("*");  
    }   
    printf("\n");
  }
  return 0;
}

25.求满足1+2+3+…+n<500中最大的N,并求其和,编写程序实现

#include <stdio.h>
int main()
{
  int n=0,sum=0;   //定义整型变量n和sun并都赋予了初始值0
  while(sum<500)
  {
    ++n;
    sum+=n;  //等于sum=sum+n
  }
  printf("N=%d\n",n-1);
  printf("1+2+3+4+......+%d<500\n",n-1);
}

26.把100~200之间的不能被3整除的数输出

#include <stdio.h>
int main()
{
  int a;      
  for (a=100;a<=200;a++)
  {
    if (a%3!=0)      //求余不等于0的就是不被3整除的
    {
      printf("%d\t",a);  //\t是空格
    }
  }
}

27.按以下规律翻译密码:将每一个字母变成它后面的字母,例如,将A变成B,B变成C,…,Z变成A,非字母字符不变,“!”作为电文结束标志

#include <stdio.h>
int main()
{
  char ch;
  printf("输入字符串:\n");
  while ((ch=getchar())!='!')
  {
    if ((ch>='a' && ch<='z')||(ch>='A' && ch<='Z'))
    { 
      if(ch=='z') 
      {
        ch='a';
      } 
      else if(ch=='Z')
      {
        ch='A';
      } 
      else 
      {
        ch=ch+1;
      } 
        printf("%c",ch);
      } 
  }
  printf("\n");
}

28.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程

#include <stdio.h>
int main()
{
  char ch;     //定义字符ch
  ch=getchar();
  if((ch>=65)&&(ch<=90))
  {
    ch=ch+32;
  } 
  else if ((ch>=97)&&(ch<=122))
  {
    ch=ch-32;
  } 
  printf("%c\n",ch);
}

29.编程实现:计算1到100之间的奇数之和及偶数之和

#include <stdio.h>
void main ()
{
  int n,even=0,odd=0;
  for(n=1;n<=50;n++)
  {
    even+=2*n;    //even=even+2*n
    odd+=2*n-1;
  }
  printf("1到100间的偶数的和为%d:\n",even);
  printf("1到100间的奇数的和为%d:\n",odd);
}

30.有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少?根据猜测给出不同的提示

#include <stdio.h>
int main()
{
  int a;
  printf ("x+y=2\n");
  printf("x*y=1\n");
  printf("请输入你所猜得数字\n");
  scanf("%d",&a);
  while(a!=11)
  {
    printf("you are not right\n");
    scanf("%d",&a);
  }
  printf ("you are right\n");
}

31.键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值

#include <stdio.h>
int main ()
{
  int a,x,y;
  printf ("请输入一个两位数\n");
  scanf("%d",&a);
  x=a/10;
  y=a%10;
  printf ("x+y=%d\n",x+y);
  printf("x*y=%d\n"x*y);
}
相关文章
|
7月前
|
C语言
c语言经典例题讲解(输出菱形,喝汽水问题)
c语言经典例题讲解(输出菱形,喝汽水问题)
98 0
|
6月前
|
机器学习/深度学习 人工智能 C语言
|
6月前
|
机器学习/深度学习 移动开发 人工智能
C语言程序设计例题
C语言程序设计50例
|
6月前
|
机器学习/深度学习 移动开发 人工智能
C语言编程例题分享
C语言编程经典100例
|
6月前
|
C语言
|
7月前
|
C语言
C语言:指针典型例题剖析
C语言:指针典型例题剖析
|
7月前
|
存储 编译器 vr&ar
c语言进阶部分详解(《高质量C-C++编程》经典例题讲解及柔性数组)
c语言进阶部分详解(《高质量C-C++编程》经典例题讲解及柔性数组)
54 0
|
C语言
C语言例题讲解(if语句,循环语句,函数)
C语言例题讲解(if语句,循环语句,函数)
100 0
|
C语言
c语言经典例题1
c语言经典例题1
100 0
|
编译器 C语言 C++
C语言操作符经典例题
C语言操作符经典例题