我想用户输入要比较的字符串大小的个数,然后在输入字符串来比较大小,在输出,求助!
#include<stdio.h>#include<string.h>
#include<stdlib.h>
int main(void)
{
int i,j,n;
char *temp;
printf("请输入你要比较的字符串数\n");
scanf("%d",&n);
char *p = (char*)calloc(n*20,sizeof(char));//每个串最多含20个字符
printf("请输入字符串\n");
for(i=0;i<n;i++)
{
p = (char*)calloc(n,sizeof(char));
scanf("%s",p);
}
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(strcmp(p,p)<0)
{
temp = p;
p = p;
p = temp;
}
}
}
for(i=0;i<n;i++)
{
printf("%s",p);
}
return 0 ;
free(temp);
free(p);
}
字符串比较大小是指比较其ASCII??? 牡丹花下死做鬼 发表于 2014-2-12 10:42 static/image/common/back.gif
字符串比较大小是指比较其ASCII???
我喜欢比较ASCLL码之和。 无名侠 发表于 2014-2-12 10:51 static/image/common/back.gif
我喜欢比较ASCLL码之和。
就是这个意思O(∩_∩)O~ 可能表达不清楚 (*^__^*) 嘻嘻…… 路过看看= =! 牡丹花下死做鬼 发表于 2014-2-12 10:42 static/image/common/back.gif
字符串比较大小是指比较其ASCII???
对呀,可是上面的程序是错的,运行不了! 你确定不是在排序? bielinyitong 发表于 2014-2-15 17:59 static/image/common/back.gif
对呀,可是上面的程序是错的,运行不了!
//判断两个字符串的ASCII之和的大小
#include<stdio.h>
#include<windows.h>
int main()
{
int fir,sec;
char ch;
fir = 0;
sec = 0;
printf("请输入第一个字符串:");
while((ch=getchar())!='\n')
{
fir += ch;
}
printf("请输入第二个字符串:");
while((ch=getchar())!='\n')
{
sec += ch;
}
if(fir>sec)
{
printf("第一个字符串的ASCII之和大\n");
}
else if(fir < sec)
{
printf("第二个字符串的ASCII之和大\n");
}
else
{
printf("真巧,一样大\n");
}
system("pause");
return 0;
} BaiBai2011 发表于 2014-2-15 18:06 static/image/common/back.gif
你确定不是在排序?
我想:用户先输入要比较的字符串个数--5,然后用户再输入要比较的字符串--ba d e f ;然后输出a b d e f 本帖最后由 BaiBai2011 于 2014-2-15 20:49 编辑
bielinyitong 发表于 2014-2-15 19:44 static/image/common/back.gif
我想:用户先输入要比较的字符串个数--5,然后用户再输入要比较的字符串--ba d e f ;然后输出a b d e f
#include<iostream.h>
int main(void)
{
char str={0};
char tmp = 0;
int i = 0;
int j = 0;
cout<<"输入5个字符: "<<endl;
for(i = 0; i < 5; i++){
cin>>str;
}
for(i = 0; i < 5; i++){
for(j = 0; j < 5 ; j++){
if(str > str){
tmp = str;
str = str;
str = tmp;
}
}
}
cout<<str<<endl;
return 0;
}
#include<iostream.h>
#include <string.h>
#include <stdio.h>
int main(void)
{
char str={0};
char tmp = 0;
int i = 0;
int j = 0;
int len = 0;
cout<<"输入字符串(0-500): ";
gets(str);
len = strlen(str);
for(i = 0; i < len; i++){
for(j = 0; j < len ; j++){
if(str > str){
tmp = str;
str = str;
str = tmp;
}
}
}
cout<<endl<<str<<endl;
return 0;
} strcmp()函数,请先#include <cstring>
页:
[1]