输入一个正整数repeat (0<repeat<10),做repeat次下列运算:

输入 x,计算并输出下列分段函数 f(x) 的值(保留2位小数),请调用 sqrt 函数求平方根,调用 pow 函数求幂。
当x >= 0时,f(x) = x^0.5,当x小于0时,f(x) = (x+1)^2 + 2x + 1/x。
输入输出示例:括号内是说明
输入
3 (repeat=3)
10
-0.5
0
输出
f(10.00) = 3.16
f(-0.50) = -2.75
f(0.00) = 0.00

#include <stdio.h>
#include <math.h>
int main(void)
{
int repeat, ri;
double x, y;

scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
/*---------*/
printf("f(%.2f) = %.2f\n", x, y);
}
}

第1个回答  2012-02-21
运行下 看看
#include <stdio.h>
#include <math.h>
int main(void)
{
int repeat;

while(1)
{
scanf("%d", &repeat);
printf("\n");
if (repeat>=0)
printf("%.2f\n", sqrt(repeat));
else
printf("%.2f\n", pow ((repeat+1),2) + 2*repeat + 1/repeat);
}
}追问

貌似不对。。。。。。。
你看看我这个错在哪?
#include
#include
int main(void)
{
int repeat, ri;
double x, y;

scanf("%lf",&x);
scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++);
if(x<0)
{y=pow((x+1),2)+2*x+1\x;
}
else{y=sqrt(2);
}

printf("f(%.2f) = %.2f\n", x, y);
return 0;

}

追答

没看清楚, 我以为 一个一个 算呢,原来 是 3个 一起算的 我改下, 你的 程序 错误太多, 几乎没法改

#include
#include
int main(void)
{
int repeat,i;

float x[10];

while(1)
{
scanf("%d", &repeat);
;
for (i=0;i=0)
printf("f(%.2f)=%.2f\n",x[i], sqrt(x[i]));
else
printf("f(%.2f)=%.2f\n",x[i], pow ((x[i]+1),2) + 2*x[i] + 1/x[i]);

}

}
}

本回答被提问者采纳

...输入一个正整数repeat (0<repeat<10),做repeat次下列运算...
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入一行字符串,生成一个新的字符串,将原字符串中的大写字母用下面列出的对应大写字母替换, 其余字符不变, 输出新字符串.原字母 对应字母 A ──→ Z B ──→ Y C ──→ X D ──→ W ……X ──→ C ...

...正整数repeat(0<repeat<10),做repeat次下列运算:皮球从height(米...
printf("请问球是第几次落地?");scanf("%d",×);printf("第 %d 次落地时走过的路程约为 %g 米。\\n",times,height+height*2*(1-pow(0.5,times-1)));printf("第 %d 次落地后弹起的高度为 %g 米。\\n",times,height*pow(0.5,times) );return 0;} 以前写过 ...

...正整数repeat(0<repeat<10),做repeat次下列运算: 读入一个正整数n...
include <stdio.h>void sign(int x){ if (x > 0){ printf("sign(%d)=1\\n", x);} else if(x < 0){ printf("sign(%d)=-1\\n", x);} else { printf("sign(%d)=0\\n", x);} void main(){ int num = 0, x;int i;scanf("%d", &num);for (i = 0; i < num; ...

...正整数repeat(0<repeat<10),做repeat次下列运算: 读入一个正整数n...
你做p=p*i 结果是p,最后输出了一个n..printf("p=%d\\n",n);→ printf("p=%d\\n",p);

...repeat (0<repeat<10),做 repeat 次下列运算:
1、确定程序结构 程序需要两层循环嵌套,读取repeat后进入第一层循环,第一次循环用于确定读取的字符串数,第二层循环用于读取字符和修正数据。程序框图如下图所示:2、确认程序使用变量及类型 根据程序需求可以确定所需变量及类型(如下图所示),此处应注意通过循环读取字符并同步统计,故仅需要使用一个...

...0<repeat<10),做repeat次下列运算: 输入一个整数n (n>=0)和一...
int main(void){ int repeat, ri;int n;double x, result;scanf("%d", &repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%d%lf", &n, &x);result = p(n, x);printf("p(%d, %.2lf)=%.2lf\\n", n, x, result);} } double p(int n, double x){ if(n==0)...

...0<repeat<10),做repeat次下列运算: 输入参数a,b,c,求一元二次方程...
int repeat, ri;double a, b, c, d;scanf("%d", &repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%lf%lf%lf", &a, &b, &c);d=b*b-4*a*c;if (a==0&&b==0&&c==0) printf("参数都为零,方程无意义!\\n");else if (a==0&&b==0&&(c!=0)) print...

...repeat (0<repeat<10),做 repeat 次下列运算: 输入两个正整数 m...
int main(void){ int factor, m, n, number, sum;int repeat, ri;int i;scanf("%d",&repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%d%d", &m, &n);printf("result:\\n");for(number=m;number<=n;number++){ sum=1;for(i=2;i<number;i++)if(number%i==0) sum...

输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:
第一, num[k+1]=0; 应该改成 num[k]=0;第二,if('0'<=num[k]&&num[k]<='9') number=number+(num[k]-'0')*16;else number =number+(num[k]-'A'+10)*16;应该改成 if('0'<=num[k]&&num[k]<='9')number=number*16 + (num[k]-'0');else number=number*16 + ...

...repeat (0<repeat<10),做 repeat 次下列运算: 输入一个正整数 n...
include <stdio.h> void main(){int a,b,n;scanf("%d",n);for(a=1;a<n;a++){ for(b=1;b<=a;b++);{printf("%d*%d=%d\\t",b,a,b*a);} printf("\\n");} } 不知道这个程序合不合要求,希望对你有帮助吧

相似回答
大家正在搜