C++问题集(自我积累)

来源:互联网 发布:网络上口口是什么意思 编辑:程序博客网 时间:2024/06/05 07:54

1.如何实现输入是0.0就跳出循环?

答:while(scanf(%lf,&d),d>0)   //不满足输入结束就进入处理循环,否则程序结束

备注:while(scanf(%d%d, &a, &b) && (!(a==0 && b==0)))


2.EOF什么意思?

答:scanf 的返回值是读入变量的个数,如果没有读到数,返回值是-1,也就是EOF2.引用gets的返回值。如果没有输入,其返回值为NULL,也就是0.



3.如何定义圆周率?

答:const double pi=4.0*atan(1.0);  包含预指令#include<cmath>



4.判断一个数是否为整数?

答:if(floor(y+0.5)==y)Floor为取整函数,+0.5防止误差。

 

5.如何输出程序运行花费时间?

答: printf("Time used= %.2lf\n",(double)clock()/CLOCKS_PER_SEC);  #include<ctime> 


6.如何在cmd下面跑程序?

答:进入指定目录后直接输入exe名称就好了,如果想计算机输入,就echo (输入)(程序名)


8.如何定义动态二维数组?

答:nm列:int **p=new int*[n]

              For(int i=0;i<n;i++)

              {

P[i]=new int[m];

              }

9.不知道字符串的长度时怎么实现循环?

答:for(int j=0;p[j];j++)//p[j]结束就跳出循环

 

10.实现字符转换成数字?

答:int xchar p[30];

x=p[i]-’0’;//字符转换成数字

 

 

11.int类型最大有多大?

答:int占32位的时候,最大可以赋值为:2147483647

 

 

12.如何定义define函数?

答:#define max(a,b)  (a>b?a:b)

#define AR_size(a)  sizeof(a)/sizeof(a[0])

 

 

13.标准快排?

答:qsort(p,n,sizeof(p[0]),cmp);

int cmp(const void*a,const void*b)

{

    return *(int*)a-*(int*)b;//升序

}

 

14.怎么传二维数组给函数?

答:void fun(int p[1010][1010]){}

Int main()

{

Int a[1010][1010];

fun (a);

}

 

15.sscanf(s,“%s%s”,dict[n].w,dic[n].d);

答:从字符串s中读入输入到后面两个;

 

16.__int64 最大能表示2^62,10^19左右。Int 最大能表示2^30,10^10

 

17.位操作符实现2n次方;

答:sum=1<<n;


 



0 0
原创粉丝点击