编写程序,将用户输入字符串中的 数字字符和英文字母分开后依次交替输出(假设 用户输入的字符串中只包含英文字母和数字字符, 本题要求使用指针访问的方法实现。
时间: 2024-02-03 18:11:28 浏览: 33
以下是使用指针访问的方法实现该程序:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
char str[100];
char *p;
char *num_ptr[100]; // 数字字符的指针数组
char *alpha_ptr[100]; // 英文字母的指针数组
int num_count = 0; // 数字字符个数
int alpha_count = 0; // 英文字母个数
int i;
printf("请输入字符串:");
scanf("%s", str);
// 分离数字字符和英文字母
p = str;
while (*p)
{
if (isdigit(*p))
{
num_ptr[num_count++] = p;
}
else if (isalpha(*p))
{
alpha_ptr[alpha_count++] = p;
}
p++;
}
// 交替输出数字字符和英文字母
for (i = 0; i < num_count && i < alpha_count; i++)
{
printf("%c%c", *(num_ptr[i]), *(alpha_ptr[i]));
}
for (; i < num_count; i++)
{
printf("%c", *(num_ptr[i]));
}
for (; i < alpha_count; i++)
{
printf("%c", *(alpha_ptr[i]));
}
return 0;
}
```
运行程序,输入字符串后即可看到交替输出的结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)