poj3077的想法

it2022-05-09  15

虽然是水提,但是对于俺这种小菜来说,还是需要去总结一下的,其实这道题开始时,并不是很明白,然后再题目的帮助下,还是看懂了,首先来说这道题有一些值得我学习的地方,首先对于输入的数字的范围,是在0----999999999,这个首先可以说是超出了2^32因此这是需要使用是长整形,或者是int64,而对于数字来说,这个说。64int的定义首先我们的先了解一下包括,输入输出,定义是__64int x; scanf("%I64d",&x); printf("%I64d",x);首先输入的是两个下划线,而输入输出的形式是大I,而不是l,因此,没了

 1 #include <stdio.h>  2 #include < string.h>  3   4  int main()  5 {  6      int n,con,i;  7     __int64 x;  8   9     scanf( " %d ",&n); 10  11      while(n--) 12     { 13         scanf( " %I64d ",&x); 14         con =  0; 15          while(x >  10) 16         { 17              if(x %  10 >  4) 18                 x +=  10; 19             x /=  10; 20             con++; 21         } 22          for(i =  0 ;i < con; i++) 23             x *=  10; 24          printf( " %I64d\n ",x); 25  26  27  28     } 29  30      return  0;

31 } 

转载于:https://www.cnblogs.com/yelcoved/archive/2013/02/26/2933419.html


最新回复(0)