C++设计急求解

[复制链接]
查看11 | 回复5 | 2011-3-24 14:47:39 | 显示全部楼层 |阅读模式
#include
main()
{
float x,y;
printf("input data x\n");
scanf("%f",&x);
printf("The equation");
if (x>=1) (y=x);
else if (1=10) (y=3*x-11);
}
c:\diy3-1.c(10) : error C2064: term does not evaluate to a function
Error executing cl.exe.
做完以后发现有这个提示
就是不知道如何把它转化为计算题。。。
急求大侠

回复

使用道具 举报

千问 | 2011-3-24 14:47:39 | 显示全部楼层
第10行 少写一个if(){};你直接写的(x.>=10)当然会有错。#include main(){float x,y;printf("input data x\n");scanf("%f",&x); printf("The equation"); if (x>=1) {
y=x; } else if (1=10) {
y=3*x-11; } printf("%f",y); system("pause");}
回复

使用道具 举报

千问 | 2011-3-24 14:47:39 | 显示全部楼层
你的程序起码有两个问题,第一个是关于编程的,程序的结尾应该有return 0;另一个是你的判断逻辑,假设x>=1的话,你的程序只会执行第一个判断就是y=x,其他都不会执行无论x多大。
回复

使用道具 举报

千问 | 2011-3-24 14:47:39 | 显示全部楼层
程序的习惯真是不好,每个if后面的语句为什么要用小括号括起来呢?应该用大括号,单语句就根本不用括。另外你最后一个else (x>=10)(y=3*x-11);这一句根本就是在乱写了。要么else if(x>=10)y=3*x-11; 要么就直接else y=3*x-11; 还有尽量不要使用浮点数进行比较,编译器不同可能会比较出不同结果,甚至有些编译器不支持浮
回复

使用道具 举报

千问 | 2011-3-24 14:47:39 | 显示全部楼层
第一个if条件应该是小于1吧,最后一个else 应该是else if(x>=10) (y=3*x-11);转化为计算题分断函数:y= x
(当x10).
回复

使用道具 举报

千问 | 2011-3-24 14:47:39 | 显示全部楼层
请用int main()而不是main()如果是C++的话,请#include
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行