从用户输入中打印出一个方形的星号?

时间:2014-06-12 04:38:17

标签: c

我是C编程的初学者,我在根据用户输入制作方形星号时遇到了一些问题,所以如果用户输入5作为输入,那么它应该产生5x5广场。我不断收到一行星号;我做错了什么?

#include <stdio.h> 

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

    printf(" Please enter the size of the square"); 
    scanf("%d", &size); 

    for( i=0; i< size;i++); 
    {
        for( j=0; j< size; j++)
        {
             printf("*");
        }
        printf("\n");
    }

    return 0;
}

5 个答案:

答案 0 :(得分:2)

问题在于你的第一个for循环。删除声明循环后保留的分号。

如果你保留分号,那么for循环就会被终止。

for( i=0; i< size;i++);

答案 1 :(得分:1)

  

for(i = 0; i&lt; size; i ++);

尝试删除分号

答案 2 :(得分:0)

在这一行:

for( i=0; i< size;i++); 

摆脱分号,它会起作用。

您不需要在启动代码块的行上使用分号,只需要在单个语句上使用分号。

答案 3 :(得分:0)

从行

中删除最后一个;
for( i=0; i< size;i++); 

需要

for( i=0; i< size;i++)

答案 4 :(得分:0)

试试这段代码:它应该有所帮助: 我只在第一个循环结束时删除了一个分号,因为如果有一个分号可用,那么循环终止于那里并且不再继续。

#include <stdio.h> 
int main(void)
{ 
    int size; 
    int i; 
    int j;
    printf(" Please enter the size of the square"); 
    scanf("%d", &size); 

    for( i=0; i< size;i++)
    { 
        for( j=0; j< size; j++)
        { 
           printf("*");  
        }
        printf("\n"); 
    } 
    return 0; 
}