打印字符串的C程序
2021-07-07 07:31:24
深夜i
--
--
打
印
字
符
串
的
C
程
序
C 程序使用各种函数(如 printf、puts)打印字符串。 考虑以下代码:
printf("Hi there! How are you doing?");
输出:Hi there! How are you doing?
printf 函数打印传递给它的参数(一个字符串)。 接下来,我们将看到如果它存储在字符数组中,如何打印它。
#include <stdio.h>
int main()
{
char z[100] = "I am learning C programming language.";
printf("%s", z); // %s is format specifier
return 0;
}
输出:I am learning C programming language.
要输入字符串,我们可以使用 scanf 和 gets 函数。
C程序
#include <stdio.h>
int main()
{
char array[100];
printf("Enter a string\n");
scanf("%s", array);
printf("Your string: %s\n", array);
return 0;
}
Output:
Enter a string
We love C.
Your string: We
只打印“We”,因为函数 scanf 只能用于输入没有空格的字符串,输入包含空格的字符串使用 get 函数。
包含空格的输入字符串
#include <stdio.h>
int main()
{
char z[100];
printf("Enter a string\n");
gets(z);
printf("The string: %s\n", z);
return 0;
}
Enter a string
Practice makes a person perfect.
The string: Practice makes a person perfect.
使用循环打印字符串
我们可以通过一次打印一个字符来使用循环打印一个字符串。 它以 '\0'(NULL 字符)结尾,这标志着它的结束。
#include <stdio.h>
int main()
{
char s[100];
int c = 0;
gets(s);
while (s[c] != '\0') {
printf("%c", s[c]);
c++;
}
return 0;
}
您还可以使用 for 循环:
for (c = 0; s[c] != '\0'; c++)
printf("%c", s[c]);
使用 do-while 循环:
#include <stdio.h>
int main()
{
char s[100];
int c = 0;
gets(s);
if (s[c] != '\0') { // Used to check empty string
do {
printf("%c", s[c]);
c++;
} while (s[c] != '\0');
}
return 0;
}
使用递归打印字符串的C程序
#include <stdio.h>
void print(char*);
int main() {
char s[100];
gets(s);
print(s);
return 0;
}
void print(char *t) {
if (*t == '\0') // Base case
return;
printf("%c", *t);
print(++t);
}
上一篇:
idea打包java可执行jar包
下一篇:
C中的字符串长度
评论区