| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 890 人关注过本帖
标题:新手请教高手指点迷津
只看楼主 加入收藏
曲水流觞___
Rank: 1
来 自:郑州
等 级:新手上路
帖 子:15
专家分:8
注 册:2010-11-25
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:5 
新手请教高手指点迷津
题目是:
1、    编写程序实现下面的算法:
if
then
lowerCount+1;
else
if(ch≥’A’) and (ch≤’Z’)
then
upperCount+1
else
otherCount+1;
endif
endif
其中ch调用ReadChar输入,lowerCount, upperCount和otherCount的值用WriteUDecByte显示。

我自己写的怎么都通不过:
.386
.MODEL FLAT,stdcall

INCLUDE io.h
include include\io32.inc
INCLUDElib lib\kernel32.lib

ExitProcess PROTO NEAR32 stdcall,dwExitCode:DWORD

cr EQU 0dh
Lf EQU 0ah

.STACK 4096

.DATA
prompt1 BYTE "Please enter the ch:",0
lowerCount DWORD ?
upperCount DWORD ?
otherCount DWORD ?
char1 BYTE 5 DUP (?)

.CODE
_start:
      mov lowerCount,0
      mov upperCount,0
      mov otherCount,0
      output prompt1
ifpos:ReadChar char1
      cmp char1,61h
      jl thenpos
      cmp char1,7Ah
      jg thenpos
      add lowerCount,1
      jmp endifpos
thenpos:cmp char1,41h
       jl elseifpos
       cmp char1,5Ah
       jg elseifpos
       add upperCount,1
       jmp endifpos
elseifpos:add otherCount,1
endifpos:
       WriteUDecDword lowerCount
       WriteUDecDword upperCount
       WriteUDecDword otherCount

       INVOKE ExitProcess,0

PUBLIC _start
END _start

拜托高手帮帮忙(注明哪错了,什么原因)
搜索更多相关主题的帖子: 编写程序 include 
2010-11-25 20:49
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:10 
if (ch≥’a’) and (ch≤’z’) then
    lowerCount+1;
else
    if (ch≥’A’) and (ch≤’Z’) then
        upperCount+1
    else
        otherCount+1;
    endif
endif

题目是这样?
2010-11-26 00:15
xiaomarn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:348
专家分:2026
注 册:2009-3-18
收藏
得分:10 
楼主用的什么开发包?至少那个io头让我看下呗,不然怎么知道原型,还有那个链接库
到底是编译错,还是链接错?
2010-11-26 10:23
曲水流觞___
Rank: 1
来 自:郑州
等 级:新手上路
帖 子:15
专家分:8
注 册:2010-11-25
收藏
得分:0 
回复 2楼 zklhp
恩,是这样的
2010-11-28 11:51
曲水流觞___
Rank: 1
来 自:郑州
等 级:新手上路
帖 子:15
专家分:8
注 册:2010-11-25
收藏
得分:0 
回复 3楼 xiaomarn
我们用的masm32,刚学不久,不知道用那些头文件,郁闷啊~~~~~连那个readchar是什么怎么用都不知道
2010-11-28 11:53
曲水流觞___
Rank: 1
来 自:郑州
等 级:新手上路
帖 子:15
专家分:8
注 册:2010-11-25
收藏
得分:0 
我在实验室改成这样的了
.386
.MODEL FLAT,stdcall

include include\io32.inc

ExitProcess PROTO NEAR32 stdcall,dwExitCode:DWORD

cr EQU 0dh
Lf EQU 0ah

.STACK 4096

.DATA
lowerCount DWORD ?
upperCount DWORD ?
otherCount DWORD ?
char1 BYTE 5 DUP (?)

.CODE
start:
      mov lowerCount,0
      mov upperCount,0
      mov otherCount,0
ifpos:ReadChar char1
      cmp char1,61h
      jl thenpos
      cmp char1,7Ah
      jg thenpos
      inc lowerCount
      jmp endifpos
thenpos:cmp char1,41h
       jl elseifpos
       cmp char1,5Ah
       jg elseifpos
       inc upperCount
       jmp endifpos
elseifpos:inc otherCount
endifpos:
       WriteUDecDword lowerCount
       WriteUDecDword upperCount
       WriteUDecDword otherCount

       INVOKE ExitProcess,0

PUBLIC start
END start


第一次编译运行都过了,还可以运行成功。可是第二次再编译就会显示
LINK:LNK6004:41.exe not found or not built by the last incrementental link;performing full link

我搜了一下说这个错误的意思是内存不够,我删了很多东西后,还是如此,好奇怪
2010-11-28 12:00
快速回复:新手请教高手指点迷津
数据加载中...
 
   



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

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