zoukankan      html  css  js  c++  java
  • c程序设计语言第一章4

    (昨天网络出现了问题,导致这篇没来得及上传,再次补上,今晚照常上传笔记)

    练习1.19编写函数r e v e r s e ( s )将字符串s中的字符顺序颠倒过来。使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序

     1 /*************字符串s中的字符顺序颠倒过**********************/
     2 #include <stdio.h>
     3 #include <stdlib.h>
     4 #define MAXLENGTH 100//字符串最大值
     5 int getline(char[],int limit);
     6 void reverse(char[]);
     7 int main()
     8 {
     9     char str[MAXLENGTH];
    10     int len=0;
    11     while((len=getline(str,MAXLENGTH))>0)
    12     {
    13         reverse(str);
    14         printf("%s
    ",str);
    15     }
    16     return 0;
    17 }
    18 int getline(char str[],int limit)
    19 {
    20     int c;
    21     int i;
    22     for(i=0;i<(limit-1)&&(c=getchar())!=EOF&&c!='
    ';i++)
    23     {
    24         str[i]=c;
    25     }
    26     if(c=='
    ')
    27     {
    28         str[i]=c;
    29         ++i;
    30     }
    31     str[i]='';
    32     return i;
    33 }
    34 void reverse(char str[])
    35 {
    36     int i,j;
    37     char temp;
    38     for(i=0;str[i]!='';i++);//找到字符串的末尾
    39     --i;
    40     if(str[i]=='
    ')--i;//不计换行符,此时i记录字符串的尾部
    41     j=0;//j记录字符串最开始的位置
    42     while(j<i)
    43     {
    44         temp=str[i];//交换字符
    45         str[i]=str[j];
    46         str[j]=temp;
    47         ++j;
    48         --i;
    49     }
    50 }

    运行结果:

  • 相关阅读:
    五种Sublime text 3同时快速编辑多行内容
    update 更新某个字段自动加1
    oracle 一行记录被锁
    事件
    练习题1
    语法
    开始js
    js简述
    概述
    软连接
  • 原文地址:https://www.cnblogs.com/xiaojingang/p/3702045.html
Copyright © 2011-2022 走看看