学习电脑 发表于 2016-11-3 14:32:59

怎样使程序运行的更快?

#include <stdio.h>

#define PI 3.14159265358979323

int main(void)
{
        short int r;
        double S;
       
        do
        {
                scanf("%hd", &r);
               
        }while(r<1 || r>1000);
       
       

        printf("%.7f", S = PI*r*r);
       
        return 0;
}


要怎样改进?要求1s内完成

呆鸭 发表于 2016-11-3 15:18:02

以楼主的程序看来,不用任何改进1秒内就可以运行完毕,不过有前提,前提就是操作者输入数字按回车的速度要够快,不清楚楼主程序这么写的用意为何?若单纯看代码及楼主的要求,不用改代码就可以做到了。

穆紫辰 发表于 2016-11-3 16:13:58

我给你说句实话,花1W去换个主机,绝对速度快到你受不了{:10_250:}

xiaoshuai666 发表于 2016-11-3 16:58:45

使用寄存器

xiaoshuai666 发表于 2016-11-3 16:59:27

C语句里定义寄存器变量,然后使用

学习电脑 发表于 2016-11-4 18:24:59

呆鸭 发表于 2016-11-3 15:18
以楼主的程序看来,不用任何改进1秒内就可以运行完毕,不过有前提,前提就是操作者输入数字按回车的速度要 ...

是个试题,它是机器评分的,说我超时

学习电脑 发表于 2016-11-4 18:25:42

xiaoshuai666 发表于 2016-11-3 16:58
使用寄存器

怎么写

xiaoshuai666 发表于 2016-11-5 14:51:35

#include <stdio.h>

#define PI 3.14159265358979323

int main(void)
{

               short int r;
      register double S;
      
      do
      {
                scanf("%hd", &r);
               
      }while(r<1 || r>1000);
      
      

      printf("%.7f", S = PI*r*r);
      
      return 0;
}你这个程序运行时间太短,运行时间不太明显,你可以整一个长的程序试试
页: [1]
查看完整版本: 怎样使程序运行的更快?