c 语言 循环方式编写一个函数void print_rev_str(char *s),倒序输出字符串S。
时间: 2024-02-22 14:55:07 浏览: 110
可以使用一个循环,从字符串的末尾开始,依次输出每个字符,直到字符串的开头。具体实现如下:
```c
void print_rev_str(char *s) {
int len = strlen(s);
for (int i = len - 1; i >= 0; i--) {
printf("%c", s[i]);
}
}
```
这里使用了 `strlen` 函数获取字符串的长度,然后从末尾开始遍历并输出每个字符。注意,字符串的最后一个字符的下标是 `len - 1`,而不是 `len`。
相关问题
c语言编写函数,从给定字符串中删除指定的字符。 函数接口定义: void del_char(char str[],char ch); 裁判测试程序样例: #include <stdio.h> #include <string.h> void del_char(char str[],char ch); int main() { char c,s[81]; gets(s); c=getchar(); del_char(s,c); puts(s); } /* 请在这里填写答案 */ 输入样例: student t 输出样例: suden
以下是函数del_char的实现代码:
```
void del_char(char str[], char ch) {
int i, j;
for (i = j = 0; str[i] != '\0'; i++) {
if (str[i] != ch) {
str[j++] = str[i];
}
}
str[j] = '\0';
}
```
函数的实现思路是遍历字符串,将不是指定字符的字符保存到原来字符串的前面位置,最后在新的末尾加上字符串结束符'\0'。这样就达到了从字符串中删除指定字符的目的。
编写一个函数,接收一个字符串,统计其中数字字符个数及字母字符个数。函数原型为:void fun(const char *str, int* char_N, int* letter_N)用c语言
以下是一个简单的 C 语言函数,实现了对字符串中数字字符和字母字符的计数:
```c
void fun(const char *str, int* char_N, int* letter_N) {
int len = strlen(str);
*char_N = 0;
*letter_N = 0;
for (int i = 0; i < len; i++) {
char c = str[i];
if (isdigit(c)) {
(*char_N)++;
} else if (isalpha(c)) {
(*letter_N)++;
}
}
}
```
函数中,我们首先将 char_N 和 letter_N 的初始值都设为 0。然后,我们使用一个 for 循环遍历字符串中的每一个字符,对于每一个字符,判断它是数字字符还是字母字符。如果是数字字符,就将 char_N 计数器加 1;如果是字母字符,就将 letter_N 计数器加 1。最后,我们将 char_N 和 letter_N 的值通过指针返回即可。
阅读全文