c语言pta删除数字字符
时间: 2024-06-14 12:03:18 浏览: 137
以下是一个C语言的程序,用于删除字符串中的数字字符:
```c
#include "stdio.h"
void delnum(char *s);
int main () {
char item[80];
gets(item);
delnum(item);
printf("%s\n",item);
return 0;
}
void delnum(char*) {
int i=0;
int j=0;
while (s[i] != '\0') {
if (!(s[i] <= '9' && s[i] >= '0')) {
s[j] = s[i];
j++;
}
i++;
}
s[j] = '\0';
}
```
该程序通过循环遍历字符串中的每个字符,如果该字符不是数字字符,则将其添加到新的字符串中。最后,将新的字符串复制回原始字符串中。
相关问题
C语言pta二维字符数组举例
在C语言中,PTA(Pass by Reference Array)通常用于函数参数传递,特别是当我们需要修改数组内容的时候。对于二维字符数组的pta示例,我们可以这样理解:
```c
#include <stdio.h>
// 函数声明,将整个二维字符数组作为引用传入
void print_and_modify(char (*array)[5], int rows) {
for (int i = 0; i < rows; i++) {
for (int j = 0; j < 4; j++) { // 注意,这里是5减去行结束索引,因为数组索引从0开始
printf("%c ", array[i][j]);
}
printf("\n"); // 换行
}
// 在这里对数组元素进行修改
for (int i = 0; i < rows; i++) {
array[i][0] = 'X'; // 修改所有行的第一个字符
}
}
int main() {
// 定义一个5x4的二维字符数组
char my_array[5][4] = {"Hello", "World", "!", "C", "Language"};
// 调用函数,打印原数组并修改
print_and_modify(my_array, sizeof(my_array) / sizeof(my_array[0]));
// 打印修改后的数组
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 4; j++) {
printf("%c ", my_array[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个例子中,`print_and_modify`函数接受了一个指向二维字符数组的指针和行数,它可以直接访问并修改这个数组的内容。在`main`函数中,我们首先定义了数组,然后调用函数,并展示修改后的结果。
c语言pta7-1删除数字字符
以下是C语言实现删除数字字符的代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[10000];
char new_str[10000];
int i, j = 0;
gets(str);
for (i = 0; i < strlen(str); i++) {
if (str[i] < '0' || str[i] > '9') {
new_str[j] = str[i];
j++;
}
}
new_str[j] = '\0';
printf("%s", new_str);
return 0;
}
```
该代码通过遍历输入的字符串,将非数字字符存入新的字符串中,最后输出新的字符串即可实现删除数字字符的功能。
阅读全文