>第 6 章 循环语句>嵌套循环>习题

waterloo waterloo2005@gmail.com
2009-03-10 14:31:08

include <stdio.h>前少了#


宋劲杉 songjinshan@akaedu.org
2009-03-11 14:49:44

谢谢指出,已改正:)


刘艳明 lonny_liu@hotmail.com
2009-04-08 00:47:30

1、
#include<stdio.h>
int main(void)
{
	int i,j;
	for(i=1;i<=9;i++){
		for(j=1;j<=i;j++)
			printf("%d\t",i*j);
			printf("\n");
	}
	return 0;
}
2、#include<stdio.h>
int diamond(int n,char c)
{
    int i,j,v,t;
	t=n/2;
	for(i=1;i<=t;i++){
		for(j=1;j<=t+1-i;j++)
			printf(" ");
		for(v=1;v<=2*i-1;v++)
				printf("%c",c);				
			printf("\n");
	}
	for(i=t+1;i>=1;i--){
		for(j=0;j<=t-i;j++)
           printf(" ");
		for(v=1;v<=2*i-1;v++)
			printf("%c",c);
			printf("\n");
		}
		return 0;
}
int is_even(int n)
{
	if (n%2==0)
		return 1;
	else
		return 0;
}
int main(void)
{
	int num;
	char ch;
	printf("Please input a num and a char:\n");
	scanf("%d %c",&num,&ch);
	if(is_even(num)||num<=0){
		printf("The num is error!Please input again\n");
		scanf("%d %c",&num,&ch);
	}
	diamond(num,ch);
	return 0;
}


jkdaw jackdaw@126.com
2009-09-01 10:25:35

#include <stdio.h>

void diamond(int n, char c)
{
    int A = n/2;
    int x, y;
    for (x=0; x<n; x++)
    {
        for (y=0; y<n; y++)
	{
            if (y >= A-x && y >= x-A && y <= 3*A-x && y <= x+A )
                printf("%c", c);
	    else
                printf(" ");
	}
        printf("\n");
    }
}

int main(int argc, char *argv[])
{
    int n;
    char c;
    if ( 3 != argc )
    {
        printf("usage: diamond odd_number char\n");
        return 1;
    }
    sscanf(argv[1], "%u", &n);
    if ( n <= 0 || n%2 != 1 )
    {
        printf("the number must be odd and great than zero\n");
        return 2;
    }
    c = *(argv[2]+0);
    diamond(n, c);
    return 0;
}


码匠 code_smith@sohu.com
2009-09-02 15:15:17

小九九
#include <stdio.h>

int main(void)
{
	int i, j;
	for (i=1; i<=9; i++) {
		for (j=1; j<=i; j++)
			printf("%d\t", i*j);
		printf("\n");
	}
	return 0;
}


码匠 code_smith@sohu.com
2009-09-02 16:25:15

#include <stdio.h>

int diamond(int n, char c)
{
    int b = n/2;	/* the number of blank */
    int x, y;
	
    if(n%2 == 0)
    {
	printf("Are you mad, man? Mr. Song teaches us the only leagl number is odd\n");
	return 1;
    }

    for (x=0; x<n; x++)
    {
        for (y=0; y<n; y++)
	{
            if (y >= b && y < n-b)
		printf("%c", c);
	    else
                printf(" ");
	}
	(x>=n/2) ? b++ : b--; /* blanks decrement in the upper graph, increment in the lower graph */
        printf("\n");
    }

    return 0;
}

int main(int argc, char *argv[])
{
    diamond(14, '&');
    return 0;
}

jackdaw高人,看不懂! ~~~~~~


tianyebj tianyebj@gmail.com
2009-09-20 22:18:36

第二题:打印菱形
#include <stdio.h>
void print_diamond(int c){
	int line_pos, num; // 每一行的打印位置和个数
	int i;
	int mid = c / 2;
	for(i = 0; i < c; i++){
		if(i <= mid){
			line_pos = mid - i;
			num = i * 2 + 1;
		}else{
			line_pos = i - mid;
			num = c - (i - mid) * 2;
		}
		int j;
		for(j = 0; j < line_pos; j++) printf("%c\t", ' ');
		for(j = 0; j < num; j++) printf("%c\t", '*');
		printf("\n");

	}
}


int main(void)
{
	int c;
	scanf("%d", &c);
	print_diamond(c);
	return 0;
}


周笑镭 rains.chou@gmail.com
2009-11-01 03:24:48

看来我的解法是最麻烦的咯!

#include <stdio.h>
#include <math.h>

int abs(int);

void diamond(int i, char c)
{
	int outputChar[2] = {' ', c};
	int flag =  -1;	/*start position flag*/
	int falsePointer = 0;	/*define char print pointer*/
	int totalFalse = -1;
	for(int a = 0; a < i; a++)
	{
		if( i%2 == 0 && a == i-1)
			/*printf("wrong args");
			  return;*/
			break;
		flag = ( ((i-1)/2 > a)?(1):(-1) ) * ((i-1)/2 - a);	/*define the start position*/
		totalFalse = i - abs((((i + 1)/2)*2)-2*(a+1));
		falsePointer = -flag;
		for(int b = 0; b < i; b++)
		{
			printf("%c  ",outputChar[(totalFalse+falsePointer++)/totalFalse == 1]);
		}
		printf("\n");
	}
	printf("\n");
	return;
}


int main(void)
{
	diamond(7,'*');
	printf("Hi vivienne!\n\n");
	return 0;
}


PQW 0216789abc@gamil.com
2009-12-13 15:02:38

#include <stdio.h>
void diamond (int x,char y)
{
    int a=x/2;
    int b,c;
    for (;a>=0;a--){
        for (b=a;b>=1;b--)
            printf (" ");
        for (c=x-a*2;c>=1;c--)
            printf ("%c",y);
        printf ("\n");
    }
    x=x-2,a=0;
    for (;a<=x/2;a++){
        for (b=a;b>=0;b--)
            printf (" ");
        for (c=x-a*2;c>=1;c--)
            printf ("%c",y);
        printf ("\n");
    }
}
int main (void)
{
    int f=29;
    char g='*';
    if (f%2==0)
        printf ("illegal input,please check it again!\n");
    else
        diamond (f,g);
    return 0;
}
老师您看还可以压缩优化一下么?


Chen Yang chenyangyinpeng@gmail.com
2009-12-24 10:05:16

void print_diamond(int input)
{
	if(if_even(input))
	{
		printf("Input Error");
	}
	else
	{
		int i,j,begin, end;
		begin=end=(input+1)/2-1;
		for(i=0; i<input; i++)
		{
			for(j=0; j<input; j++)
			{
				if (j<begin || j>end)
					printf("\t");
				else
					printf("*\t");
			}
			printf("\n");
			if(i<((input+1)/2-1))
			{
				begin=begin-1;
				end=end+1;
			}
			else
			{
				begin=begin+1;
				end=end-1;
			}
		}
	}
}

int if_even(int input)
{
	if (input%2==0)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}


laciqs 530107999@qq.com
2010-04-24 08:44:21

2. :
void diamond(int n, char character)
{
	int i, j;
	int num_line = 1;
	
	for (i = 1; i <= n; i++) {
		for (j = 1; j <= (n - num_line) / 2; j++)
			printf("\t");
		for (j = 1; j <= num_line; j++)
			printf("%c\t", character);
		if (i <= n / 2)
			num_line = num_line + 2;
		else
			num_line = num_line - 2;
		printf("\n"); 
	}
}


bowen zhangbowen_06@126.com
2010-05-02 18:01:39

#include <stdio.h>

void diamond(int n,char ch);

int main(int argc,char **argv)
{
        int n;
        char  ch;
        printf("请输入一个整数,且是奇数:");
        scanf("%d %c",&n,&ch);
        diamond(n,ch);
        return 0;

}

void diamond(int n,char ch)
{
        int i,j,k;
        int mid = n / 2;
        for(i=0; i<= mid; i++){
                for(k = (n/2)-i;k >=0;k--)
                {
                        printf("\t");
                }
                for(j =0; j < (2*i+1); j++){
                                printf("%c\t",ch);
                }
                printf("\n");

        }

        int x,y,z;
        for(x=mid; x>0; x--){
                for(z=0;z<mid-x+2;z++){
                        printf("\t");
                }
                for(y=0;y<2*x-1;y++){
                        printf("%c\t",ch);
                }
                printf("\n");
        }
}


by_cherish yuhao_213@163.com
2010-05-07 17:37:18

小九九
#include <stdio.h>

int main(void)
{
  int i,j;
  for (i=1;i<=9;i++)
    {
      for (j=1;j<=9;j++)
        {
          printf("%d\t",i*j);
          if (i==j)
            break;
        }

  printf("\n");
    }
  return 0;

}


Andy Ho sixand@gmail.com http://sixand.typepad.com/
2010-06-20 02:10:56

看到楼上各位朋友写的和我自己写的,真是自愧不如呀。
写复杂了。
[code]
#include <stdio.h>
int frame99(void);

int main(void)
{
	if(frame99())
		return 1;
	return 0;
}

int frame99(void)
{
	int i,j;
	for( i = 1 ; i <=9 ; i++ )
	{
		for( j = 1 ; j <= 9 ; j++ )
		{
			if( i - j < 0 )
			{
				printf("\t");
			}
			else
			{
				printf("%d \t", i * j);
			}
		}
		printf("\n");
	}
	return 0;
}
[/code]


Andy Ho sixand@gmail.com http://sixand.typepad.com/
2010-06-21 03:02:11

足足想了两个晚上,想不出来不罢休阿。。
有参考过别人的代码。但完全没有一条语句是抄袭的。
一直在纠结倒序和正序的分解,后来看到别人的一篇文章就完全开窍了。。
草稿的话我足足写了5页纸。
写出各个数列的关系,然后再仔细思量一番才有今天的结果阿。。

[code]

#include <stdio.h>
int frame99(void);
int diamond(int i , char c);
int Get_Char(int i, char n);

int main(void)
{
	int		i;
	scanf( "%d" , &i );
	if( frame99() )
	{
		printf( "\n" );
	}
	if( diamond( i , '*' ) );

	return 0;
}

int frame99(void)
{
	int i,j;
	for( i = 1 ; i <=9 ; i++ )
	{
		for( j = 1 ; j <= 9 ; j++ )
		{
			if( i - j < 0 )
			{
				printf("\t");
			}
			else
			{
				printf("%d \t", i * j);
			}
		}
		printf("\n");
	}
	return 1;
}

int diamond(int i , char c)
{
	int m , s ;
	if( i % 2 != 0 )
	{
		for( m = 0 ; m <= i ; m ++ )
		{
			if( m % 2 != 0 )
			{
				Get_Char( m , c );
				printf( "\n" );
			}
			else
			{
				Get_Char( ( i - m ) / 2 + 1 , ' ' );
			}
		}
		for( s = i - 1 ; s >= 0 ; s -- )
		{
			if( s % 2 != 0 )
			{
				Get_Char( s , c );
				printf( "\n" );
			}
			else
			{
				Get_Char( ( i - s ) / 2 + 2 , ' ' );
			}
		}
	}
	else
	{
		printf( "请输入奇数" );
	}


	return 1;
}

int Get_Char(int i, char n )
{
	for( ; i >= 1 ; i -- )
	{
		printf("%c ", n );
	}
	return 1;
}

[/code]


Andy Ho sixand@gmail.com http://sixand.typepad.com/
2010-06-21 03:05:41

如果我之用一个变量,会不会不够标准?

int diamond(int i , char c)
{
	int m ;
	if( i % 2 != 0 )
	{
		for( m = 0 ; m <= i ; m ++ )
		{
			if( m % 2 != 0 )
			{
				Get_Char( m , c );
				printf( "\n" );
			}
			else
			{
				Get_Char( ( i - m ) / 2 + 1 , ' ' );
			}
		}
		for( m = i - 1 ; m >= 0 ; m -- )
		{
			if( m % 2 != 0 )
			{
				Get_Char( m , c );
				printf( "\n" );
			}
			else
			{
				Get_Char( ( i - m ) / 2 + 2 , ' ' );
			}
		}
	}
	else
	{
		printf( "请输入奇数" );
	}


	return 1;
}

int Get_Char(int i, char n )
{
	for( ; i >= 1 ; i -- )
	{
		printf("%c ", n );
	}
	return 1;
}


苍榕 cang_rong@126.com
2010-09-20 20:19:08

#include <stdio.h>

int diamond(int input, char sharp)
{
	int i;
	int ix;
	int iy;
	int itmp;
	
	i    = 0;
	ix   = 0;
	iy   = 0;
	itmp = 0;	
		
	if ( 0 == input || 0 == (input % 2 ) )
	{
		printf("Your input number is error!\n");
	}
	else
	{	
		for ( i = 1; i <= input; i++ )
		{
			iy = ( i > ( input + 1 ) / 2 ) ? ( ( input - i ) * 2 + 1 ):( i * 2 - 1);
			ix = (input - iy)/2;
			
			for ( itmp = 0; itmp < ix + iy; itmp++ )
			{
				if ( itmp < ix)
				{
					printf(" ");
				}
				else
				{
					printf("%c", sharp);
				}
			}
			printf("\n");
		}
	}
	return 0;
}
	
int main(void)
{
	int  input_num;
	char input_sharp;
	
	printf("Please input a number and a sharp:");
	scanf("%d,%c", &input_num, &input_sharp);
	diamond(input_num, input_sharp);
	return 0;
	
}


华松 zhs_shz@163.com
2010-11-25 12:18:34

#include<stdio.h>
#include<math.h>
void diamond(int);

int main()
{
	int n;
	printf("Please enter a odd number n=");
	scanf("%d",&n);
	if(n%2==0)
		printf("Error input!");
	diamond(n);
	return 0;
}

void diamond(int n)
{
	int i,j,k;
	for(i=0;i<n;i++)
	{
		for(j=0;j<abs(n/2-i);j++)
			printf("\t");
         
		for(k=0;k<n-2*abs(n/2-i);k++)    
			printf("*\t");
		printf("\n");
	}

}


newbie miniff@126.com
2010-12-21 00:28:01

http://blog.chinaunix.net/u4/124133/showart_2441558.html


rufeng newingc@gmail.com http://www.xin-e.cc/
2011-01-09 02:34:39

#include <stdio.h>
#include <math.h>

void diamond(int n, char s)
{
	if (!(n % 2)){
		printf("%d is not an odd number!\n", n);
		return;
	}

	int i, j;
	int mid = (n + 1) / 2;
	for (i = 1; i <= n; i ++){
		for(j = 1; j<=n; j++) {
			if (abs(mid - i) + abs(mid - j) < mid)
				printf("%c", s);	
			printf("\t");
		}
		printf("\n");
	}
}


sd44 sd44sd44@yeah.net
2011-01-10 23:51:57

/*
 * =====================================================================================
 *       Filename:  diamond-1.c
 *    Description:  编写函数diamond打印一个菱形
 *			问题摘自 http://learn.akae.cn/media/ch06s05.html
 * =====================================================================================
 */

#include	<stdio.h>
#include	<stdlib.h>

void diamond(int n, char x)
{
	if (n % 2 == 0) {
		printf("wrong number\n");
		return;
	}

	int i, j;

	for (i = (-n / 2); i < (n / 2 + 1); ++i) {
		for (j = 0; j < n; ++j) {
			if (j < 2 * abs(i)) {
				if (j % 2 == 0)
					printf(" ");
				else
					printf("\t");
			} else
				printf("%c\t", x);
		}
		printf("\n");
	}

}

int main(void)
{
	diamond(5, '&');
	return 0;
}


贾俊涛 jiajuntao@126.com
2011-01-11 19:15:04

//习题二答案:

#include<stdio.h>

int is_even(int n){
        return !n%2;
}

void rhombug(int n,char c){
        if(is_even(n)){
                return;
        }
        int middle = (n+1)/2;
        int i;
        int printNum;
        int printIndex;
        for(i=1; i<=n; ++i){
                int j;
                int num = 0;
                if(i <= middle){
                        printIndex = middle + 1 - i;
                        printNum = 2 * i -1;
                }else{
                        printIndex += 1;
                        printNum -= 2;
                }

                for(j=1;j<=n;j++){
                        if(j<printIndex){
                                printf("\t");
                        }else{
                                if(num++ < printNum){
                                        printf("\t%c",c);
                                }else{
                                        break;
                                }
                        }
                }
                printf("\n");
        }
}

int main(void){
        rhombug(9,'*');
        return 0;
}


xudonglee xudongleee@126.com
2011-01-19 20:30:44

#include <stdio.h>

int main()
{
   int i, j;

   for(i = 1; i <= 9; i++)
   {
        for(j = 1; j <= i; j++)
        {
                  printf("%d\t", i*j);
        }

        printf("\n");
   }
   return 0;
}


许发扬 fayangxu@qq.com
2011-02-01 15:01:25

#include <stdio.h>

int diamond(int n,char c)
{
 int i,j,v,t;
 t=n/2;
 
 for(i=1;i<=t;i++){    /*打印上半部分*/
    for(j=1;j<=t+1-i;j++)
       printf(" ");
    for(v=1;v<=2*i-1;v++)
       printf("%c",c);
       printf("\n");
 }

 for(i=t+1;i>=1;i--){  /*打印下半部分*/
    for(j=0;j<=t-i;j++)
       printf(" ");
    for(v=1;v<=2*i-1;v++)
       printf("%c",c);
       printf("\n");
 }

 return 0;
}

int is_even(int n)/*判断是否为偶数*/
{
 if(n%2==0)
   return 1;
 else
   return 0;
}
 
int main(void)
{
 int n;char c;

 printf("Please input an number and a char:\n");
 scanf("%d,%c",&n,&c);
 if(is_even(n)||n<=0){
   printf("ERROR!Positive odd please!Input again:\n");
   scanf("%d,%c",&n,&c);
 }

 diamond(n,c);

 return 0;
}  


江民 vipstepstep@163.com
2011-05-18 10:17:15

int main(void) 
{
	int i = 0, j = 0;

	for(i = 1; i <= 9; ++i) 
	{
		for(j = 1; j <= i; ++j) 
		{
			if(1 == j) {
				printf("(%d)", j * i);
			}
			printf("%d\t", i * j);
		}
		printf("\n");
	}
	return 0;
}


gh codeghg@gmail.com
2011-05-25 15:10:08

#include <stdio.h>
#include <math.h>

int main(void)
{
	void	diamond(int n, char c);

	int	n;
	char	c;
	scanf("%d %c", &n, &c);
	if (n % 2 ==0)
		printf ("please 奇数\n");
	else
		diamond(n, c);
	return 0;
}

void diamond(int n, char c)
{
	int	i, j, k;
	for (i = 1; i <= n; ++i) {
		for (k = 1; k <= abs(i - (n + 1)/2); ++k) {
			printf("\t");
		}
		for (j = 1; j <= n - 2 * abs(i - (n + 1)/2); ++j) {
			printf("%c\t", c);
		}
		printf("\n");
	}
}


zwzhen zwzhen@gmail.com
2011-07-20 18:41:11

#include <stdio.h>
#include <math.h>

int diamond(int odd, char symbol);

int main(void)
{
	diamond(1, '#');
	diamond(3, '*');
	diamond(5, '+');
	diamond(4, '&');
	return 0;
}

int diamond(int odd, char symbol)
{
	int i, j;
	if(!(odd % 2))
	{
		printf("The first parameter must be odd number and be greater than zero, such as 3, 5, 7 ,9 ...");
		return 1;
	}
	for(i = odd / -2; i <= odd / 2; i++)
	{
		for(j = odd / -2; j <= odd / 2; j++)
		{
			if(abs(i) + abs(j) <= odd / 2) printf("%c\t", symbol);
			else printf("\t");
		}
		printf("\n");
	}
	return 0;
}


zwzhen zwzhen@gmail.com
2011-07-20 18:43:51

#include <stdio.h>
#include <math.h>

int diamond(int odd, char symbol);

int main(void)
{
	diamond(1, '#');
	diamond(3, '*');
	diamond(5, '+');
	diamond(4, '&');
	return 0;
}

int diamond(int odd, char symbol)
{
	int i, j;
	if(!(odd % 2) || odd <= 0)
	{
		printf("The first parameter must be odd number and be greater than zero, such as 3, 5, 7 ,9 ...");
		return 1;
	}
	for(i = odd / -2; i <= odd / 2; i++)
	{
		for(j = odd / -2; j <= odd / 2; j++)
		{
			if(abs(i) + abs(j) <= odd / 2) printf("%c\t", symbol);
			else printf("\t");
		}
		printf("\n");
	}
	return 0;
}
补充对ODD的判断


wangzhengyi 15866883396@126.com
2011-10-08 22:25:05

小99程序,第二个正在研究当中,楼上的各种算法是否过于复杂了,没有看的欲望啊
#include<stdio.h>
void main(){
int i,j;
for(i=1;i<=9;i++)
for(j=1;j<=i;j++)
{
printf("%d ",i*j);
printf("\n");
}
}
这样应该就可以完成小99的输出了


wangzhengyi 15866883396@126.com
2011-10-08 22:54:04

第二个程序刚研究出来,供参考
#include<stdio.h>
int diamod(int n,char c){
int x,y,b;
b=n/x;
for(x=0;x<n;x++){
for(y=o;y<n;y++){
if(y>=b&&y<n-b)
printf("%c",c);
else
printf("");
}
if(x>=n/2)
b--;
else
b++;
}
}
int is_odd(int n){
if(n%2==0)
return 1;
else
ruturn 0;
}
int main(void){
int n;
char c;
pintf("input a number and a char:");
scanf("%d %c",&n &c);
if((is_odd(n))||(n<=0))
{printf("ARE YOU CARZY?");
return 0;}
diamod(n,c);
return 0;
}


ivon yifeng.ivon.wang@hotmail.com
2011-11-20 23:10:31

/*
06.5.1
打印的小九九
1	2	3	4	5	6	7	8	9
2	4	6	8	10	12	14	16	18
3	6	9	12	15	18	21	24	27
4	8	12	16	20	24	28	32	36
5	10	15	20	25	30	35	40	45
6	12	18	24	30	36	42	48	54
7	14	21	28	35	42	49	56	63
8	16	24	32	40	48	56	64	72
9	18	27	36	45	54	63	72	81

1	
2	4	
3	6	9	
4	8	12	16	
5	10	15	20	25	
6	12	18	24	30	36	
7	14	21	28	35	42	49	
8	16	24	32	40	48	56	64	
9	18	27	36	45	54	63	72	81
*/

#include <stdio.h>

int main(void)
{
	int i ;
	int j ;

	for(i = 1; i <= 9; i++)
	{
		for(j = 1; j <= 9; j++)
		{
		printf("%d\t", i*j) ;
		}
	
	printf("\n") ;
	}

	int x ;
	int y ;

	for(x = 1; x <= 9; x++)
	{
		for(y = 1; y <= x; y++)
		{
		printf("%d\t", x*y) ;
		}
	
	printf("\n") ;
	}
	return 0 ;

}


ivon yifeng.ivon.wang@hotmail.com
2011-11-20 23:12:19

/*
06.5.2
编写函数diamond打印一个菱形。如果调用diamond(3, '*')则打印:

	*
*	*	*
	*
如果调用diamond(5, '+')则打印:

		+
	+	+	+
+	+	+	+	+
	+	+	+
		+
如果用偶数做参数则打印错误提示。
*/

#include <stdio.h>

int diamond(int x, char y)
{
	int i ;
	int j ;
	int k = 0 ;
	int temp = 0 ;

	for(i = 1; i <= x; i++)
	{
		for(j = 1; j <= x; j++)
		{
			if( (j >= (x / 2 + 1) - k ) && ( j <= (x / 2 + 1) + k) )
			{
				printf("%c\t", y) ;
			}
			else
			{
				printf("\t") ;
			}
		}

		printf("\n") ;

		if(k <= x / 2 && temp == 0)
		{
			k++ ;
		}
		else 
		{
			k-- ;
		}

		if(k == x / 2)
		{
			temp = 1 ;
		}
	}

	return 0 ;
}

int main(void)
{
	int x ;
	char y ;

	printf("Please input how many colums/rows it is.\n") ;
	printf("Number=") ;
	scanf("%d", &x) ;
	getchar() ;

	if(x%2==0)
	{
		printf("It should be a odd number.\n") ;

		return 1 ;
	}

	printf("Please input what symbol it is.\n") ;
	printf("Symbol=") ;
	scanf("%c", &y) ;
	printf("y=%c", y) ;

	diamond(x, y) ;

	return 0 ;
}


echelon echelon@126.com
2011-12-27 10:38:23

偶数报错就不写了
#include<stdio.h>

int nchar(int n,char a)
{
	int i;
	for (i=0;i<n;i++)
	{
		printf("%c",a);
	}
	return 0;
}

int n2char(int n,char a1,char a2)
{
	int i;
	for (i=0;i<n;i++)
	{
		printf("%c%c",a1,a2);
	}
	return 0;
}

int diamond(int n,char a)
{
	int i,j;
	for(i=1;i<=(n+1)/2;i++)
	{
		nchar(((n-1)/2-i+1),'\t');
		n2char((2*(i-1)+1),a,'\t');
		printf("\n");
	}
	for (j=(n-1)/2;j>0;j--)
	{
		nchar(((n-1)/2-j+1),'\t');
		n2char((2*(j-1)+1),a,'\t');
		printf("\n");
	}
	return 0;
}
int main(void)
{
	diamond(5,'+');
	return 0;
}


wangzhengyi 15866883396@126.com
2012-01-19 14:33:27

#include <stdio.h>
#include <stdlib.h>

int main(){
	for(int i=1;i<=9;i++){
		for(int j=1;j<=i;j++){
			printf("%d  ",i*j);
		}
		printf("\t \n");
	}
	system("pause");
}


如果您有建设性意见,哪怕只是纠正一个错别字,也请不吝赐教,您留下的姓名和email将会出现在本书前言的致谢中。再次感谢您的宝贵意见!