C语言中将字符串打印成指定长度的方法

C语言中将字符串打印成指定长度的方法,第1张

好用的扩展就是 scanf() 的“%ms”占位符。

介于 % 和 s 之间的 m 有 measure(测量)的含义,它可以测量输入字符串长度,scanf() 根据字符串的长度分配内存,并将字符串拷贝到这段内存,之后将首地址返回给 m。在使用完毕后,需要调用 free() 函数释放这段内存。

程序源代码如下:

#include<stdioh>

int length(char p);

void main()

{

int len;

char str[20];

printf("please input a string:\n");

scanf("%s",str);

len=length(str);

printf("the string has %d characters",len);

}

int length(char p)

{

int n;

n=0;

while(p!='\0')

{

n++;

p++;

}

return n;

}

扩展资料

1、在C语言程序开发中需要读取用户输入时,即使不能事先获知输入长度,也是有办法写出高稳定性的程序的。不过在实践中,一般不推荐使用 scanf() 函数处理用户输入,即使我们解决了输入长度的问题。

2、介于 % 和 s 之间的数字应小于 name 的长度,这个数字表示 scanf() 一次最多读取 127 字节的数据放入 name。如果用户输入的字符串超出了 127 字节,剩下的字符将留在缓冲区内,等待下一次读取。

"#include

<stdioh>

#include

<ctypeh>

#define

N

50

int

main()

{

int

chr=0,space=0,dig=0,other=0;

char

string[N];

char

s;

printf("Please

input

the

string:

");

gets(string);

s=string;

while(s!='\0')

{

if(isalpha(s))

chr++;

else

if(isspace(s))

space++;

else

if(isdigit(s))

dig++;

else

other++;

s++;

}

printf("Result:\n");

printf("English

chars:

%d\n",chr);

printf("Space:

%d\n",space);

printf("Digit:

%d\n",dig);

printf("Others:

%d\n",other);

return

0;

}

用<ctypeh>会更加容易明了有些,注意要用gets输入字符串才可以包含空格,用scanf则不可以"

比如获取一个int类型数组的长度:

int example[20];

int ArrLength;

ArrLength = sizeof(example) / sizeof(int);

这样就行了。

先输入10个字符串,然后依次计算字符串长度,找到最长的一个,并把这个字符串输出即可。

代码如下:

#include <stdioh>

#include <stringh>

int main()

{

    char s[10][100];

    int i;

    int max_i, max_len = 0;

    for(i = 0; i < 10; i ++)

        scanf("%s",a[i]);//输入10个字符串。

    

    for(i = 0; i < 10; i ++)

    {

        int l = strlen(s[i]);

        if(max_len < l) //依次将长度和max_len对比,找到最长一个。

        {

            max_len = l;

            max_i = i;

        }

    }

    printf("%s\n", s[max_i]);//输出最长字符串。

    

    return 0;

}

#include <stdioh>

#include <stringh>

main()

{

int k;

char p="abcdefg";

k=strlen(p);

printf("这个 %s 字符串长度是:%d\n",p,k);

}

以上就是关于C语言中将字符串打印成指定长度的方法全部的内容,包括:C语言中将字符串打印成指定长度的方法、C语言怎么计算字符长度、C语言怎么获取数组长度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9549373.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存