1.题略
/*返回较小值,设计驱动程序测试该函数*/
#include <stdio.h>
double min (double a, double b); int main (void)
{
double x, y; printf ("Please enter two numbers: \n");
scanf ("%lf %lf", &x, &y);
printf ("The smaller one is %lf\n", min (x, y));
return ;
} double min (double a, double b)
{
return (a < b) ? a: b;
}
2.题略
/**/
#include <stdio.h>
void chline (char, int, int); int main (void)
{
int i, j;
char ch; printf ("Please enter a char and two int: \n");
scanf ("%c %d %d", &ch, &i, &j);
chline (ch, i, j);
return ;
} void chline (char ch, int i, int j)
{
int count;
for (count = ; count <= j; count++)
{
if (count < i)
putchar (' ');
if (count >= i && count <= j)
putchar (ch);
if (count < || count > j)
break;
}
putchar ('\n');
}
3.题略
/**/
#include <stdio.h>
void p_ch (char, int, int); int main (void)
{
int i, j;
char ch; printf ("Please enter a char you like: \n");
scanf ("%c", &ch);
printf ("How many of them do you want to see in a line: \n");
scanf ("%d", &i);
printf ("How many lines do you want to have: \n");
scanf ("%d", &j);
p_ch (ch, i, j);
printf ("Is it what you want? \n");
return ;
} void p_ch (char ch, int cols, int rows)
{
int i, j;
for (i = ; i <= rows; i++)
{
for (j = ; j <= cols; j++)
putchar (ch);
printf ("\n");
}
}
4.题略
/**/
#include <stdio.h>
double calculate (double, double); int main (void)
{
double a, b;
printf ("input two doubles: ");
scanf ("%lf %lf", &a, &b);
printf ("1 / ((1/x + 1/y) / 2) = %.3f\n", calculate (a, b));
return ;
} double calculate (double x, double y)
{
return / ((/x + /y) / );
}
5.题略
/**/
#include <stdio.h>
void larger_of (double *, double *); int main (void)
{
double a, b;
printf ("Please enter two numbers: ");
scanf ("%lf %lf", &a, &b);
larger_of (&a, &b);
printf ("Now the a is %.2f and b is %.2f", a, b);
return ;
} void larger_of (double * x, double * y)
{
*x = *y = (*x > *y) ? *x : *y;
}
6.题略
/**/
#include <stdio.h>
void Judge(int ch); int main(void)
{
int ch; printf("enter some txt to be analyzed(ctrl+z to end):\n");
while ((ch = getchar()) != EOF)
Judge(ch);
printf("Done\n");
} void Judge(int ch)
{
if (ch>= && ch<=) printf("%c is number %d\n", ch, ch-);
else if (ch>= && ch<=) printf("%c is number %d\n", ch, ch-);
else printf("%c is not a letter\n",ch);
}
7.题略
#include <stdio.h>
double power(double n, int p); int main (void)
{
double Do;
int In; printf("Please enter a double and a int(to calculate pow):\n");
while (scanf("%lf %d",&Do, &In))
{
printf("%lf\'s %d mi is %lf\n", Do, In, power(Do, In));
}
printf("Done!\n");
} double power(double n, int p)
{
int i;
double pow=; if (n==)
return ; if (p==)
return ;
else if (p > )
{
for (i=; i<p; i++)
pow*=n;
return pow;
}
else if (p < )
{
for (i=; i<(-p); i++)
pow*=n;
return /pow;
}
}
8.题略
主函数与7题相同,关键是幂函数(递归形式),代码如下,还是挺考验逻辑的。
double power(double n, int p)
{
double ans; if (p < )
{
ans = power(n,-p);
ans = /ans;
}
else if (p > )
ans = n * power(n,p-);
else if (p == )
ans = ;
return ans;
}
9.题略
/*binary.c 以二进制形式输出整数*/
#include <stdio.h>
void Binary(int x, int y); int main(void)
{
int x, y; printf("Please enter a int (>=0)\n");
while (scanf("%d %d", &x,&y) == )
{
if (y> || y<) continue;
Binary(x,y);
printf("\nPlease enter 2 int(q to quit):\n");
}
printf("Done!\n");
} void Binary(int x, int y)
{
int z;
z = x % y;
if (x/y != )
Binary(x/y, y);
printf("%d",z);
}
10.题略
关键点:利用循环的方式生成斐波那契数列,从下往上计算。即通过f(0) + f(1) 得到f(2), 再由f(1) + f(2)得到f(3)....直到计算出f(n),每次都必须从底层算起,然后三个变量相互赋值,迭代计算。
int Fibonacci( unsigned int n )
{
unsigned int FibN, FibNOne, FibNTwo;
unsigned int i; int result[] = { , };
if( n < )
return result[n-]; FibNOne = ;
FibNTwo = ;
FibN = ;
for( i = ; i <= n; i++ )
{ /*以第一次循环执行过程为例*/
FibN = FibNOne + FibNTwo; /*f(2) = f(0) + f(1)*/
FibNOne = FibNTwo; /*f(1)*/
FibNTwo = FibN; /*f(2)*/
}
return FibN;
}
C Primer Plus_第9章_函数_编程练习的更多相关文章
-
C Primer Plus_第6章_循环_编程练习
1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i ...
-
C Primer Plus_第5章_运算符、表达式和语句_编程练习
Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...
-
C Primer Plus_第四章_字符串和格式化输入输出_编程练习
Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[2 ...
-
Oracle学习总结_day03_day04_条件查询_排序_函数_子查询
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! day03_条件查询_排序_函数 清空回收站: PUR ...
-
C Primer Plus_第10章_数组和指针_编程练习
1. /*rain.c 针对若干年的降水量数据,计算年降水总量.年降水平均量,以及月降水平均量*/ #include <stdio.h> #define MONTHS 12 #define ...
-
C Primer Plus_第8章_字符输入输出和输入确认_编程练习
1.题略 #include <stdio.h> int main(void) { ; printf("Please enter text here(end with Ctrl + ...
-
C Primer Plus_第三章_数据和C_复习题与编程练习
Review long代替int类型变量的原因是什么? 在您的系统中,long可以容纳比int更大的数:如果您确实需要处理更大的值,那么使用一种在所有系统上都保证至少是32位的类型会使程序的可移植性更 ...
-
[C++ Primer Plus] 第8章、函数探幽(二)课后习题
1.编写通常接受一个参数(字符串的地址),并打印该字符串的函数.不过,如果提供了第二个参数(int类型),且该参数不为0,则该函数打印字符串的次数将为该函数被调用的次数(注意,字符串的打印次数不等于第 ...
-
[C++ Primer Plus] 第8章、函数探幽(一)程序清单——内联、引用、格式化输入输出、模板、decltype
程序清单8.1(inline内联函数) #include<iostream> using namespace std; inline double square(double x) {// ...
随机推荐
-
layer.js中layer.tips
<script src="~/Content/js/layer/layer.js"></script> layer.tips('名称不能为空', '#pro ...
-
hdu----(2222)Keywords Search(trie树)
Keywords Search Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
-
POJ 1384 Piggy-Bank 背包DP
所谓的全然背包,就是说物品没有限制数量的. 怎么起个这么intimidating(吓人)的名字? 事实上和一般01背包没多少差别,只是数量能够无穷大,那么就能够利用一个物品累加到总容量结尾就能够了. ...
-
Excel图表-太极图
p{ font-size: 15px; } .alexrootdiv>div{ background: #eeeeee; border: 1px solid #aaa; width: 99%; ...
-
PPS--在download DN出现的问题注意:
1,DN的下载条件:(没有删除没有下载) PPSL=’N’(PPSL有两个值,N时是指这个DN还没有下载) DEL_FLAG<>’Y’(DEL_FLAG有两个值,Y时说明已经删除,不会下载 ...
-
Dynamic CRM 2016 的备份/恢复/重新部署
参考:1.https://community.dynamics.com/crm/b/crmviking/archive/2016/02/03/backup-and-restore-strategies ...
-
Educational Codeforces Round 47 (Div 2) (A~G)
目录 Codeforces 1009 A.Game Shopping B.Minimum Ternary String C.Annoying Present D.Relatively Prime Gr ...
-
html--笔记day03
html--笔记day03 1.结构标记 1.<header>元素 <header></header> ==> <div id="header ...
-
洛谷:P2292 [HNOI2004]L语言(DP+Trie树)
P2292 [HNOI2004]L语言 题目链接:https://www.luogu.org/problemnew/show/P2292 题目描述 标点符号的出现晚于文字的出现,所以以前的语言都是没有 ...
-
May 13th 2017 Week 19th Saturday
Mountains look beautiful from a distance. 远处看山山更美. This gnomic seems to circulate very long, its mor ...