免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1735 | 回复: 9
打印 上一主题 下一主题

有关C的问题,麻烦帮忙看段代码。。谢谢哈~ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-28 06:29 |只看该作者 |倒序浏览
这个题目是,用数组计算帽子的尺寸,只需输入帽子的周长,然后显示帽子的尺寸

(谢谢大家啦~这个问题已经解决啦。。。)


#include "stdio.h"
typedef   unsigned   char   bool   
  #define   true   1   
    #define   false   0  
main()   //在这里出现的问题。。说明语法错误。。请教各位高手要如何修改
{
    char size[3][12] = {
            {'6','6','6','6','7','7','7','7','7','7','7','7'},
            {'1','5','3','7',' ','1','1','3','1','5','3','7'},
            {'2','8','4','8',' ','8','4','8','2','8','4','8'}
    };
    int headsize[12] = {164,166,169,172,178,181,184,188,191,194,197};
    float cranium = 0.0;
    int your_head = 0;
    int i = 0;
    bool hat_found = false;
    printf("\nEnter the circumference of your head above your eyebrows"
            "in inches as a decimal value: ");
    scanf("%f",&cranium);
    your_head = (int)(8.0*cranium);
    for(i=1;i<12;i++)
    {
            if(your_head > headsize[i-1] && your_head <= headsize)
            {
                    hat_found = true;
                    break;
            }
            if(your_head == headsize[0])
            {
                    i = 0;
                    hat_found = true;
            }
            if(hat_found)
            printf("\nyour hat size is %c %c%c%c\n",
                    size[0][1],size[1],(size[1]==' ')? ' ' : '/',size[2]);
            else
            {
                    if(your_head < headsize[0])
                            printf("\nyou are the proverbial pinhead. no hat for you i'm afraid.\n");
                    else
                            printf("\nyou,in technical parlance,are a fathead.");
            }
            return 0;
            }
}

我用的编译器是 Turbo C ...在编写代码的时候。。。主函数只用main()这么写就可以了呢。。


[ 本帖最后由 cristin871125 于 2009-5-28 14:11 编辑 ]

论坛徽章:
1
射手座
日期:2013-08-21 13:11:46
2 [报告]
发表于 2009-05-28 08:32 |只看该作者
编译器一声不吭??

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
3 [报告]
发表于 2009-05-28 09:11 |只看该作者
main()   //在这里出现的问题。。说明语法错误。。请教各位高手要如何修改

>>

int main()

论坛徽章:
0
4 [报告]
发表于 2009-05-28 09:42 |只看该作者
可能是main的返回值类型,没见到编译器返回的信息不确定,下次把这个信息带上,啥都没有好累啊看的

论坛徽章:
0
5 [报告]
发表于 2009-05-28 10:14 |只看该作者
warning 还是 error啊

论坛徽章:
0
6 [报告]
发表于 2009-05-28 10:54 |只看该作者
1.typedef   unsigned   char   bool   
缺少个分号.

2.your_head <= headsize
一个整形数跟指针比较,有问题.


3. printf("\nyour hat size is %c %c%c%c\n",
                    size[0][1],size[1],(size[1]==' ')? ' ' : '/',size[2]);
size[1],size[2]都是数组指针,不能用%c输出.一维数组与二维数组没弄明白.

论坛徽章:
0
7 [报告]
发表于 2009-05-28 10:59 |只看该作者
还有,不要单纯说有语法错误.
应该把错误信息贴出来,这样大家就好一起跟你分析一下.
有些很明显的错误一看就知道,就不用大家把你代码再运行一遍.
这样你的问题就可以尽快的得到解决.

呵呵,个人观点.:wink:

论坛徽章:
0
8 [报告]
发表于 2009-05-28 11:25 |只看该作者
  1. typedef   unsigned   char   bool  
复制代码


这句后面加上分号,如下:
  1. typedef   unsigned   char   bool  ;
复制代码


这种错误一下看不出来的话就分段注释一步一步定位就知道了,

论坛徽章:
0
9 [报告]
发表于 2009-05-28 14:09 |只看该作者

回复 #6 khb_gl 的帖子

谢谢你哈~第一条改正就正确啦。。
后两条是这个的论坛的显示问题。。嘿

论坛徽章:
0
10 [报告]
发表于 2009-05-28 14:10 |只看该作者

回复 #8 fieldstream 的帖子

谢谢你哈~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP