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

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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值