自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_8题

/*使用编程练习2中的拷贝函数,把一个内含7个元素的数组中第3~第5个元素拷贝至内含3个元素的数组中。该函数本身不需要修改,只需要选择合适的实际参数(实际参数不需要是数组名和数组大小,只需要是数组元素的地址和待处理元素的个数)。*/#include<stdio.h>void copy_arr(int * target1, int * source, int n);int main(void){ int a[7] = { 1,2,3,4,5,6,7 }; int b[3] = {

2020-06-30 08:42:52 134

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_7题

/*编写一个程序,初始化一个double类型的二维数组,使用编程练习2中的一个拷贝函数把该数组中的数据拷贝至另一个二维数组中(因为二维数组是数组的数组,所以可以使用处理一维数组的拷贝函数来处理数组中的每个子数组)。*/#include<stdio.h>void copy_arr(double* target1, double* source, int n);int main(void){ double a[3][3] = { {1.1,2.2,3.3}, {

2020-06-29 17:32:01 242

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_6题

/*编写一个函数,把double类型数组中的数据倒序排列,并在一个简单的程序中测试该函数。*/#include<stdio.h>void invert_arr(double arr[]);void output_arr(double arr[], int n);#define SIZE 5int main(void){ double a[SIZE] = { 3.1,2.1,4.1,5.1,1.1 }; invert_arr(a, SIZE); output_arr(a, SI

2020-06-29 11:38:33 203

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_5题

/*编写一个函数,返回存储在double类型数组中最大值和最小值的差值,并在一个简单的程序中测试该函数。*/#include<stdio.h>double max_min(const double arr[], int n);int main(void){ double x; double a[5] = { 2.33,1.53,5.73,4.63,3.78 }; x = max_min(a, 5); printf("%lf", x); return 0;}double

2020-06-29 09:33:17 236

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_4题

/*编写一个函数,返回存储在double类型数组中最大值的下标,并在一个简单的程序中测试该函数。*///有BUG问题在哪没找出来#include<stdio.h>double max_ar(const double * p, int n);int count(const double arr[], int n,double max);int main(void){ double arr[5] = {3.1, 2.1,6.1,4.1,5.1}; printf("%lf\n",

2020-06-29 08:51:10 190

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_3题

/*编写一个函数,返回存储在int类型数组中的最大值,并在一个简单的程序中测试该函数。*/#include<stdio.h>int max_ar(const int* p, int n);int main(void){ int arr[5] = { 3,6,2,1,4 }; printf("%d", max_ar(arr, 5)); return 0;}int max_ar(const int* p, int n){ int x = *p; int i; for

2020-06-29 08:16:19 228

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_2题

/*编写一个程序,初始化一个double类型的数组,然后把该数组的内容拷贝至3个其他数组中(在main()中声明这4个数组)。使用带数组表示法的函数进行第1份拷贝。使用带指针表示法和指针递增的函数进行第2份拷贝。把目标数组名、源数组名和待拷贝的元素个数作为前两个函数的参数。第3个函数以目标数组名、源数组名和指向源数组最后一个元素后面的元素的指针。也就是说,给定以下声明,则函数调用如下所示:double source[5] = {1.1, 2.2, 3.3, 4.4, 5.5};double tar

2020-06-26 16:30:22 238

原创 C PRIMER PLUS(第六版编程练习)10.13编程练习_1题

/*修改程序清单10.7的rain.c程序,用指针进行计算(仍然要声明并初始化数组)。*/#include<stdio.h>#define MONTHS 12#define YEARS 5int main(void){ const float rain[YEARS][MONTHS] = { {4.3,4.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,2.4,3.5,6.6}, {8.5,8.2,1.2,1.6,2.4,0.0,5.2,0.9,0.3,0.9

2020-06-26 15:12:53 138

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_11题

/*编写并测试Fibonacci()函数,该函数用循环代替递归计算斐波那契数。1,1,2,3,5,8,13*/#include<stdio.h>void Fibonacci(int n);int main(void){ int m; printf("请输入前m项:"); scanf("%d", &m); Fibonacci(m); return 0;}void Fibonacci(int n){ int m1; int m2; int m3; int

2020-06-15 08:41:56 167

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_10题

/*为了让程序清单9.8中的to_binary()函数更通用,编写一个to_base_n()函数接受两个参数,且第二个参数在2~10范围内,然后以第2个参数中指定的进制打印第1个参数的数值。例如,to_base_n(129,8)显示的结果为201,也就是129的八进制数。在一个完整的程序中测试该函数。*/#include<stdio.h>void to_binary(unsigned long n);int main(void){ unsigned long number;

2020-06-12 16:41:02 209

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_9题

/*使用递归函数重写编程练习8。#include<stdio.h>double power(double n, int p);int main(void){ double x, xpow; int exp; printf("Enter an number and the positive integer power"); printf("to which \nthe number will be raised .Enter q"); printf("to quit.\n");

2020-06-12 15:50:04 197

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_8题

/*第6章的程序清单6.20中,power()函数返回一个double类型数的正整数次幂。改进该函数,使其能正确计算负幂。另外,函数要处理0的任何次幂次幂都为0,任何数的0次幂都为1(函数应报告0的0次幂未定义,因此把该值处理为1)。要使用一个循环,并在程序中测试该函数。#include<stdio.h>double power(double n, int p);int main(void){ double x, xpow; int exp; printf("Enter an

2020-06-12 14:37:46 280

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_7题

/*编写一个函数,从标准输入中读取字符,直到遇到文件结尾。程序要报告每个字符是否是字母。如果是,还要报告该字母在字母表中的数值位置。例如,c和C在字母表中的位置都是3。合并一个函数,以一个字符作为参数,如果该字符是一个字母则返回一个数值位置,否则返回-1。*/#include<stdio.h>#include<ctype.h>int location(char c);int main(void){ char ch; printf("请输入:\n"); while

2020-06-12 11:36:37 559

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_6题

/*编写并测试一个函数,该函数以3个double变量的地址作为参数,把最小值放入第1个变量,中间值放入第2个变量,最大值放入第3个变量。*/#include<stdio.h>void test(double *pa, double *pb, double *pc);int main(void){ double a, b, c; printf("请输入3个数字:"); scanf("%lf %lf %lf", &a, &b, &c); test(&amp

2020-06-12 10:08:28 534

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_5题

/*编写并测试一个函数larger_of(),该函数把两个double类型变量的值替换为较大的值。例如,larger_of(x,y)会把x和y中较大的值重新赋给两个变量。*/#include<stdio.h>double larger_of(double m, double n);int main(void){ double x, y; printf("请输入2个数字:"); scanf("%lf %lf", &x, &y); x = y = larger_o

2020-06-12 09:23:00 199

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_4题

/*两数的调和平均数这样计算:先得到两数的倒数,然后计算两个倒数的平均值,最后取计算结果的倒数。编写一个函数,接受两个double类型的参数,返回这两个参数的调和平均数。*/#include<stdio.h>double har_mean(double m, double n);int main(void){ double x, y; printf("请输入2个数:"); scanf("%lf %lf", &x, &y); printf("%lf与%lf的调和

2020-06-11 16:50:16 498

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_2题

/*设计一个函数chline(ch,i,j),打印指定的字符j行i列。在一个简单的驱动程序中测试该函数。*/#include<stdio.h>void chline(char ch, int i, int j);int main(void){ char ch; int i; int j; printf("请输入打印字符:"); scanf("%c", &ch); printf("请输入需要打印的行数:"); scanf("%d", &i); printf

2020-06-11 16:33:25 340

原创 C PRIMER PLUS(第六版编程练习)9.11编程练习_1题

/*设计一个函数min(x,y),返回两个double类型值的较小值。在一个简单的驱动程序中测试该函数。*/#include<stdio.h>double min(double x, double y);int main(void){ double x, y; printf("请输入2个数:"); scanf("%lf %lf", &x, &y); printf("%lf", min(x, y)); return 0;}double min(double

2020-06-11 16:16:23 370

原创 C PRIMER PLUS(第六版编程练习)8.11编程练习_6题

/*修改程序清单8.8中的get_first()函数,让该函数返回读取的第1个非空白字符,并在一个简单的程序中测试。char get_first(void){ int ch; ch = getchar(); while(getchar() != '\n') continue; return ch;}*/#include<stdio.h>char get_first(void);int main(void){ printf("%c", get_first());}

2020-06-07 15:48:05 316

原创 C PRIMER PLUS(第六版编程练习)8.11编程练习_5题

/*修改程序清单8.4的猜数字程序,使用更智能的猜测策略。例如,程序最初猜50,询问用户是猜大了、猜小了还是猜对了。如果猜小了,那么下一次猜测的值应是50和100中值,也就是75。如果这次猜大了,那么下一次猜测的值应是50和75的中值,等等。使用二分查找(binarysearch)策略,如果用户没有欺骗程序,那么程序很快就会猜到正确的答案。#include<stdio.h>int main(void){ int guess = 1; printf("Pick an integer

2020-06-07 10:28:34 229

原创 C PRIMER PLUS(第六版编程练习)8.11编程练习_4题

/*编写一个程序,在遇到EOF之前,把输入作为字符流读取。该程序要报告平均每个单词的字母数。不要把空白统计为单词的字母。实际上,标点符号也不应该统计,但是现在暂时不同考虑这么多(如果你比较在意这点,考虑使用ctype.h系列中的ispunct()函数)。*///要求标准输入#include<stdio.h>#include<ctype.h>int main(void){ char ch; int count1 = 0; int count2 = 0; wh

2020-06-07 09:15:38 368 1

原创 C PRIMER PLUS(第六版编程练习)8.11编程练习_3题

/*编写一个程序,在遇到EOF之前,把输入作为字符流读取。该程序要报告输入中的大写字母和小写字母的个数。假设大小写字母数值是连续的。或者使用ctype.h库中合适的分类函数更方便。*/#include<stdio.h>#include<ctype.h>int main(void){ char ch; int count_up = 0; int count_lo = 0; while ((ch = getchar()) != EOF) { if (isupper

2020-06-04 15:49:41 276

原创 C PRIMER PLUS(第六版编程练习)8.11编程练习_2题

/*编写一个程序,在遇到EOF之前,把输入作为字符流读取。程序要打印每个输入的字符及其相应的ASCII十进制值。注意,在ASCII序列中,空格字符前面的字符都是非打印字符,要特殊处理这些字符。如果非打印字符是换行符或制表符,则分别打印\n或\t。否则,使用控制字符表示法。例如,ASCII的1是Ctrl+A,可显示为^A。注意,A的ASCII值是Ctrl+A的值加上64。其他非打印字符也有类似的关系。除每次遇到换行符打印新的一行之外,每行打印10对值。(注意:不同的操作系统其控制字符可能不同。)*/

2020-06-04 15:37:26 208

原创 C PRIMER PLUS(第六版编程练习)8.11编程练习_1题

/*编写一个程序,统计在读到文件结尾之前读取的字符数。*/#include<stdio.h>int main(void){ int count = 0; char ch; while ((ch = getchar()) != EOF) { count++; } printf("%d", count); return 0;}//纳闷了好久,不知道Windows10系统怎么在VS2019上面实现输入重定向来输入EOF,翻课本前面才知道Ctrl+Z等于EOF,小伙伴们读书要

2020-06-04 14:28:50 152

原创 C PRIMER PLUS(第六版编程练习)7.12编程练习_11题

/*ABC邮购杂货店出售的洋蓟售价为2.05美元/磅,甜菜售价为1.15美元/磅胡萝卜售价为1.09/磅。在添加运费之前,100美元的订单有5%的打折优惠。少于或者等于5磅的订单收取6.5美元的运费和包装费,5磅-20磅的订单收取14美元的运费和包装费,超过20磅的订单在14美元的基础上每续重1磅增加0.5美元。编写一个程序,在循环中使用switch语句实现用户输入不同的字母时有不同的响应,即输入a的响应是让用户输入洋蓟的磅数,b是甜菜的磅数,c是胡萝卜的磅数,q是退出订购。程序要记录累计的重量,即如

2020-06-01 15:40:03 462

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除