




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、c+习题集10月22日(1)求二次方程的根(考虑各种情况)(2)输入一字符,判定该字符时英文字母,还是数字字符,还是其它字符。10月29日(3)输出1001000之间能被3整除或个位100是3的整数,每行输出10个。(4)求前n项和不超过5000的最大整数n。(5)对于任一整数n,输出其所有的因子。 (重复的不计,如12: 1,2,3,4,6,12)(6)求出1000内的完数。(完数是指因子之和与本身相等的数,如 6=1+2+3)(7)求出所有的水仙花数。(水仙花数是个三位数,每个数与该数每位的立方和相等:如:153=13+53+33)11月1日(8)求出pi的值。pi = 4*(1 -1/3
2、 + 1/5 -1/7 + 1/9-.),当某项的绝对值小于0.000001时停止。(9)输入10个同学的成绩(0 到100之间),输出最高分和最低分。(10)输入一个正整数,求出其反序数。(如2789, 输出9872)。(11)对于任一整数n,输出其所有的因子。 (重复的计,如12: 2,2,3)11月5日(12)求出10010000内的素数。(13)输入x,求出sinx的值(精度自定)。(sinx = x x3/3!+x5/5!-x7/7!+)(14)求任意两个正整数的最大公约数。(15)打印如下的图形。 1 2 3 4 5 6 1 2 3 4 5 1 2 3 4 1 2 3 1 2 11
3、1月15日(16)求f(x) = x2+5x-6在【3,5】区间上的积分值。(17)分别用牛顿法和二分法求方程2x3-4x2+3x-6=0在x=1.5附近的实数根,精度=10-5(18)求满足下列条件的最小自然数n:(1)n的个位数是8,;(2)将n的个位移至n的最前面,所得的新数是n的4倍。11月19日(19)输入10个数,将其中小于平均值的数输出来。(20)输入10个数,将其中的最大数调到最后位置,输出重排后的结果。(21)已知a0=1,a1=2,an=an-1+an-2(n>=2),求an的前20项。(22)用数组实现两个13位数的加法。11月24日(23)输入10个数,用冒泡法进
4、行排序。(24)输入10个数,用选择法进行排序。(25)输入10个数(有序),用二分法进行查找。(26)将两个有序数组合并为一个有序数组。如1 ,5 ,9,11,15,2,3,12,13,17合并为1,2,3,5,9,11,12,13,15,1711月26日(27)输入一字符串,统计其中每种英文字母(26个,大小写按一种计数)出现的次数。(28)将一正整数转化为字符串。(29)删除字符串中指定的字符。(30)输入某人的身份证号码,输出其年龄。11月29日(31)自定义每一个英文字母的对应规则,对字符串加密。(32)输入行数,打印如下的杨辉三角。11 11 2 11 3 3 11 4 6 4 1
5、1 5 10 10 5 1。(33)找出一个矩阵中的所有鞍点。(所谓鞍点,是指该元素在所在的行上是最大值,在所在的列上是最小值)12月3日(34)编写一函数,判断整数是否只由奇数数字构成。(35)编写一函数,用海伦法计算三角形面积。s=sqrt(p(p-a)(p-b)(p-c),其中p=0.5(a+b+c)(36)编写一函数,返回整数某一指定位的数值。(int digitr(12345,2),返回4。)(37)编写一函数,判断某整数是否是回文数。并用该函数找出1000内的回文数。12月6日(38)编写一函数,统计字符串中指定字符的出现次数。(39)编写一函数,返回一整型数组中最小元素的下标,如
6、果有多个最小元素,返回最小的下标。(40)编写一函数,将一整型数组中的元素诸循环右移j位。(41)编写一函数,判断矩阵是否是对称矩阵。12月13日(42)先阅读下面的程序,写出结果。然后运行该程序,检查你的结果。#include <iostream>using namespace std;int main()int i = 111;char ch = '1'cout<< ch<<" "<<i<<endl;int i=222;char ch='2'cout<< ch<
7、<" "<<i<<endl;if(i>0)double i=300.3;int ch = 333;cout<<i<<" "<<ch<<endl;cout<<i<<" "<<ch<<endl;cout<<i<<" "<<ch<<endl;(43)先阅读下面的程序,写出结果。然后运行该程序,检查你的结果。#include <iostre
8、am>using namespace std;int i=5;void func(void);int main()static int a;int b=-22;int c=0;cout<<a<<" "<<b<<" "<<c<<endl;c=c+10;func();cout<<a<<" "<<b<<" "<<c<<endl;i=i+12;func();void func
9、()static int a=3;static int b;int c=10;a=a+2;i=i+21;c=c+6;cout<<a<<" "<<b<<" "<<c<<endl;b=a;(44)先阅读下面的程序,写出结果。然后运行该程序,检查你的结果。#include <iostream>using namespace std;int i=11,j=22;long f1(int n)static long res = 1;cout<<i+<<&quo
10、t; "<<j+<<endl;res=res*n;return res;long f2(int n)static long res = 1;cout<<i+<<" "<<j+<<endl;res=res*n;return res;int main()int i=2,j=5;cout<<f1(i)<<endl;cout<<f2(j)<<endl;cout<<i<<" "<<j<<&
11、quot; "<<endl;i+;cout<<f1(i)<<endl;i+;cout<<f1(i)<<endl;cout<<i<<" "<<j<<" "<<endl;(45)用递归的方法将一数字字符串转化为一整形值。12月15日(46)编写一递归函数,int gcd(int m ,int n),返回m, n的最大公约数。(47)编写一递归函数,返回一整形数组中的的最大数。(48)编写一递归函数,返回一整形数中各位数之和(如23
12、4 , 返回2+3+4=9)。(49)编写一递归函数,统计字符串中指定字符的出现次数。12月17日(50)定义用三种方法求三角形面积的重载函数(已知三顶点坐标;已知底和高;已知两边和它们的夹角。)(51)用指针和引用两种方法来实现两个变量数据的交换void swap(int &,int &); void swap(int *,int *)(52)验证三角形三边的中垂线交与一点,且交点是三角形外接圆的圆心。12月20日(53)定义一字符数组,分别用数组首地址和指针的方法实现查找字符串中是否存在所指定的字符。(54)定义int a34,使用地址的方法,找出数组中每行最大值,并输出数
13、组的值。(55)用指针的方法,实现二字符串的连接。(56)用指针的方法,实现数组的选择法排序。12月24日(57)使用指针完成下列任务,读入10个数据,输出其中不同的数。(即只输出其中不同的数)。(58)将下列同学的姓名升序排序。(“zhangyi”,“wangfei”,“liushan”,“zhaoxiang”)。(59)用动态分配内存的方法,实现任意大小矩阵的转置。12月27日(60)一旦创建一个数组,其大小就固定了。当我们向数组中输入更多的数据时,由于数组已满,我们必须创建一个更大的新的数组来代替当前的数组。编写一个函数,函数头如下:int * doublesize(int *list
14、,int size);函数返回一个新数组,大小是list的两倍。(61)编写一个函数,检查字符串s1是否是字符串s2的子字符串,若是,返回第一次匹配的下标,否则返回-1。(62)编写一个函数,判断两个单词是否为字母易位次。如“silent”和“listen”就是易位词。c+习题集参考答案(3)#include <iostream>using namespace std; int main()int i,count=0;for(i=100;i<=1000;i+)if(i%3=0 |i%10=3)cout<<i<<" "if(count
15、%10=9)cout<<endl;count+;return 0;(4)#include <iostream>using namespace std; int main()int i=1,sum=0;while(sum<=5000)sum += i;i+;cout<<i-2<<endl;return 0;(5)#include <iostream>using namespace std;int main()int i,n;cin>>n;for(i=1;i<=n;i+)if(n%i=0)cout<<i
16、<<endl;return 0;(6)#include <iostream>using namespace std;int main()int i,j,sum;for(i=1;i<=1000;i+)for(j=1,sum=0;j<i;j+)if(i%j=0)sum=sum+j;if(sum=i)cout<<i<<endl;return 0;(7)#include <iostream>using namespace std;int main()int i,bit0,bit1,bit2;for(i=100;i<=999;
17、i+)bit0 = i%10;bit1 = i/10%10;bit2 = i/100;if(bit0*bit0*bit0+bit1*bit1*bit1+bit2*bit2*bit2 = i)cout<<i<<endl;return 0;(8)#include <iostream>using namespace std;int main()double pi=0,t;int n=1,s=1;while(t=1.0/n)> 0.000001)pi += s*t;n = n+2;s = -s;cout<<4*pi<<endl;retu
18、rn 0;(9)#include <iostream>using namespace std;int main()double x,max=-1,min=101;int i;for(i=1;i<=10;i+)cin>>x;if(x>max) max=x;if(x<min) min=x;cout<<"max="<<max<<" min="<<min<<endl;return 0;(10)#include <iostream>using name
19、space std;int main()int number,reverse_number=0; cin>>number;while(number>0)reverse_number = reverse_number*10 + number%10;number /= 10;cout<<reverse_number<<endl;return 0;(11)#include <iostream>using namespace std;int main()int number,i; cin>>number;for(i=2; i<=n
20、umber;i+)if(number%i = 0)cout<<i<<endl;number /= i;i = 1;return 0;(22)#include<iostream>using namespace std;int main()int a14=0,1,0,2,2,3,4,5,6,7,1,2,3,4;int b14=0,2,9,9,1,3,4,5,6,7,1,2,3,6;bool flag=false;int c14=0;for(int i=13;i>=0;i-)ci = ai + bi;if(flag = true)ci+;if(ci >
21、= 10)ci -= 10;flag = true;elseflag = false;if(a0!=0)cout<<c0;for(i=1;i<14;i+)cout<<ci;cout<<endl;return 0;(45)#include <iostream>#include <cstring>using namespace std;int str2num(char str)int len =strlen(str);if(len=1)return str0-'0'elseint digit = strlen-1-&
22、#39;0'strlen-1='0'return str2num(str)*10 + digit;int main()char str80;cin>>str;cout<<str2num(str)<<endl;return 0;(46)#include <iostream>#include <cstring>using namespace std;int gcd(int m,int n)if(m%n = 0)return n;elsereturn gcd(n,m%n);int main()int m,n;cin&
23、gt;>m>>n;cout<<gcd(m,n)<<endl;return 0;(47)#include <iostream>using namespace std;int find_max(int a,int n,int max)if(n=0)return max;elseif(max>an-1)max=find_max(a,n-1,max);elsemax=find_max(a,n-1,an-1);int main()int a6=23,6,14,79,10,1;cout<<find_max(a,5,a4)<<
24、;endl;return 0;(48)#include <iostream>#include <cstring>using namespace std;int sumdigit(int number)if(number/10 = 0)return number;elsereturn sumdigit( number/10 ) + number%10;int main()int m;cin>>m;cout<<sumdigit(m)<<endl;return 0;(49)#include <iostream>#include
25、<cstring>using namespace std;int count(char str,char ch,int len)static int counts = 0;if(len= 0 )return counts;elseif(strlen-1 = ch)counts+;count( str,ch,len-1);int main()char str80,ch;int len;cin>>str>>ch;len = strlen(str);cout<<count(str,ch,len)<<endl;return 0;(57)#in
26、clude <iostream>using namespace std;int main()int a10, temp10;int *pa,*p_temp;int temp_count=0;for(pa=a ; pa<a+10; pa+)cin>>*pa;for(pa =a ;pa<a+10; pa+ )bool write = true;for(p_temp =temp ;p_temp<temp+temp_count; p_temp+)if(*pa = *p_temp)write = false;break;if(write)temptemp_cou
27、nt+=*pa;for(p_temp =temp ;p_temp<temp+temp_count; p_temp+)cout<<*p_temp<<" "return 0;(58)#include <iostream>#include <cstring>using namespace std;int main()char *p4="zhangyi","wangfei","liushan","zhaoxiang",*p_temp;int i,j;
28、for(i=3;i>=1;i-)char current_max20;int current_max_index = 0;strcpy(current_max,p0);for(j=1;j<=i;j+ )if(strcmp(pj,current_max)>0)strcpy(current_max,pj);current_max_index = j;if(current_max_index != i)p_temp=pi;pi=pcurrent_max_index;pcurrent_max_index=p_temp;for(i=0;i<4;i+)cout<<pi&
29、lt;<endl;return 0;(60)#include <iostream>using namespace std;int * doublesize(int *list,int size)int * p = new intsize*2;for(int i=0;i<size;i+)*(p+i) = *(list+i);delete list;return p;int main()int size,i;cin>>size;int *list = new int size;for(i = 0; i < size; i+)cin>>*(lis
30、t+i);list = doublesize(list,size);cin>>*(list+size);for(i=0;i<size+1;i+)cout<<listi<<" "<<endl;delete list;return 0;(61)#include <iostream>#include <iostream>using namespace std;int indexof(char *s1, char *s2)char * ptrs2, *ptrs1;int j;for(ptrs2 = s2;
31、 ptrs2 <= s2 + strlen(s2) - strlen(s1); ptrs2+)for( j=0, ptrs1 = s1; *ptrs1 != '0' ; ptrs1+,j+)if(*ptrs1 != *(ptrs2+j) break;if(*ptrs1 = '0') return ptrs2 - s2;return -1;int main()char str180,str280;cin>>str1;cin>>str2;cout<< indexof(str1, str2)<<endl;return 0;/使用地址操纵二维数组#include <iostream>using namespace std;int main()int a34=1,2,3,4,5,6,7,8,9,10,11,12;int i,j;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年羊羊大战幼儿园大班标准教案
- 高中数学 第一章 相似三角形的判定及有关性 1.1 平行线等分线段定理教学实录设计 新人教A版选修4-1
- 2025年朔州货运上岗证考试题
- 2025年上海货运从业资格证试题库和答案解析
- 第3课+古代西亚、非洲文化高二下学期历史统编版(2019)选择性必修3
- “成于大气 信达天下”-成信校史课程知到课后答案智慧树章节测试答案2025年春成都信息工程大学
- 导言课 教学设计 2024-2025学年统编版七年级历史上册
- Unit5 Section A(1a-2c)教学设计 2024-2025学年人教版英语八年级上册
- 广东省阳江市高新区2024-2025学年高一上学期1月期末物理试题(解析版)
- 广东省江门市2023-2024学年高一上学期1月期末物理试题(一)(解析版)
- 夹胶玻璃作业指导书
- NLP高效能沟通影响力集团李炫华
- 预应力锚索安全专项施工方案
- 站长办公会议事规则
- 在泰居留90天移民局报到表格(TM47)
- 铜陵职业技术学院“十三五”发展规划编制工作方案
- EDTA络合滴定法测定银合金中的银
- 某屠宰场废水处理工艺设计_毕业设计(论文)
- 江苏省无锡市2020年中考语文真题试题(含解析)
- 癌症患者生命质量量表FACT-G v4
- 李清照词修辞现象探析毕业论文
评论
0/150
提交评论