C语言 从键盘输入一个小于1000的正数,要求输入他的平方根(如平方根不是整数,则输入其整数部分)

输入数据后先对其检查是否为小于1000的正数,若不是,则重新输入。
#include <stdio.h>
#include <math.h>
int main()
{
int x,y;
printf("输入一个小于1000的整数x",x);
scanf("%d",&x);
if(x<1000&&x>0)
{y=sqrt(x);
printf("x平方根的整数部分是y",x,y);
}
else
{printf("输入的数据不符合要求,重新输入一个小于1000的整数x",x)
scanf("%d",&x);
y=sqrt(x);
}
return 0
}
哪里错了?在线等,求出错点!谢谢
E:\实验4\实验4-2.c(6) : error C2018: unknown character '0xa3'
E:\实验4\实验4-2.c(6) : error C2018: unknown character '0xbb'
E:\实验4\实验4-2.c(7) : error C2146: syntax error : missing ';' before identifier 'scanf'
E:\实验4\实验4-2.c(9) : warning C4244: '=' : conversion from 'double ' to 'int ', possible loss of data
E:\实验4\实验4-2.c(14) : error C2146: syntax error : missing ';' before identifier 'scanf'
E:\实验4\实验4-2.c(15) : warning C4244: '=' : conversion from 'double ' to 'int ', possible loss of data
E:\实验4\实验4-2.c(18) : error C2143: syntax error : missing ';' before '}'

#include <stdio.h>
#include <math.h>
int main()
{
int x,y;
printf("输入一个小于1000的整数x",x);
scanf("%d",&x);
if(x<1000&&x>0)
{y=(int)sqrt(x);
printf("x平方根的整数部分是%d",x,y);
}
else
{printf("输入的数据不符合要求,重新输入一个小于1000的整数x",x);
scanf("%d",&x);
y=sqrt(x);
}
return 0;
}

你的错误太多了追问

谢谢!
但怎么运行是这样呢?
输入一个小于1000的整数x100
x平方根的整数部分是100Press any key to continue
不应该输出y的值嘛?

追答

printf("x平方根的整数部分是%d",x,y);改成printf("%d平方根的整数部分是%d",x,y);

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-10
printf("输入一个小于1000的整数x",x);x不需要,改成
printf("输入一个小于1000的整数:");

printf("输入的数据不符合要求,重新输入一个小于1000的整数x",x)同理也改

return 0 前加
printf("平方根或平方根的整数部分为%d\n",y);本回答被提问者采纳
第2个回答  2012-03-10
第六行:注意区分中文输入法的分号和英文下的分号
先改过来再看

C语言 从键盘输入一个小于1000的正数,要求输入他的平方根(如平方根不...
include<math.h> \/\/少了这行,因为后面用到的sqrt()函数,是数学函数库中的。int main(){ int m,n;printf("请输入一个小于1000的正数:");scanf("%d\\n",&m);while(m<0 || m>=1000){printf("error!wrong data!");printf("请输入一个小于1000的正数:");scanf("%d\\n",&m);} ...

...要求输入他的平方根,如平方根不是整数,则输入其整数部分。_百度知 ...
include<stdio.h>#include<math.h>int main(){ int x,y; printf("输入一个小于1000的整数\\n"); scanf("%d",&x); while(x>=1000||x<=0) \/*条件是或,不是和,x>1000和x<0不可能同时成立,因此永远不会执行*\/ { printf("输入的数不符合,请再输入一次\\n"); ...

(C语言)从键盘输入一个小于1000的正数,要求输入他的平方根(如平方根不...
输出“重新输入”后没有再次输入的步骤,好像要用的循环

(C语言)从键盘输入一个小于1000的正数,要求输入他的平方根(如平方根不...
printf("输入一个小于1000的整数x",x); 等同于: printf("输入一个小于1000的整数x");而输出: printf("x平方根的整数部分是y",x,y); 实际上没有输入x和y,要改为:printf("%d平方根的整数部分是%d",x,y);看出区别了吗?重新输入后的逻辑也不对头,没有把结果输出耶 ...

...的正数,要求输出它的平方根(如平方根不是整数,则输出其整数部分...
; printf("%d", m); \/\/输出a的方根 } else { printf("数据不符合要求"); \/\/若a不在0<a<1000 则输出数据不符合要求 }}测试:请输入一个小于1000的的正数:-10 -10 数据不符合要求 请输入一个小于1000的的正数:88.88 88.88 输入数的方根整数是:9 ...

...的整数,要求输出它的平方根(如平方根不是整数,则输出其整数部分...
C语言 include<stdio> main(){ int i,j;scanf("%d"&i);if(i>=0&&i<1000)j=sqr(i);printf("\/npingfanggenshi:%d",j);}

C语言编程。题目:从键盘输入一个小于1000的正数,要求输出它的平方根
n;while(1){scanf("%lf",&n);if(n<1||n>=1000){printf("输入不符合要求,请输入小于1000的正数!\\n");continue;}else{printf("%d\\n",(int)sqrt(n));\/\/sqrt(n) 用来求给定值的平方根的函数\/\/(int)sqrt(n)是强制类型转换,转为int直接截取整数部分。break;}} return 0;} ...

C语言:求小于1000的正数的平方根
a,b; printf("请输入数字:"); scanf("%lf",&a); while(a<0 || a>=1000) { printf("请重新输入数字:"); scanf("%lf",&a); } b=sqrt(a); printf("平方根为:%.0f\\n",b); return 0;} ...

用C语言求一个小于1000的数的算术平方根,我的语言错在哪里?谢谢你指出...
include<stdio.h> include <math.h> int main(){ float a,b;scanf("%f",&a);if(0<a&&a<1000){ b=sqrt(a);printf("%f\\n",b);} else { printf("请重新输入!\\n");} return 0;} 你仔细对照一下。 很多细节的东西。

C语言 编写程序,从键盘输入一个正数,计算该数的平方根。
include <stdio.h> include<math.h> int main(){ double x;scanf("%lf",&x);printf("%lf\\n",sqrt(x));return 0;}

相似回答