C++编程练习——2014/3/12
来源:互联网 发布:2017淘宝网红店铺排名 编辑:程序博客网 时间:2024/06/05 03:16
对应题目26-30
1.
#include <iostream.h>#include <cmath>int convert(char* strOct){int Dec=0;while(*strOct){Dec=Dec*8+(*strOct)-'0';strOct++;}return Dec;}int main(){cout<<convert("7")<<endl;cout<<convert("10")<<endl;cout<<convert("1234")<<endl;return 0;}
进制转换时候的循环没有弄清,题目做的很悲剧
2.
#include<iostream.h>#include<cmath>#define NUM 50int A[NUM][NUM]={{10,13,59,70,6},{2,40,89,92,9},{14,55,71,11,19},{79,68,83,97,101},{102,10001,23,45}};bool isPrime(int n){if(n==1)return false;if(n==2)return true;for(int i=2;i<n/2;i++){if(n%i==0)return false;}return true;}int sum(int A[NUM][NUM],int n){int s=0;for(int i=0;i<n;i++){for(int j=0;j<n;j++){if(!isPrime(A[i][j]))s+=A[i][j];}}return s;}int main(){cout<<sum(A,5)<<endl;return 0;}
这题基本就考了一个循环条件;比较基础。
3.
这题很简单
#include <iostream.h>#define NUM 8void func(int A[NUM],int n){ int temp;for(int i=0;i<n/2;i++){temp=A[i]; A[i]=A[n-i];A[n-i]=temp;}}int main(){int A[NUM]={1,2,3,4,5,6,7,8};func(A,6);for(int i=0;i<sizeof(A)/sizeof(int);i++){cout<<A[i]<<' ';}cout<<endl;//ddreturn 0;}
下面两个题个人感觉比较经典;因为这是两种很重要的排序方法,冒泡排序法和选择排序法;
我冒泡做的还行,选择就有点悲剧了;看了好久才看懂;下面做一下简单的介绍;
冒泡排序法,就是每次把相邻的两个数交换,较大的数交换到后面。即第一次交换从第一个开始逐个交换到最后一个;第二次只要到最后第二个就行了;这样就可以把最大或者最小的数放到最后,n个数进行n-1次循环就好了;
比较排序法是,反复从要排的数中找出最大或者最小的和第一个数进行交换;
一开始我没弄明白这两种方法,后来研究了很久,简单的说吧,冒泡就是交换数组,而选择是通过比较把符合要求的数的下标比较出来,然后再进行对换;
下面是这两个很简单的程序的实例;
4.
#include <iostream.h>#define N 10void sort(int A[N],int n){int temp,i,j;for(i=0;i<n;i++){for(j=0;j<n-i;j++){if(A[j]>A[j+1]){temp=A[j];A[j]=A[j+1];A[j+1]=temp; }}}}int main(){int A[N]={5,7,4,6,10,13,78,-4,9,20};sort(A,10);for(int i=0;i<sizeof(A)/sizeof(int);i++){cout<<A[i]<<' ';}cout<<endl;return 0;}
5.
#include <iostream.h>#define N 10void sort(int A[N],int n){int temp=0;for(int i=0;i<n-1;i++){int k=i;for(int j=i+1;j<n;j++){if(A[k]>A[j]) k=j;} if(k!=i){temp=A[i];A[i]=A[k];A[k]=temp;}}}int main(){int A[N]={1,2,10,5,7,19,34,78,-3,8};sort(A,10);for(int i=0;i<sizeof(A)/sizeof(int);i++){cout<<A[i]<<' ';}cout<<endl;return 0;}
0 0
- C++编程练习——2014/3/12
- C语言编程入门——程序练习(上)
- C语言编程入门——程序练习(下)
- C语言编程入门——综合练习(一)
- C语言编程入门——综合练习(二)
- C语言复习——结构体编程练习
- GPS数据处理——字符串编程练习(C语言)
- c语言编程练习——2014/7/26——数组
- C语言学习历程——编程练习3——01
- C语言学习历程——编程练习3——02
- C语言学习历程——编程练习3——03
- C语言学习历程——编程练习3——04
- C语言学习历程——编程练习3——05
- Accelerated C++:通过示例进行编程实践——练习解答(第12章)
- Accelerated C++:通过示例进行编程实践——练习解答(第3章)
- 程序设计入门——C语言 翁恺 第3周编程练习
- c primer plus7.12编程练习
- C语言编程(练习3:函数 )
- 【修正二叉树】Recover Binary Search Tree
- 设计模式学习(1)——创建型设计模式
- (31)ExtJS之Panel面板锚定位中的参考边定位
- try-catch-finally语句中有return语句时的执行情况
- HDU 4341 Gold miner (分组背包)
- C++编程练习——2014/3/12
- (32)ExtJS之Panel中Absolute绝对位置布局
- tomcat的三个效率问题
- (33)ExtJS之Panel中的表格布局
- 转:土匪的2013书单推荐
- 电平触发方式注意
- Chef Sereja and Sorting 2
- Python 词法分析 识别数字
- (34)ExtJS之Panel中的标签页,通过items添加标签页示例