谭浩强 C程序设计 8.5 写一个函数,使输入的一个字符串按返序存放

写一个函数,使输入的一个字符串按返序存放,在主函数中输入和输出字符串。

#include <stdio.h>
#include <string.h>

int main(){
    void reverse(char arr[]);
    char arr[50];
    gets(arr);
    reverse(arr);
    for(int i=0; i< strlen(arr); i++){
        printf("%3c",arr[i]);
    }
    printf("\n");
    return 0;
}

void reverse(char arr[]){
    int i=0,LEN,j;
    char c;
    while(arr[i]!=‘\0‘){
        i++;
    }
    LEN=i;//‘\0’所在的位置
    for(j=0,i=LEN-1; j<LEN/2; j++,i--){
    c=arr[i];
    arr[i]=arr[j];
    arr[j]=c;
    }
}
时间: 2024-12-14 06:28:42

谭浩强 C程序设计 8.5 写一个函数,使输入的一个字符串按返序存放的相关文章

谭浩强 C程序设计 8.10写一函数,输入一行字符,将此字符串中最长的单词输出。

代码量稍微一大,就会出现bug,浪费很多时间,继续努力. #include <stdio.h> void main(){ void maxLen(char str[50]); char str[50]; gets(str); maxLen(str); } void maxLen(char str[50]){ int i,j=1,t=-1,start=0,m; int maxNum(int num[50]); int num[50]={0}; num[0]=-1;//num[1]放第一个单词的长

谭浩强 C程序设计 8.11写一函数用起泡法对输入的个字符按由小到大的顺序排列。

#include <stdio.h> int main(){ void maoPaoSort(char str[]); char arr[10]; printf("请输入10个字符:\n"); gets(arr);//gets回车不会在缓冲区中存着,scanf函数中,回车会存在缓冲区中 maoPaoSort(arr); for(int j=0; j<10; j++){ printf("%3c",arr[j]); } printf("\n&

01-初学总结之《谭浩强C程序设计》

注:个人针对于课本的易错点进行了相关的整理.整理的不专业,多多见谅. C语言中的易出错的点 这个笔记综合了 0. 常量&变量 常量 整型常量 -345,1000,0 实型常量 1)   十进制小数形式,-123.456 2)   指数形式-10.34E-12 字符常量 普通字符 一个字符,单撇号’ a’’Z’’?’’#’ 转义字符 表格0.1转移字符表 字符串常量 “123”   “boy” 符号常量 #define  PI  3.1415926 #define  PRINCE  40 //注意

谭浩强 c程序设计 8.17用递归法将一个整数n转换成字符串。例如,输入486,应输出字符串&quot;486&quot;。n的位数不确定,可以是任意位数的整数。

8.17用递归法将一个整数n转换成字符串.例如,输入486,应输出字符串"486".n的位数不确定,可以是任意位数的整数. #include <stdio.h> char str1[20];int i=0;long n;int main(){        int longToStr(long n);    char *revstr(char *str, int len);    printf("请输入一个整数n:\n");    scanf("

谭浩强C程序设计(第四版)例题中的代码优化

eg:9.7 有n个结构体变量,内含学生学号,姓名和3门课成绩,要求输出平均成绩最高的学生的信息(内含学生学号,姓名和3门课成绩和平均成绩). 2015-01-2022:25:34 1 #include<stdio.h> 2 #define N 2 3 4 struct Student 5 { 6 int num; 7 char name[20]; 8 float score[3]; 9 float aver; 10 }; 11 12 void input(struct Student *st

谭浩强 c++程序设计第一章课后习题 第7题

#include <iostream> using namespace std; int main() { int a,b,c; int f(int x,int y,int z);//这是函数的声明 //cin sonsole控制台 cout<<"请输入三个整数类型的数字:" <<endl; cin>>a>>b>>c; c=f(a,b,c);//abc有具体值,称为实际参数 cout<<c<<

谭浩强 c++程序设计第一章课后习题 第10题

#include <iostream> using namespace std; int main() { int a,b,c; cout<<"请输入三个整数类型的数字:" <<endl; cin>>a>>b>>c; void sort(int x,int y,int z); sort(a,b,c);//abc有具体值,称为实际参数 return 0; } void sort(int x,int y,int z)/

谭浩强 C程序设计 8.2 求方程 的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。

#include<stdio.h> #include<math.h> int main() { float a,b,c,q; void lianggegen(float a,float b,float q); void dangen(float a,float b,float q); void fushugen(float a,float b,float q); printf("输入 a b c 的值,以空格分隔:\n "); scanf("%f%f%

c程序设计 8.8写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出&quot;1_9_9_0&quot;。

#include <stdio.h> //整型的数字1+48=符号数字1,整型的数字2+48=符号数字2... void main(){ int n1; void numToStr(int m); printf("请输入一个四位数字:\n"); scanf("%d",&n1); numToStr(n1); } void numToStr(int m){ int a,b,c,d,i,j; char str[7]; a=m/1000; b=(m-a*