A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

喵喵

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

本帖最后由 喵喵 于 2014-7-17 16:37 编辑

我想比较两个字符串的大小,不知道怎么弄。

4 个回复

倒序浏览
练习题目是给字符串排序,我只会给数组排序,字符串不会呀。接收字符串我用的是scanf(),但是字符串不能加空格。有没有什么别的办法
回复 使用道具 举报
你看一下把。这个程序就是给多个字符串排序的。
比较字符串大小用 strcmp()
从键盘获取字符串用gets()要比sanf()好。

  1. #include<stdio.h>
  2. #include<string.h>
  3. int main(){
  4.     //定义一个二维数组,存储字符串。
  5.         char str[10][100];
  6.     //定义一个临时字符串.
  7.         char temp[100];
  8.     //从键盘获得10个数组。
  9.         for(int i = 0;i < 10;i++){
  10.                 printf("请输入字符串%d:",i+1);
  11.                 gets(str[i]);
  12.         }
  13.   
  14.     //利用第一维排序。
  15.         for(int i = 0;i < 10;i++){
  16.                   for(int j = i + 1;j < 10;j++){
  17.             //利用函数strcmp()判断字符串大小。
  18.                            if(strcmp(str[i],str[j])>0){
  19.                 //利用函数strcpy来交换字符串
  20.                 strcpy(temp,str[i]);
  21.                 strcpy(str[i],str[j]);
  22.                 strcpy(str[j],temp);
  23.             }
  24.                   }
  25.         }
  26.    
  27.         for(int i = 0;i<10;i++){
  28.                 printf("%s\n",str[i]);
  29.         }
  30.    
  31.     return 0;
  32. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
傘が咲く + 1

查看全部评分

回复 使用道具 举报
scanf()接收到空格或者回车,就会结束!  gets()接收字符串是回车结束的!!上面那个同学,说的也很清楚
回复 使用道具 举报
去下一个C语言的库函数说明文档。你这个情况是因为对C的自带库函数了解不够深刻。看我的发帖,有一个CLib的CHM文件,你去下过来对你学习有帮助的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马