经典的数学问题:
1-1、 三色球问题:若一个口袋中放有12个球,其中有3个红色
的,3个白色的,6个黑色的,从中任取8个球,问共有多少种不同颜色的搭配?
#include
int i,k,j=0;
for(i=0;i<=3;i++) { for(k=0;k<=3;k++) { if(i+k>=2) j++; } }
printf(\共有%d种方案\\n\return 0; }
1-2:12个球中摸出3个球都是红色的概率是多少?
#include
float i,j,k,sum=0; for(i=0;i<=3;i++) for(j=0;j<=3;j++) for(k=0;k<=6;k++) if(i+k+j==3) sum++; printf(\为%.2f\\n\return 0; }
2、鸡兔同笼问题:共有98个头,386只脚,编程求鸡、兔各多
少只?
#include
int x,y;
for(x=1;x<=386;x++) { if(2*x+4*(98-x)==386) { x=x; y=98-x; break; } }
printf(\鸡有%d只,兔有%d只。\
return 0; }
3、百鸡问题:鸡翁一,值钱五;母鸡一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁,母鸡,鸡雏各几何?
#include
int a=0,b,c;
while(a<=20) //鸡翁个数不能超过20个 {
for(b=0;b<=33;b++)//鸡母个数不能超过100/3个
for(c=0;c<=300;c=c+3)//鸡雏个数不超过300只,for循环下的循环 {
if(a+b+c==100 && a*5+b*3+c/3==100)//三种鸡总共100只 价钱共100 printf(\鸡翁:%d\\n 鸡母:%d\\n 鸡雏:%d\\n\\n\\n\}
a++;//与前面while循环联系 } return 0; }
1、 教材P111的5.5;
#include
void main( ) { double x,y;
printf(\请输入x:\ scanf(\ if(x<1) y=x;
else if(x<10) y=2*x-1; else
y=3*x-11;
printf(\ }
2. 分析一下程序段输入的结果(一定要先纸上,后机器验证)
#include
{ int x=1,y=-10; if(x<++y)
if(y--<0)
x+=y;
else x+=3*y; else x=3*y; printf(\ }
首先判断x<++y,此时y=-9,而又不满足if条件,所以就进入else,x=3*y;自然,x=-27.
-27
3、输入若干整数给x,使用if语句输出x的绝对值,当输入0时结束;
#include
printf(\请输入一个数\\n\scanf(\if(x==0)
printf(\的绝对值是%d\\n\ for(;x!=0;)
{
if(x>=0)
printf(\的绝对值是%d\\n\ else
printf(\的绝对值是%d\\n\ scanf(\ }
return 0; }
4、将输入字符的大写英文字母转换成小写字母输出,小写字母原样输出
#include
char a;
printf(\请输入一组英文字母,并以#结束:\\n\ while((a=getchar())!='#') {
if(a<=122,a>=97) putchar(a); else
putchar(a+32); }
printf(\ return 0; }
5、课件例题6.1
#include
int main()
{ int x,sum=0; scanf(\
for( ; x ; scanf(\ if(x>0)
sum=sum+x;
printf(\正数和为:%d\\n\ return 0; }
6、根据代码写出代码所完成的功能
#include
printf(\请输入x:\ scanf(\ if(x<1)
y=x+1; else if(x<2) y=x+2; else
y=x+3;
printf(\ }
此程序的功能计算一个分段函数。y=x+1 x<1 y=x+2 x<2 y=x+3 x>=2
5、本周本次课程小结
本周的作业还算简单。我觉得本人在C上的弱点就是利用程序做数学问题。 我想我自己对编程的练习还不够深入,练得还不够多。
我认为我接下的阶段,要把以前做过的作业都复习一遍,总结出一些规律和方法,这样对以后的学习有帮助,对期中考试也有帮助。