2012年5月14日星期一

learning c-ch06


//打印1-100中含9的数字
#include<stdio.h>
int main(void){
int i = 0;
while(i<100){
if(gewei(i)==9||shiwei(i)==9){
printf("%d\n",i);
}
i++;
}
}

int gewei(int x){
return x%10;
}

int shiwei(int x){
if(x<10) return 0;
return x/10;
}

//习题 
#include<math.h>
#include<stdio.h>
int main(void){
//print99();
void diamond(int,char);
diamond(3,'*');
diamond(5,'#');
}
//求两点直接距离的平方
int distance(int x1,int y1,int x2,int y2){
return (x2-x1) * (x2-x1) + (y2-y1) * (y2-y1);
}
//打印菱形
void diamond(int x,char c){
int i,j;
int t =(x+1)/2;//菱形中心位置x,y坐标
int d = x/2;//菱形离中心位置的最大距离
for(i=1;i<=x;i++){
for(j=1;j<=x;j++){
if(distance(i,j,t,t)>d*d){
printf(" ");
}else{
printf("%c",c);
}
}
printf("\n");
}
}
//打印99乘法口诀表
void print99(void){
int i,j;
for(i=1;i<10;i++){
for(j=1;j<=i;j++){
int temp = i*j;
printf("%d",temp);
if(temp<10){//补齐2位
printf(" ");
}
printf(" ");
}
printf("\n");
}
}

没有评论:

发表评论