
第八章函数 习题 1、阅读并理解下面的程序,判断程序的输出结果。 /* 源文件名:ch8_101.cpp 功能:实训任务1 / #include int sum(int k); void main() int s,i; for(i=1;i=10;i+) s sum(i); } cout
第八章 函数 习题 1、阅读并理解下面的程序,判断程序的输出结果。 /* 源文件名:ch8_101.cpp 功能:实训任务 1 */ #include int sum(int k); void main() { int s,i; for (i = 1; i

int x,y; void num(); void main( 人 int a=7,b=5; x=a+b; y=a-b; numO; cout<x<"”<Ky<endl } void num( inta=15,b=10: int x,yi x=a-b; y=a+b; return; } 3、编写程序实现功能:从键盘输入四个整数,然后输出其中最小的一个。要求定义并 使用求两数中较小者的函数int min(intx,inty),输入与输出由主函数完成。 4、编写程序实现功能:从键盘输入四个实数,然后输出其中最大的一个。要求定义并 使用求两数中较大者的函数f1 oat max(f1oatx,f1oaty),输入与输出由主函数完成。 5、编写程序实现功能:从键盘输入一个实数,然后输出其绝对值。这一操作反复进行, 直到输入9999为止。要求定义并使用求绝对值的函数f1 oat abs(f1oatx),输入与输出由 主函数完成。 6、编写程序实现功能:从键盘输入一个字符,若是数字,显示“yes”,否则显示“o”。 要求定义函数isdigit(char ch),其功能是检查ch是否数字字符,是则返回1,否则返回 0。主函数完成键盘输入和屏幕输出
int x,y; void num(); void main() { int a=7,b=5; x=a+b; y=a-b; num(); cout << x << " " << y << endl; } void num() { int a=15,b=10; int x,y; x=a-b; y=a+b; return; } 3、编写程序实现功能:从键盘输入四个整数,然后输出其中最小的一个。要求定义并 使用求两数中较小者的函数 int min(int x, int y),输入与输出由主函数完成。 4、编写程序实现功能:从键盘输入四个实数,然后输出其中最大的一个。要求定义并 使用求两数中较大者的函数 float max(float x, float y),输入与输出由主函数完成。 5、编写程序实现功能:从键盘输入一个实数,然后输出其绝对值。这一操作反复进行, 直到输入 9999 为止。要求定义并使用求绝对值的函数 float abs(float x),输入与输出由 主函数完成。 6、编写程序实现功能:从键盘输入一个字符,若是数字,显示“yes”,否则显示“no”。 要求定义函数 isdigit(char ch),其功能是检查 ch 是否数字字符,是则返回 1,否则返回 0。主函数完成键盘输入和屏幕输出

7、编写程序实现功能:从键盘输入行数和一个字符,然后显示由此字符组成的三角形 (图8-9是行数为3,字符为“&”时的显示情况)。要求定义并使用显示三角形的函数void draw_tr(intn,char ch),主函数完成键盘输入。 & &&& &&&&& 图8-9 8、编写程序实现功能:从键盘输入10个字符,然后输出它们中的最大者。要求定义并 使用求数组中最大字符的函数char max_.c(char b[]),输入与输出由主函数完成。 9、编写程序实现功能:从键盘输入10个整数,然后统计并输出其中负数之和。要求定 义并使用计算数组中负数之和的函数int sum n(intb[]),输入与输出由主函数完成。 10、编写程序实现功能:先从键盘指定个数,再按此个数输入整数,然后输出它们中的 最大值。要求定义并使用求数组前n个元素中最大值的函数int max n(intb[],intn), 输入与输出由主函数完成。 11、编写程序实现功能:先从键盘指定个数,再按此个数输入字符,然后输出它们中的 最小者。要求定义并使用求数组前n个元素中最小值的函数char min cn(char b[],intn), 输入与输出由主函数完成。 12、编写程序实现功能:从键盘输入0到6之间的整数,输出对应的“星期日”、“星 期一”、“星期二”…,对超出范围的数,输出“一个星期中有这一天吗?”。要求定义 并使用函数void d2w(intd,char b[]),这个函数按d的值在b中产生对应的字符串。 主函数反复进行输入与输出,直到输入-1为止。 13、编写程序实现功能:先从键盘指定个数和排列方式(0表示升序,1表示降序), 再按指定的个数输入整数,然后按指定的排列方式输出。要求定义并使用按mode方式为数 组前n个元素排序的函数void sort ns(intb[],intn,int mode),输入与输出由主函 数完成。 14、编写程序实现功能:从键盘输入字符串,计算并显示字符串的长度,这一操作反复 进行,直到输入“exit”为止。要求使用库函数strlen,其函数原型是 unsigned int strlen(const char *string); 其功能是返回字符串string的长度。 程序中还会用到库函数strcmp即,我们已经多次用过这个函数,它的函数原型是
7、编写程序实现功能:从键盘输入行数和一个字符,然后显示由此字符组成的三角形 (图 8-9 是行数为 3,字符为“&”时的显示情况)。要求定义并使用显示三角形的函数 void draw_tr(int n, char ch),主函数完成键盘输入。 & &&& &&&&& 图 8-9 8、编写程序实现功能:从键盘输入 10 个字符,然后输出它们中的最大者。要求定义并 使用求数组中最大字符的函数 char max_c(char b[ ]),输入与输出由主函数完成。 9、编写程序实现功能:从键盘输入 10 个整数,然后统计并输出其中负数之和。要求定 义并使用计算数组中负数之和的函数 int sum_n(int b[ ]),输入与输出由主函数完成。 10、编写程序实现功能:先从键盘指定个数,再按此个数输入整数,然后输出它们中的 最大值。要求定义并使用求数组前 n 个元素中最大值的函数 int max_n(int b[ ], int n), 输入与输出由主函数完成。 11、编写程序实现功能:先从键盘指定个数,再按此个数输入字符,然后输出它们中的 最小者。要求定义并使用求数组前 n 个元素中最小值的函数 char min_cn(char b[ ], int n), 输入与输出由主函数完成。 12、编写程序实现功能:从键盘输入 0 到 6 之间的整数,输出对应的“星期日”、“星 期一”、“星期二”……,对超出范围的数,输出“一个星期中有这一天吗?”。要求定义 并使用函数 void d2w(int d, char b[ ]),这个函数按 d 的值在 b 中产生对应的字符串。 主函数反复进行输入与输出,直到输入-1 为止。 13、编写程序实现功能:先从键盘指定个数和排列方式(0 表示升序,1 表示降序), 再按指定的个数输入整数,然后按指定的排列方式输出。要求定义并使用按 mode 方式为数 组前 n 个元素排序的函数 void sort_ns(int b[ ], int n, int mode),输入与输出由主函 数完成。 14、编写程序实现功能:从键盘输入字符串,计算并显示字符串的长度,这一操作反复 进行,直到输入“exit”为止。要求使用库函数 strlen,其函数原型是 unsigned int strlen(const char *string); 其功能是返回字符串 string 的长度。 程序中还会用到库函数 strcmp,我们已经多次用过这个函数,它的函数原型是

int strcmp(const char *stringl,const char *string2); 为了使用这两个函数,需要包含头文件string.h。 习题 P244 既然数组元素都是整型,它们的和就是整型,在上面的程序中,把s的类型从实型改为 整型行不行?为什么?
int strcmp(const char *string1, const char *string2); 为了使用这两个函数,需要包含头文件 string.h。 习题 P244 既然数组元素都是整型,它们的和就是整型,在上面的程序中,把 s 的类型从实型改为 整型行不行?为什么?