| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 658 人关注过本帖
标题:勉强写出来的程序 再出现错误 就真的没辙了 帮忙看下吧
只看楼主 加入收藏
y41699060
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2011-5-8
结帖率:66.67%
收藏
 问题点数:0 回复次数:7 
勉强写出来的程序 再出现错误 就真的没辙了 帮忙看下吧
自学C语言入门经典其中有题:编写一个程序,提示用户从键盘输入一个星期的薪水(以美圆为单位)和工作时数,他们均为浮点数,然后计算并输出每个小时的平均薪水,输出格式如下所示: You average hourly pay rate is 7 dollars and 54 cents.

下面是我写的程序 :
#include<stdio.h>
int main(void)
{
   float xs,sj;  /* xs=总薪水 sj=总工作时间 */
   int yuan,mao; /* 用的人民币单位 意思一样就行了*/

   printf("mei xingqi de xinshuei:$");
   scanf("%f",&xs);
   printf("ni de gong zuo shi jian:");
   scanf("%f",&sj);

   float hs=xs/sj;  /* hs=每小时平均薪水*/

   yuan=(int)hs;
   mao=(int)(hs-yuan)*100;

   printf("ni mei xiao shi xinshuei si %dyuan %dmao",yuan,mao);
   getch();
   return 0;
}
错误 xiti24~1.c 12: 表达式语法错在 main 函数中 /* 指的是 float hs=xs*sj; */
错误 xiti24~1.c 14: 未定义的符号'hs'在 main 函数中 /* 指的是  yuan=(int)hs;*/


[ 本帖最后由 y41699060 于 2011-5-12 12:14 编辑 ]
搜索更多相关主题的帖子: average dollars include 人民币 C语言 
2011-05-12 11:57
cerbcm
Rank: 1
等 级:新手上路
帖 子:2
专家分:1
注 册:2011-5-12
收藏
得分:0 
float hs=xs*sj;
必须支持C99标准的编译器才能这样写,否则变量须先声明再使用
2011-05-12 12:11
y41699060
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2011-5-8
收藏
得分:0 
以下是引用cerbcm在2011-5-12 12:11:21的发言:

float hs=xs*sj;
必须支持C99标准的编译器才能这样写,否则变量须先声明再使用
早试过了 声不声明都是一样的结果
2011-05-12 12:15
heimodao
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:88
专家分:172
注 册:2011-4-8
收藏
得分:0 
先不说你的程序的问题了,我直接复制GCC都通过了编译了啊,不过要把最后的**getch();***改成***getchar();****才行。
2011-05-12 12:18
liangjinchao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:376
专家分:697
注 册:2010-11-8
收藏
得分:0 
程序代码:
#include<stdio.h>
int main(void)
{
   float xs,sj,hs;  /* xs=总薪水 sj=总工作时间 */
   int yuan,mao; /* 用的人民币单位 意思一样就行了*/

   printf("mei xingqi de xinshuei:$");
   scanf("%f",&xs);
   printf("ni de gong zuo shi jian:");
   scanf("%f",&sj);

   hs=xs*sj;  /* hs=每小时平均薪水*/

   yuan=hs;//
   mao=(hs-yuan)*100;//从float型赋值到int型,类型会自动转换!

   printf("ni mei xiao shi xinshuei si %dyuan %dmao",yuan,mao);
   getch();
   return 0;
}


补充一下:每小时平均薪水==总薪水*总时间?

[ 本帖最后由 liangjinchao 于 2011-5-12 12:25 编辑 ]

因为有了因为,所以有了所以,既然已成既然,何必再说何必
2011-05-12 12:19
那年
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2011-5-3
收藏
得分:0 
#include<stdio.h>
int main(void)
{
   float xs,sj,hs,yuan,mao;
   printf("The pay of a weekday:$\n");
   scanf("%f",&xs);
   printf("your work-time:");
   scanf("%f",&sj);
   hs=xs/sj;
   yuan=(int)hs;
   mao=(hs-yuan)*100;
   printf("You average hourly pay rate is %.0f dollars and %f cents.",yuan,mao);
}


              人生莫大的悲哀是不能坚持,今天计划明天,明天念着后天,这样总难成事。
2011-05-12 12:22
y41699060
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2011-5-8
收藏
得分:0 
谢谢各位  程序总 算是执行了  找到问题的根本了 看来还是得在开头单独申明 float hs; 我那个格式确实是错的 先我也试过在开头申明 可能是因为急噪了  还疏忽了其他地方 所以还是没试成功    不过不知道为什么书上经常出现
float XXX=XXX*XXX格式 哎 多看看书去
2011-05-12 13:12
y41699060
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2011-5-8
收藏
得分:0 
以下是引用liangjinchao在2011-5-12 12:19:42的发言:

#include
int main(void)
{
   float xs,sj,hs;  /* xs=总薪水 sj=总工作时间 */
   int yuan,mao; /* 用的人民币单位 意思一样就行了*/
 
   printf("mei xingqi de xinshuei:$");
   scanf("%f",&xs);
   printf("ni de gong zuo shi jian:");
   scanf("%f",&sj);
 
   hs=xs*sj;  /* hs=每小时平均薪水*/
 
   yuan=hs;//
   mao=(hs-yuan)*100;//从float型赋值到int型,类型会自动转换!
 
   printf("ni mei xiao shi xinshuei si %dyuan %dmao",yuan,mao);
   getch();
   return 0;
}
 
补充一下:每小时平均薪水==总薪水*总时间?
hs=xs*sj;  /* hs=每小时平均薪水*/  打错了而已
2011-05-12 13:28
快速回复:勉强写出来的程序 再出现错误 就真的没辙了 帮忙看下吧
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.053449 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved