函数void fun(char str[lint count)的功能:统计str字符串中字母字符、数字字符、其他字符出现的次数,在程序划线部分填空完成此功能,说明程序中用数组名[下标]形式访问每一个元素。 如:输入串str:a#Bc345&&*D 输出:436 #include <stdio.h> #include <string.h> #define L 256 #define N 3 void fun(char str[lint countl) { int i=0; while(___[3]___!=0) { if((str[i]>='a'&& str[i]<='z')Il(str[i]>='A'&&str[i]<=Z')) count[0]++; else if 41 _4__ count[1]++; else count[2]++;__[5]___; } int main() { char str[L]; int i,num[N]={0}; printf("input a string:"); gets(__[1]___); fun(str,__[2]___); for( i=0;i<N; i++) printf("%d ",num[i]); } 第1空: 第2空: 第3空: 第4空: 第5空:
时间: 2024-04-25 15:26:27 浏览: 143
#include <stdio.h>
#include <string.h>
#define L 256
#define N 3
void fun(char str[], int count[]) {
int i = 0;
while(str[i] != '\0') {
if((str[i]>='a'&& str[i]<='z')||(str[i] >='A'&&str[i]<='Z')) {
count[0]++;
} else if(str[i] >= '0' && str[i] <= '9') {
count[1]++;
} else {
count[2]++;
}
i++;
}
}
int main() {
char str[L];
int i, num[N] = {0};
printf("input a string:");
gets(str);
fun(str, num);
for(i=0;i<N;i++) {
printf("%d ", num[i]);
}
return 0;
}
第1空: str;第2空: num;第3空: str[i] >= '0' && str[i] <= '9';第4空: count[1]++;第5空: i++;
相关问题
函数void fun(char str[]intcount)的功能:统计str字符串中字母字符、数字字符、其他字符出现的次数,在程序划线部分填空完成此功能,说明程序中用数组名[下标]形式访问每一个元素。 如:输入串str:a#Bc 345&&*D 输出:436 #include <stdio.h> #include <string.h> #define L 256 #define N 3 void fun(char str[lint count) { int i=0; while(___[3]___!= 0) { if ((str[i]>='a'&& str[i]<='z')I(str[i] >='A'&&str[i]<='Z')) count[0]++; else if (___[4]___) count[1]++; else count[2]++; ___[5]__; }
#include <stdio.h>
#include <string.h>
#define L 256
#define N 3
void fun(char str[], int count[]) {
int i = 0;
while(str[i] != '\0') {
if((str[i]>='a'&& str[i]<='z')||(str[i] >='A'&&str[i]<='Z')) {
count[0]++;
} else if(str[i] >= '0' && str[i] <= '9') {
count[1]++;
} else {
count[2]++;
}
i++;
}
}
int main() {
char str[L];
int count[N] = {0};
printf("请输入字符串:\n");
fgets(str, L, stdin);
fun(str, count);
printf("字母字符:%d个\n数字字符:%d个\n其他字符:%d个", count[0], count[1], count[2]);
return 0;
}
在第一个下划线处填写 char,第二个下划线处填写 str[i] >= '0' && str[i] <= '9',第三个下划线处填写 i++。
柠宇符串str中所有下标为奇数位署上的宇母转换为大写(若该位置上不是宇母,则不转换)。例如,若输入“abcAEFg',则应输出':BcAEFg° #include cstdio.h> void main () char str 80] : lint 1=0; gets (str): puts (str) : while ( ) /字符串不结束条件 그도 (182 !=0) 1/下标是奇数 if(三tr[1]<-1z1&EstI[i1>=1a") //811] 是小弓字母 /转换成大亏字母 3tr [11= puts (str):
抱歉,您给出的代码有语法错误。我来帮您修改一下:
```c++
#include <cstdio>
#include <cstring>
int main() {
char str[80];
printf("请输入字符串:");
gets(str);
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (i % 2 == 1 && str[i] >= 'a' && str[i] <= 'z') {
str[i] -= 32;
}
}
printf("转换后的字符串为:%s", str);
return 0;
}
```
代码说明:
1. 使用`printf()`函数输出提示信息,并使用`gets()`函数读入字符串。
2. 使用`strlen()`函数获取字符串长度。
3. 使用循环遍历字符串,判断当前下标是否为奇数位。
4. 如果是奇数位,并且是小写字母,则将其转换为大写字母(可通过ASCII码进行转换)。
5. 最后使用`printf()`函数输出转换后的字符串。
希望对您有所帮助!
阅读全文