|  | 
 
 发表于 2016-7-17 10:04:38
|
显示全部楼层 
| 本帖最后由 小剑剑 于 2016-7-17 10:05 编辑 
 要努力啊
   
 
 复制代码#include<stdio.h>
 void main()
 {
         int a,result=0;//sqrt返回值应该为double型
         int sqrt(int a);
         printf("please input a number:   \n");
         while(1)
         {
                 scanf("%d",&a);
                 result=sqrt(int a);//调用函数错误
                 if(result!=0)
                 {
                         printf("%d 的平方根是 %d\n",result);
                         break;
                 }
                 else
                 {
                         printf("您输入了错误的数值,请重新输入:   \n");
                         getchar();
                 }
         }
 }
 int sqrt(int a)
 {
         int i,z=0;
         for(i=1;i<=a;i++)
         {
                 if(a==i*i)
                 {
                         z=i;
                 }
                 else
                 {
                         continue;
                 }
         }
         return z;
 }
 小改了一下
 
 复制代码#include <stdio.h>
void main()
 {
         int a;
         double result;
         int sqrt(int a);
         printf("please input a number:   \n");
         while(1)
         {
                 scanf("%d",&a);
                 result=sqrt(a);
                 if(result!=0)
                 {
                         printf("%d 的平方根是 %lf\n",a,result);
                         break;
                 }
                 else
                 {
                         printf("您输入了错误的数值,请重新输入:   \n");
                         getchar();
                 }
         }
 }
 int sqrt(int a)
 {
         int i,z=0;
         for(i=1;i<=a;i++)
         {
                 if(a==i*i)
                 {
                         z=i;
                 }
                 else
                 {
                         continue;
                 }
         }
         return z;
 }
 | 
 |