C语言学习代码〈三〉

//==========================================================
//switch ... case 练习
//日期:2013-5-8                 by:ant
//==========================================================
/*
#include<stdio.h>
int main()
{
    int colour;
    printf("请输入一个0-2的整数:");
    scanf("%d",&colour);
    switch(colour)
    {
        case 0:
            printf("红色\n");
            break;
        case 1:
            printf("绿\n");
            break;
        case 2:
            printf("蓝\n");
            break;
        default:
            printf("你的输入有误,重新输入");
            main();
            break;
    }
    return 0;
}
*/
#include<stdio.h>
int main()
{
    char word;
    printf("请输入一个A-E之间的小写字母");
    scanf("%c",&word);
    switch('word')
    {
        case 'a':
            printf("转成十进制整数为: 10");
            break;
        case 'b':
            printf("转成十进制整数为: 11");
            break;
        case 'c':
            printf("转成十进制整数为: 12");
            break;
        case 'd':
            printf("转成十进制整数为: 13");
            break;
        case 'e':
            printf("转成十进制整数为: 14");
            break;
        case 'f':
            printf("转成十进制整数为: 15");
            break;
    }
    printf("%d",(int)word);
return 0;
}
#include<stdio.h>
int main()
{
    int xun_huan,a[2],sum=0;
    for(xun_huan=0;xun_huan<3;xun_huan++)
    {
        printf("请输入第%d个数字。\n",xun_huan);
        //printf("前一次sum的值是:%d",sum);
        scanf("%d",&a[xun_huan]);
        printf("sum=%d + a[xun_huan]=%d的值:%d",sum,a[xun_huan],sum+a[xun_huan]);
        sum=sum+a[xun_huan];
        printf("sum的值是:%d\txun_huan的值是:%d\tA[xun_huan]的值是:%d\t\n",sum,xun_huan,a[xun_huan]);
    }
    printf("sun=%d\n",sum);
    return 0;
}
//5到20的所有数字求和,7不要,结果超过40停止
//
#include<stdio.h>
int main()
{
    int i,num=0;
        for(i=5;i<=20;i++)
        {
            if(num>=40)
            {
                break;
            }
            if(i!=7 && num<=40)
            {
            num+=i;
            }
            printf("%d\n",num);
        }
        return 0;
}
/*===================================================================
 *名称:日期问题             功能:无
 *日期:2013-5-8             by:ant
 *备注:从键盘输入一个年月日,输出从0年1月1日到输入的日期的天数。
 *================================================================= */
#include<stdio.h>
a(int year)//判断润年
{
    if(year % 4 == 0 || year % 400 ==0 && year %100 !=0)
    {
       // printf("是润年");
        return 1;//是润年
    }else
    {
        //printf("不是润年");
        return 0;//不是润年
    }
}
int b(int year,int month,int day)//判断这个日期是本年的第多少天
{
     int dayNum=0;//天数
     switch(month)
     {
         case 1:
             dayNum=0;//1月的话他之前的天数为0
             break;
         case 2:
             dayNum=31;//。。
             break;
         case 3:
             dayNum=59;//2月以28天记,最后是润年在加一天。
             break;
         case 4:
             dayNum=90;
                 break;
         case 5:
             dayNum=120;
             break;
         case 6:
             dayNum=151;
             break;
         case 7:
             dayNum=181;
             break;
         case 8:
             dayNum=212;
             break;
         case 9:
             dayNum=243;
             break;
         case 10:
             dayNum=273;
             break;
         case 11:
             dayNum=304;
             break;
         case 12:
             dayNum=334;
             break;
        default:
             printf("你输的是一个无效的月份");
             break;
     }//switch结束
    dayNum=dayNum+day;
    if(a(year) && month>=2)//是润年,且月份大于2月
    {
        dayNum++;//如果是润年加多一天,二月的问题。
    }
    return dayNum;//返回这个日期在本年中的天数。
}
int c(int year)//判断这一年有多少天润年返回366天,否则365天,并且加上之间年的天数。
{
    if(a(year))
    {
        return 366;
    }else
    {
        return 365;
    }
}

int main()
{
    int i,year,month,day,tian_shu=0,tian_shu1=0;
    printf("请输入一日期格式:1983 9 4:\n");
    scanf("%d%d%d",&year,&month,&day);
    tian_shu=b(year,month,day);//判断这个日期在本年中的天数
    for(i=0;i<=year;i++)//循环到当前年份求天数
    {
        tian_shu1 += c(i);//把每年的天数累加
    }
    tian_shu +=tian_shu1;//把每年的天数,加上本年的天数
    printf("天数为:%d\n",tian_shu-367);
}
    



 
//==============================================================
// 标题:for练习             功能:无
// 日期:2013-5-8            作者:ant
//=============================================================
/*
#include<stdio.h>
int main()
{
    int i;
    for(i=0;i<=100;i++)
    {
        printf("打印出来的结果是:%d\n",i);
    }
    return 0;
}
*/
#include<stdio.h>
int main()
{
    int i,num,num1;
    for(i=0;i<3;i++)
    {
    printf("请输入%d个整数:",i+1);
    scanf("%d",&num);
    num1+=num;
    }
printf("最后的结果是%d\n",num1);
}
/*===================================================================
 *名称:鸡兔问题             功能:无
 *日期:2013-5-8             by:ant
 *备注:x + y = 35 ;2x + 4y = 100;
 *================================================================= */
#include<stdio.h>
int main()
{
    int i,x,y,jiegou;
    for(i=0;i<35;i++)
    {

        x=i;
        if(x+(35-x)==35 && 2*x + 4*(35-x)==100)
        {
            printf("鸡有%d只,兔有%d只",x,35-x);
            break;
        }

    }
}
//判断一个数是否为素数;
#include<stdio.h>
#include<math.h>//数学函数头文件
int main()
{
   // int gen = sqrt(36);
   int gen,a;
    printf("请输入一个数:");
    scanf("%d",&a);// 求平方根函数。
    gen = sqrt(a);
    printf("平方根是%d\n",gen);
    for(gen;gen>=2;gen--)
    {
       if(a%gen==0)
       {
           printf("这不是一个素数,它能被%d整除\n",gen);
           break;
       }else if(gen==2)
       {
           printf("这是一个素数\n");
       }
    }
    if(a==111)
        return 0;

    main();
    return 0;
}
/*===================================================================
 *名称:按照备注中的关系     功能:无
 *日期:2013-5-8             by:ant
 *备注: 0 1 2 3 4 5 6 ...
 *      1 1 2 3 5 8 13 ....
 *================================================================= */
#include<stdio.h>
int main()
{
    int a=1,b=1,sum,i;
    for(i=0;i<=100;i++)
    {
        if(i<2)
        {
            printf("%d\n",1);
                sum=1;
        }else
        {
        sum = a +b;
        a=b;
        b=sum;
        printf("i=%d\tsum=%d\ta=%d\tb=%d\n",i,sum,a,b);
        }



    }

}

 

转载于:https://www.cnblogs.com/fanghui/archive/2013/05/08/3067945.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值