tzkr.net
当前位置:首页 >> C语言 For(i=strlEn(s)%1;i>=0;i%%) print("%C"... >>

C语言 For(i=strlEn(s)%1;i>=0;i%%) print("%C"...

你好!for(i=strlen(s)-1;i>=0;i--), i的值从s字串的长度减1递减到0,依次打印s[i]的值.函数exchange中把十进制转换到16进制数到s中,其顺序是反的,所以,输出时循环也反过来输出.如有疑问,请追问.

int i,j=0; for(i=0;s[i];i++) if(s[i]!=c) s[j++]=s[i]; s[j]=0;//把最后一个元素设为0,可能是作为数组的结束来用.

循环接收终端输入的字符,并保存到事先定义好数组s中,当终端键入 回车、接收字符出错或者没有字符要接收时结束,若数组满了时也结束接收.c = getchar()是从缓存中获取字符赋值给变量c ;'\n' 代表回车;EOF 表示文件结束符(end of file),同时有些函数如getchar()处理出错时也会返回EOF

for (i = 0; s[i] !='\0' && s[j]==t[k]; j++, k++)对比常用的 for (i = 0; i<n; i++)第一个i=0不用解释了第二个s[i] !='\0' && s[j]==t[k];这一句就相当于i<n这个判定条件第三个j++, k++就相当于i++这个判定条件,总体来说就是从i=0开始,每次 j++, k++,直到s[i] !='\0' && s[j]==t[k];这个条件不成立时候就结束循环.

#include "stdio.h"int strlen(char *s){ int n=0; while(*s++) n++; return n;}void strrev(char *s){ char c; int i,n; n = strlen(s); for(i=0; i<n/2; i++) { c = s[i]; s[i] = s[n-i-1]; s[n-i-1] = c; }}main(){ char n[6]; /* 需要给scanf输入保留一个'\0'结束符的位置,所以此

strlen是统计字符串的个数..不能统计int 数组的长度;标准的参数形式(const char *s)

不加分号的话,你的if(t[k]=='\0') printf("%d\n",i) ;语句就充当循环语句啦,加了分号的话,循环语句就为空语句.

scanf("%c\n",&s[i]);\\把这句里的\n去掉

int Idex(char * S,char * T,int pos) { int i; if(strlen(S)

是一个标准库函数.功能:计算字符串s的长度,但是不包括'\\0'在内.当头文件包含了#include 该函数就能使用了.例如 char *s=\"hello\"; int i=strlen (s); printf(\"%d\ \",i);输出的为5 因为字符串\"hello\"一共有五个字符.

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com