《C语言及程序设计》实践参考——函数版星号图

来源:互联网 发布:知乎如何看待刘诗诗 编辑:程序博客网 时间:2024/05/16 06:41

返回:贺老师课程教学链接  项目要求


【项目1-函数版星号图】
这一组的练习意在通过调用函数输出星号图,体会与理解函数的工作过程,并为其后编制自定义函数实现特定功能。
(1)补充完下面的程序,使程序输出星号下面的星号图:

#include <stdio.h>void printstars(int m) //定义能输出一行m个星号的函数{    int j;    for (j=1; j<=m; ++j)         printf("*");}int main( ){  int n=6; //n代表要输出的行数  int i;  for(i=1; i<=n; ++i)    {        //请在下面写上调用printstars函数的语句,使程序输出右图        ______________________;        printf("\n");    }  return 0;}
[参考解答]

#include <stdio.h>void printstars(int m) //定义能输出一行m个星号的函数{    int j;    for (j=1; j<=m; ++j)         printf("*");}int main( ){  int n=6; //n代表要输出的行数  int i;  for(i=1; i<=n; ++i)    {        //请在下面写上调用printstars函数的语句,使程序输出右图        printstars(2*i-1);          printf("\n");    }  return 0;}


(2)根据main函数中对printchs函数的调用,以及printchs的功能要求,编写printchs函数,使下面的程序能输出星号图:

//调用函数printchs输出星号图#include <stdio.h>//在下面写printchs函数的定义,功能是输出一行若干个指定字符int main( ){    int n=6; //n代表要输出的行数    int i;    //通过在下面的循环里调用printchs函数,输出右面的图    for(i=1; i<=n; ++i)    {        printchs(n-i,' ');        printchs(2*i-1,'*') ;        printf("\n");    }    return 0;}
[参考解答]

//调用函数printchs输出星号图#include <stdio.h>//在下面写printchs函数的定义,功能是输出一行若干个指定字符void printchs(int n, char c){    int j;    for (j=1; j<=n; ++j)        printf("%c", c);}int main( ){    int n=6; //n代表要输出的行数    int i;    //通过在下面的循环里调用printchs函数,输出右面的图    for(i=1; i<=n; ++i)    {        printchs(n-i,' ');        printchs(2*i-1,'*') ;        printf("\n");    }    return 0;}


(3)在上面的程序中,只改动一处,输出下面的图形

[参考解答]

#include <stdio.h>//在下面写printchs函数的定义,功能是输出一行若干个指定字符void printchs(int n, char c){    int j;    for (j=1; j<=n; ++j)        printf("%c", c);}int main( ){    int n=6; //n代表要输出的行数    int i;    for(i=1; i<=n; ++i)    {        printchs(n-i,' ');        printchs(2*i-1,'A'+i-1) ;  //输出的符号,与i相关        printf("\n");    }    return 0;}

(4)利用printchs函数,再实现以前写过的其他星号图,体会定义函数带来了的好处。
[参考解答(无)]



1 0
原创粉丝点击