2013-08-19C语言编程实践课第一天

        又是一个新的学期,开学挺早的,从现在开始了为期一个月的实践小学期。

 

        刚开始C语言编程实践课,被新老师说的感觉对这课略有忐忑之情,阿门。

 

        又有计算机文化基础,还有C语言,数据结构等等各种综合,真的略忐忑。

 

       不过呢,似乎刚开始每一门学科都会有些这样的感觉,不过,这些都是已经学过的了,应该还好吧。

 

       嗯,加油。无敌的小图图,加油~~~亲爱的小伙伴们,你们也加油哦!~

 

/*********************************************************************************第一题*************************************************************************************/

/*求s=1+2+3+…+10 ;用while语句实现*/

#include <stdio.h>

void  sumFromOneToTen( )

{        int i, s;  //定义循环变量i和累加变量s

         i=1;   //循环变量赋初始值

         s=0;  //累加变量根据实际赋初始值

         while(i<=10)   //i从1变到10(即当i<=10都需要循环)

         {        s += i;    //累加

                   i++;       //循环变量改变值

         }

         printf(“s=%d”, s);

}

/*****************************************************************用for语句实现*************************************************************/

#include <stdio.h>

void  sum_1_to_100( )

{        int i, s;

         s = 0;

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

         {        s += i;       }//循环体

        

         printf(“s=%d”, s);

 

}

/*********************************************************************************第一题*************************************************************************************/

 

/*********************************************************************************第二题*************************************************************************************/

 

                                                                        有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

 

main()
{
int i,j,k ;
printf ("\n");
for(
i =1;i<5;i++) /* 以下为三重循环* /
  for(j=1;j<5;j++)  
  
for (k=1;k<5;k++)
    {
     if ( i !=k&& i !=j&&j!=k) /* 确保 i j k 三位互不相同* /
     printf ("% d,%d,%d \n", i,j,k );
    }
}

 

/*********************************************************************************第二题*************************************************************************************/

 

 

/*********************************************************************************第三题*************************************************************************************/

                                                     一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

v
#include " math.h "
main()
{
long
int i,x,y,z ;
for (
i =1;i<100000;i++)
  { x= sqrt (i+100); /*x 为加上 100 后开方后的结果* /
   y= sqrt (i+268); /*y 为再加上 168 后开方后的结果* /
    if(x*x==i+100&&y*y==i+268)
/*
如果一个数的平方根的平方等于该数,这说明此数是完全平方数* /
     printf ("\ n%ld \n", i );
  }
}

/*********************************************************************************第三题*************************************************************************************/

 

 

/*********************************************************************************第四题*************************************************************************************/

                                                                                                   输入三个整数x,y,z,请把这三个数由小到大输出。

v main()
{
int x,y,z,t ;
scanf ("% d%d%d ",& x,&y,&z );
if (x>y)
  {t=
x;x = y;y =t;} /* 交换 x,y 的值* /
if(x>z)
  {t=
z;z = x;x =t;}/* 交换 x,z 的值* /
if(y>z)
  {t=
y;y = z;z =t;}/* 交换 z,y 的值* /
printf ("small to big: %d %d %d\n", x,y,z );
}
 
/*********************************************************************************第四题*************************************************************************************/

 

/*********************************************************************************第五题*************************************************************************************/

                                                                                                                                     输出9*9口诀。

v #include " stdio.h "
main()
{
  int i,j,result ;
  printf ("\n");
  for ( i =1;i<10;i++)
   { for(j=1;j<10;j++)
     {
      result= i *j;
      printf ("%d*%d=%-3d",i,j,result); /*-3d 表示左对齐,占 3 位* /
     }
    printf ("\n");/* 每一行后换行* /
   }
}

 

/*********************************************************************************第五题*************************************************************************************/

 

 

/*********************************************************************************第六题*************************************************************************************/

                                                                                    有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

v main()
{
int n,t,number =20;
float a=2,b=1,s=0;
for(n=1;n<=
number;n ++)
  {
  s= s+a /b;
  t= a;a = a+b;b =t;/* 这部分是程序的关键,请读者猜猜 t 的作用* /
  }
printf ("sum is %9.6f\ n",s );
}

 

/*********************************************************************************第六题*************************************************************************************/

/*********************************************************************************第七题*************************************************************************************/

                                                                                                      输入某年某月某日,判断这一天是这一年的第几天?

v main()
{
int day,month,year,sum,leap ;
printf ("\ nplease input year,month,day \n");
scanf ("% d,%d,%d",&year,&month,&day );
switch(month)/*
先计算某月以前月份的总天数* /
{
  case 1:sum=0;break;
  case 2:sum=31;break;
  case 3:sum=59;break;
  case 4:sum=90;break;
  case 5:sum=120;break;
  case 6:sum=151;break;
  case 7:sum=181;break;
  case 8:sum=212;break;
  case 9:sum=243;break;
  case 10:sum=273;break;
  case 11:sum=304;break;
  case 12:sum=334;break;
  default:printf ("data error");break;
}
sum=
sum+day ;   /* 再加上某天的天数* /
  if(year%400==0||(year%4==0&&year%100!=0))/* 判断是不是闰年* /
   leap=1;
  else
   leap=0;
if(leap==1&&month>2)/*
如果是闰年且月份大于 2, 总天数应该加一天* /
sum++;
printf ("It is the % dth day.",sum );

}

/*********************************************************************************第七题*************************************************************************************/

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值