用c语言编写程序:输入一个以#结束的字符串,滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果在第一个十六进制字符之前存在字符“-”,则代表该数是负数。试编写相应程序。
时间: 2024-05-22 08:13:58 浏览: 91
下列方式输入字符串,输出该字符串中字母的个数。
方式一:在程序中用字符数组存放字符串。
方式二:在程序中用指针变量动态存放字符串。
答案:
方式一:
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, len, count = 0;
printf("请输入字符串:");
scanf("%s", str);
len = strlen(str);
for(i = 0; i < len; i++)
{
if((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z'))
{
count++;
}
}
printf("字母的个数为:%d\n", count);
return 0;
}
方式二:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char *str;
int i, len, count = 0;
str = (char *)malloc(100 * sizeof(char));
printf("请输入字符串:");
scanf("%s", str);
len = strlen(str);
for(i = 0; i < len; i++)
{
if((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z'))
{
count++;
}
}
printf("字母的个数为:%d\n", count);
free(str);
return 0;
}
阅读全文