c++ 递归方法求x的n次方
- 格式:doc
- 大小:0.31 KB
- 文档页数:1


C 程序设计练习练习一 P12页1. 1.1、1.2、1.3、1.4简答题在课本上完成;2.完成并上机运行验证1.5、1.6练习二 P36页2.4(3)用传统流程图求解。
(4)用N —S 流程图求解。
(7)用盒图求解。
(8)用伪代码求解2.7补充习题 用盒图求解:个位数为7且能被3整除的6位数的个数。
练习三 P66 注意:3.4、3.11在书上表中完成3.3(1)(3)(5)(7)、 3.5 、 3.6 、 3.9 、 3.10、 3.12(1)(3)(5)注意:3.4、3.11在书上表中完成补充习题:先手工分析下列程序的运行结果,再上机验证。
(注意输出格式)(1)#include <stdio.h> void main() { int a=1,b=1; a+=b+=1; printf(”a=%d ,b=%d\n”,a,b); a*=a*=b*10; printf(”a=%d,b=%d \n”,a,b); } 练习四 P88练习4.4 4.6 4.8补充题1. 写出下列程序的运行结果(1) 程序1#include <stdio.h>void main( ){ int a,b,d=241;a=d/100%9;b=d/a;printf(”%d,%d \n”,a,b);} (3)以下程序输入x=1.23,y=50后的执行结果为:#include <stdio.h>void main( ){ float x,y;scanf(”x=%f,y=%f”,&x,&y);printf(”x=%7.2f,y=%7.2f \n”,x,y);}(5)以下程序输入ABC 后的运行结果为:#include <stdio.h>void main(){ char c;scanf(”%3c”,&c);printf(”c=%c \n”,c);} (2)#include <stdio.h>void main(){ int a=1,b=2,c=3;a++;b+=++c;printf(”a=%d,b=%d,c=%d \n”,a,b,c); }(2)程序2 #include <stdio.h> void main( ) { float f=3.1415927; printf(”%5.4f,%3.3f \n”,f,f); }(4)程序4 #include <stdio.h> void main() { short i=-1; printf(”dec:%hd,oct:%ho,hex:%hx, unsigned:%hu\n”,i,i,i,i); }2.编程:从键盘输入四门功课成绩,求总成绩和平均成绩并输出。
计算机管理课程实验试题一1.采用递归求解的方法,用倒序输出字符串系统;用户输入字符串程序运行后,将倒序输出举例如下Sample Input: abcdefSample Output: fedcba#include "stdafx.h"void p() {char c;if((c=getchar()) != '\n') {p();}printf("%c",c);}int main() {printf("请输入一个字符串:");p();printf("\n");return 0;}2.输入一行字符串,按如下规则加密:如果是英文字母则大写变小写、小写变大写对非英文字符保持不变。
试写加密程序。
#include "stdafx.h"int main() {/* 定义一个字符变量ch; */char ch;printf( "input characters:" );/* 当输入的字符不是回车的时候就继续循环; */while( (ch = getchar() ) != '\n' ) {if ( ch >= 'A' && ch <= 'Z' ) {ch = ch - 'A' + 'a';} else if ( ch >= 'a' && ch <= 'z' ) {ch = ch - 'a' + 'A';}/* 输出转换后的字符; */putchar( ch );}}3.设计一个学生的学习系统,例如某学习小组有4位同学,学习五门课程求每个同学的平均分。
举例如下:#include "stdafx.h"struct STU{char name[20];int scores[5];};void OutputSTU(struct STU stu){int total=0;double avg;int *scores = stu.scores;for(int i=0;i<5;i++){total+=scores[i];}avg=total/5.0;printf("%s\t%d\t%d\t%d\t%d\t%d\t%lf\n", ,scores[0],scores[1],scores[2],scores[3],scores[4],avg);}int main (){printf("姓名\t课程1\t课程2\t课程3\t课程4\t课程5\t平均分\n");struct STU students[4] = {{"赵彬",{80,82,91,68,77}},{"张强",{78,83,82,72,80}},{"张帅",{73,58,62,60,75}},{"李莉",{82,87,89,79,81}}};for(int i=0;i<4;i++){struct STU stu = students[i];OutputSTU(stu);}return 0;}计算机管理课程实验试题三1.简单加密系统。
C语⾔求x的y次⽅,⾃定义函数,⾃⼰的算法我是⼀名⾼⼆中学⽣,初中时接触电脑,⾮常酷爱电脑技术,⾃⼰百度学习了有两年多了,编程语⾔也零零散散的学习了⼀点,想在⼤学学习计算机专业,所以现在准备系统的学习C语⾔,并在博客中与⼤家分享我学习中的⼼得与思路。
希望⼤⽜路过可以说是第N次学习C语⾔了,都是学到数组和函数这⾥停⽌了,这次下定了决⼼要学完C语⾔,不光要学完,还要学好下⾯是利⽤⾃定义函数写的⼀个模仿pow()函数⼯作的⼀个⼩程序[求x的y次⽅]1 #include<stdio.h>23int main(void)4 {56double power(double x, double y);7double x, y;8 printf("请输⼊底数后按回车\n");9 scanf("%lf", &x);10 printf("请输⼊指数后按回车\n");11 scanf("%lf", &y);12 printf("%lf的%lf次⽅是%lf", x, y, power(x, y));13return0;1415 }1617double power(double x, double y)18 {19double a, b ,c=x;20for( a = 1; a < y; a++)21 {22 b = x;23 c = c*b;24 }2526return c;27 }上⾯代码的⼤体思路是这样的利⽤scanf()函数接受⽤户输⼊的底数x,指数y。
并赋值给x,y,在printf()函数中调⽤power()[⾃定义函数];power()[⾃定义函数]是这样⼯作的:a变量:储存结束循环的值b变量:⽤来保证底数不变c变量:⽤来保证底数相乘y-1次的结果for()循环:a<y:来保证x⾃乘y次以达到x的y次⽅b=x:⽤来保证底数不变c=c*b:前⾯c已经被赋值为x,第⼀次循环时c被作为底数,底数与底数⾃乘,之后是作为底数被相乘y-1次的结果来与底数相乘如此简单地程序讲解的这么粗糙,我都有些不好意思发了,但还是下定决⼼发了,希望看到的⼤⽜给我指点指点,新⼿看不懂的地⽅也告诉我⼀下,我在改进下讲解⽅法,谢谢。
6-1 找两个数中最大者 (10分)本题要求对两个整数a和b,输出其中较大的数。
函数接口定义:裁判测试程序样例:输入样例:输出样例:6-2 简单实现x的n次方 (10分) 本题要求实现一个计算xn(n≥0)的函数。
函数接口定义:裁判测试程序样例:输入样例:输出样例:6-3 弹球距离 (10分)设有一个球从高度为h米的地方落下,碰到地面后又弹到高度为原来p倍的位置,然后又落下,再弹起,再落下…。
请编写函数求初始高度为h的球下落后到基本停下来(高度小于给定阈值TOL)时在空中所经过的路程总和。
函数接口定义:在内。
裁判测试程序样例:输入样例:输出样例:6-4 使用函数求最大公约数 (10分) 本题要求实现一个计算两个数的最大公约数的简单函数。
函数接口定义:裁判测试程序样例:输入样例:输出样例:6-5 使用函数输出一个整数的逆序数 (10分) 本题要求实现一个求整数的逆序数的简单函数。
函数接口定义:裁判测试程序样例:输入样例:输出样例:n /= 10;}sum *= flag;return sum;}6-6 使用函数求奇数和 (10分)本题要求实现一个函数,计算N个整数中所有奇数的和,同时实现一个判断奇偶性的函数。
函数接口定义:裁判测试程序样例:输入样例:输出样例:6-7 使用函数求特殊a串数列和 (10分)给定两个均不超过9的正整数a和n,要求编写函数求a+aa+aaa++⋯+aa⋯a(n个a)之和。
函数接口定义:裁判测试程序样例:输入样例:输出样例:fn(2, 3) = 222s = 246int fn(int a, int n){int i, j;int ret = a; // 初始化正整数for (i = 1; i < n; i++){int tmp = 1; // tmp出循环自动销毁// 10^ifor (j = 1; j <= i; j++){tmp *= 10; // 初始化10^1}// retret += a * tmp;}return ret;}int SumA(int a, int n){int i;int sum = 0;for (i = 1; i <= n; i++){sum += fn(a, i);}return sum;}6-8 使用函数求素数和 (10分)本题要求实现一个判断素数的简单函数、以及利用该函数计算给定区间内素数和的函数。