字符串输入,输出

作业  
1

#include <stdio.h> #define STLEN 81int main(void)//声明定义数组空间 { char words[STLEN]; //创建数组 puts("Enter a string, please."); gets(words); // 典型用法 printf("Your string twice:\n"); printf("%s\n", words); puts(words); puts("Done."); return 0; }

2

 

    

#define a 10

void getnchar(char b[], int n);//创建储存函数和储存的数组

int main(int argc, char* argv[])
{
char input[a];

printf("Please enter %d characters:\n", a - 1);//主要函数执行打印输入输出
getnchar(input, a);
printf("Result:\n");
puts(input);
printf("Done.\n");

return 0;
}

void getnchar(char b[], int n)
{
int i = 0;

while (i < n - 1)
{
b[i++] = getchar();//依次储存
}
b[i] = '\0';

return;
}

  

在C语言中没有字符串类型,用字符数组处理字符串

定义

字符数组定义:char 数组名 [常量表达式][常量表达式]

一维字符数组,用于存储和处理一个字符串 。

二维字符数组,用于同时存储和处理多个字符串


一 :用scanf输入字符串,printf输出字符串

输入输出方法:逐个字符输入输出:%c 整个字符串输入输出:%s

逐个字符处理:

#include<stdio.h>

 int main() {

 char ch[5];

 for (int i = 0; i < 5; i++) {

 scanf("%c", &ch[i]); }

 for (int i = 0; i < 5; i++) {

 printf("%c", ch[i]);}

system("pause");

 }

整个字符串处理:

#include<stdio.h>

 int main() { char ch[5]; 

scanf("%s", ch); 

printf("%s", ch);

//无需& system("pause");

 return 0;

 }

说明:

以字符串为单位处理时,直接使用数组名,无需&

输入字符串时,字符个数要小于数组的长度,例如输入5个字符,定义的字符数组至少应该有6个元素

输入字符串时,遇到回车或空格,输入结束,并且自动在串后面加上结束标志'\0'

输出字符串时,遇到字符串结束标志’\0',输出结束。

二 : 用字符串处理函数gets,puts输入和输出

在<string.h>头文件中

字符串输出函数puts

格式:puts(字符数组)

功能:向显示器输出字符串(输出完,自动换行,即用'\n'替'\0')

说明:字符数组必须以'\0'结束

字符串输入函数gets

格式:gets(字符数组)

功能:从键盘键入以回车结束的字符串放入字符数组中,并自动加’\0'

说明:输入串长度应小于字符数组维数,字符串中可以包含空格

posted @ 2022-02-08 21:43  何雪阳  阅读(709)  评论(0)    收藏  举报