急!!!! pascal 数字 (不是英文字母)字典序大小怎么比较 要详细点!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急!!!! pascal 数字 (不是英文字母)字典序大小怎么比较 要详细点!!相关的知识,希望对你有一定的参考价值。

如 3124 与 2222 字典序哪个大?

当然是3124大了,比较的时候是每个数的左起第i位分别比较,下面是一个n个字符串进行字典序排序的程序,希望对你有用:
var
i,j,n:longint;
a:array[1..1000] of string;
temp:string;
begin
readln(n);
for i:=1 to n do readln(a[i]);
for i:=1 to n-1 do
for j:=i+1 to n do
if (a[i]+a[j])<(a[j]+a[i]) then begin
temp:=a[i];
a[i]:=a[j];
a[j]:=temp;
end;
for i:=1 to n do writeln(a[i]);
end.
参考技术A 一位一位比,从第一位开始,直接比较字符码,若不等就字符码小的排前,若相等再比下一位,直到比较完毕,字符串长度短的排前.本回答被提问者采纳 参考技术B 呵呵
方法就是查字典
不过我也知道几个
file菜单
file 里的:
new新建文件
open打开文件
save保存

edit选项
edit 里的:
copy to windows复制到电脑(快捷键alt+v和alt+c在这没用!)
paste from windows从电脑复制

部分快捷键:
ctrl+F9运行程序
F9检查程序
alt+F5查看以运行的程序结果
F2保存文件
F3打开文件

这些是常用的
要想知道更多
请查英语词典!

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

急,急,急!!!!C语言判断输入的两个操作数数是不是是数字。(可以为负数),望高手赐教,不胜感激!!!

C语言判断输入的两个操作数数是否是数字。(可以为负数)

比如
#include "stdio.h"
void main()

double num1,num2,result;
char op;
printf("Please input an expression.Ex:1+2");
input:scanf("%f%c%f",&num1,&op,&num2);
if(//就是这里如何判断呢?判断它如果是数字,就进行运算,可以为负数)

switch(op)

case '+': result=num1+num2;
break;
case '-':result=num1-num2;

break;
case '*':result=num1*num2;

break;
case '/':
if(num2!=0)

result=num1/num2;

else
printf("error,input again:");
fflush(stdin);
goto input;
break;
case '%': if(num2!=0)

result=(int)num1%(int)num2;

else
printf("error,input again:");
fflush(stdin);
goto input;
break;

printf("%.2lf%c%.2lf=%.2lf",num1,op,num2,result);
goto input; //让程序可以不断执行

else

printf("Error expression,the operator must be numbers!,try again:");
fflush(stdin);
goto input;

加上库函数包含文件#include<ctype.h>
判断函数是这个isdigit(),括号内为变量,是数字返回值为真,不是则为假

应该不能,抱歉。这个函数是字符判断函数,分析其ascii码是否在48到57之间,也就是0到9.

如果要实现你所说的,还要再多写一些函数。
对了,用数字转字符串函数,然后在一一判断书不是数字一级负号。
参考技术A 这里的num1和num2是双精度数据类型的变量,你按照%f格式读入数据,无论你输入的数据是什么,系统都是按数值读进来的,只是如果你给的数据类型不对,读进来的数据值是错误的,但是在num1,num2变量当中的内容一定数值,这是不用判断的。
可能你可以判断一下op中的内容是不是+-*/?
参考技术B //判断输入的函数
int keyinput()

char input[20]; //定义字符串接收输入,输入字符也不会错
int i=0;

scanf("%s",input); //接收输入

for(i;i<strlen(input);i++) //strlen 函数在 string.h
//isdigit 函数在 ctype.h 在vc++6.0中 isdigit() 如果是数字返回4
if(isdigit(input[i])!=4)
return 9999;//如果不是数字返回 9999 (这个自己定)

return atoi(input);//返回输入的值


说明:以上代码为代码段,如果使用的引用 (在文件最上方加上:#include “ctype.h” #include"string.h");
引用此函数,只用 调用 " 定义的int 型变量=keyint() "即可;

参考资料:自产

以上是关于急!!!! pascal 数字 (不是英文字母)字典序大小怎么比较 要详细点!!的主要内容,如果未能解决你的问题,请参考以下文章

oracle 如何判断数字字串中是不是含有英文字母

NOIP2006(pascal)普及初赛问题!急!!!!!

急,急,急!!!!C语言判断输入的两个操作数数是不是是数字。(可以为负数),望高手赐教,不胜感激!!!

java正则表达式 过滤特殊字符 只允许中文、字母和数字, 该怎么写?急。。。

一道Pascal小问题,急!!!!!!!!

悬赏!急!pascal竞赛普及组模拟试题