1.编写一个程序,调用一次printf() 函数,把你的名和姓打印在一行。再调用一次printf() 函数, 把你的名和姓分别打印在两行。然后,再调用两次printf() 函数,把你的名和姓打印在一行。 输出应如下所示(当然要把示例的内容换成你的名字):
Gustav Mahler←第1次打印的内容
Gustav←第2次打印的内容
Mahler←仍是第2次打印的内容
Gustav Mahler ← 第3次和第4次打印的内容
#include <stdio.h>
int main(void)
{
printf("Gustav Mahler\n");
printf("Gustav\n");
printf("Mahler\n");
printf("Gustav ");
printf("Mahler");
return 0;
}
注:本题练习换行符‘\n’?的用法。
2. 编写一个程序,打印你的姓名和地址。
#include <stdio.h>
int main(void)
{
printf("Name:XXX\n");
pirntf("Address:XXXXXX\n");
return 0;
}
注:本题练习printf()函数的用法。
3. 编写一个程序把你的年龄转换成天数,并显示这两个值。这里不用考虑闰年的问题。
#include <stdio.h>
int main(void)
{
int y=37; /*年龄*/
int m=9; /*月份*/
int d=13; /*日期*/
int days; /*天数*/
days=365*37+31+29+31+30+31+30+31+31+13;
printf("Ages:%d\n",y);
printf("Days:%d\n",days);
return 0;
}
注:本题练习int类型转换说明%d的用法。
4.编写一个程序,生成以下输出:
For he' s a jolly good fellow!
For he' s a jolly good fellow!
For he' s a jolly good fellow!
Which nobody can deny!
除了main() 函数以外,该程序还要调用两个自定义函数:一个名为jolly(),用于打印前3条消息, 调用一次打印一条;另一个函数名为deny(),打印最后一条消息。?
#include <stdio.h>
void Jolly(void); /*函数声明*/
void deny(void); /*函数声明*/
int main(void)
{
jolly(); /*函数调用*/
jolly(); /*函数调用*/
jolly(); /*函数调用*/
deny(); /*函数调用*/
return 0;
}
void Jolly(void) /*函数定义*/
{
printf("For he is a jolly good fellow!\n");
}
void deny(void) /*函数定义*/
{
printf("Which no body can deny!\n");
}
注:本题练习简单函数的声明、调用、定义。
5.编写一个程序,生成以下输出:
Brazil,Russia,India,China
India,China,
Brazil,Russia
除了main()以外,该程序还要调用两个自定义函数:一个名为br(),调用一次打印一次“Brazil,Russia”;另一个名为ic(),调用一次打印一次“ India, China”。其他内容在main()函数中完成。
#include <stdio.h>
void br(void); /*声明*/
void ic(void); /*声明*/
int main(void)
{
printf("Brizil,Russia,India,China\n");
ic(); /*函数调用*/
br(); /*函数调用*/
return 0;
}
void ic(void) /*函数定义*/
{
printf("India,China\n");
}
void br(void) /*函数定义*/
{
printf("Brazil,Russia\n");
}
注:本题练习简单函数的声明、调用、定义。
6.编写一个程序,创建一个整型变量toes,并将toes设置为10。程序中还要计算toes的两倍和toes的平方。该程序应打印3个值,并分别描述以示区分。
#include <stdio.h>
int main(void)
{
int tones=10;
printf("Tones:%d\n",tones);
printf("Tones*2:%d\n",tones*2);
printf("Tones*Tones:%d\n",tones*tones);
return 0;
}
注:本题练习printf()函数%d转换说明的用法,可以转换相应的值或表达式。
7.许多研究表明,微笑益处多多。编写一个程序,生成以下格式的输出:
Smile! Smile! Smile!
Smile! Smile!
Smile!
该程序要定义一个函数,该函数被调用一次打印一次“ Smile!”,根据程序的需要使用该函数。
#include <stdio.h>
void smail(void);
int main(void)
{
smail();
smail();
smail();
printf("\n");
smail();
smail();
printf("\n");
smail();
printf("\n");
return 0;
}
注:本题练习函数声明、调用、定义的同时,展现了美观的格式输出。
8.在C语言中,函数可以调用另一个函数。编写一个程序,调用一个名为one_three()的函数。该函数在一行打印单词“one”,再调用第2个函数 two(),然后在另一行打印单词“three”。two()函数在一行显示单词“two”。main()函数在调用one_three()函数前要打印短语“starting now:”,并在调用完毕后显示短语“ done!”。因此,该程序的输出应如下所示:
starting now:
one
two
three
done!
#include <stdio.h>
void one_three(void);
void two(void);
int main(void)
{
printf("Starting now:\n");
one_three();
printf("done!\n");
return 0;
}
void one_three(void)
{
printf("one\n");
two();
printf("three\n");
}
void two(void)
{
printf("two\n");
}
注:本题演示了函数的嵌套调用。
前言
今天偶然看到一句话,觉得非常有道理:“教会别人也是一个重新学习的过程。”,遂作此篇。
总结
第二章的练习题现在看来似乎是很简单的题目,然而笔者在看自己以前的答案时却发现了一些错误,这证明自己以前学的还是不够扎实。
|