编程常见问题
一只努力的小小白
这个作者很懒,什么都没留下…
展开
-
进制转化
1.将P进制数x转化为十进制数yint y=0,product=1; while(x!=0) { y=y+(x%10)*product; product=product*P; x=x/10; }2.将十制数y转化为Q进制数zint z[40],num=0;do{ z[num++]=y%Q; y...原创 2019-03-22 23:45:45 · 122 阅读 · 0 评论 -
关于函数输入输出(二)
1.scanf:常用于在输入中没有空格以及换行符的符号,遇到了会当作下一个输入项进行处理,对于这一类,往往采用gets输入更加方便,对于两个scanf的输入,而且输入的为字符或者字符串,中间必须加入一个getchar()来吸收换行符或者是空格这样的字符。对于输入为整型等其他类似无所谓。2.gets()函数会在输入结束后,自动在末尾添加'\0'3.puts()函数输出当前字符串到'\0'结束...原创 2019-03-30 15:16:41 · 208 阅读 · 0 评论 -
实现N个数的全排列
下面这个代码是在学习了算法笔记之后,觉得非常简便,于是收藏一下。具体代码如下:(这里是实现4个数的全排列,且从1开始排)#include <cstdio>#include <cstring>#include <iostream>using namespace std;const int maxn = 11;int n, P[maxn], h...原创 2019-03-30 20:00:41 · 2129 阅读 · 0 评论 -
排序算法
1.简单选择排序基本思想:对于n个元素,从1到n 进行枚举,进行n趟操作,每一趟都会从[i,n]中选择最小的元素与A[i]进行交换具体代码如下:void SelectSort()//简单选择排序{ for(int i=1;i<=n;i++) { k=i; for(int j=i;j<=n;j++) {...原创 2019-03-31 20:58:30 · 119 阅读 · 0 评论 -
已知日期,计算星期几
year:年,mon:月,day:日如果月份为1,2月:mon=mon+12year=year-1;其他月份[3-12]可以正常利用公式计算:第一种计算方法,比较简便,易于记忆:w=(day+2*mon+3*(mon+1)/5+year+year/4-year/100+year/400+1)%7;w为余数,w=0:星期日,w=1:星期一,w=2:星期二....w=6:星...原创 2019-03-28 09:53:49 · 1913 阅读 · 0 评论 -
n皇后问题
n皇后问题描述:在n*n的国际象棋棋盘上放置n个皇后,使得这n个皇后两两均不在同一行,同一列,同一条对角线上,求解合法的方案数。求解思路:如果将排列好的n皇后的列号依次写出,那就会是一个1~n的全排列,所以只需要枚举1~n的所有排列,查看每个排列对应的放置方案是否合法,统计合法的方案即可。代码如下(8*8棋盘)【暴力法】:#include <stdio.h>#i...原创 2019-04-07 21:37:34 · 276 阅读 · 0 评论 -
C/C++关于字符串输入问题总结
转载自https://blog.csdn.net/qq_41555192/article/details/825324581、cincin遇到空格或回车键停止,只能输入没有空格的字符串,当输入中含有空格,则只能输出空格之前的字符;#include<iostream>#include<cstring>using namespace std;int mai...转载 2019-03-29 11:12:01 · 398 阅读 · 0 评论 -
PAT中gets函数的替换函数
一般在读入字符串的过程中,通常采用scanf,但是当读入的字符串中有空格时,一般会采取gets()函数,因为gets()函数遇到换行才会停止读入,但是在PAT刷题的过程中,发现PAT不能使用gets()函数,也是出于安全的考虑,在查阅了一些资料之后,可以将gets()替换成fgets()函数,具体代码如下:////////////////////////替换前gets(str[i])//...原创 2019-05-04 11:18:58 · 4455 阅读 · 1 评论 -
生成随机数
rand()函数只能生成[ 0,RAND_MAX ]范围的整数,RAND_MAX是stdlib.h中的一个常数,在不同的系统中值不一样。 如果想生成一个[ a,b ]范围内的随机数,则采用rand()%(b-a+1)+a,但是这种做法仅对左右端点相差不超过RAND_MAX的区间的随机数有效 如果要生成更大的数,则采用(int)(round(1.0*rand()/...原创 2019-04-19 18:42:38 · 433 阅读 · 0 评论