C语言编程键盘输入若干字符,直到输入字符“#”为止,将其中的小写字母转换成大写字母
时间: 2024-05-14 14:12:49 浏览: 47
回车”停止。如何实现?
可以使用while循环和scanf函数来实现。代码如下:
```
char c;
printf("请输入字符,以回车结束:\n");
while((c = getchar()) != '\n'){
// do something with c
printf("你输入了字符 %c\n", c);
}
```
这里利用了getchar函数每次读取一个字符,并判断是否为回车字符'\n'来决定循环是否继续。在循环体内部,我们可以对输入的字符进行处理,比如输出字符。
相关问题
C语言:编程从键盘输入若干字符,直到输入字符#为止,统计其中的大写字母字符、小写字母字
这是一个比较简单的字符统计问题,可以通过一个循环来实现。具体的实现思路如下:
1. 定义三个计数器变量,分别用于统计大写字母、小写字母和数字字符的数量,初始值均为 0。
2. 进入循环,每次读取一个字符,直到读到字符 '#' 为止。可以使用 getchar() 函数来读取输入的字符。
3. 对于读取到的每个字符,判断其是否是大写字母、小写字母或数字字符。可以使用 C 语言中的 isupper()、islower() 和 isdigit() 函数来判断。
4. 如果是大写字母、小写字母或数字字符,则相应的计数器变量加 1。
5. 当读取到字符 '#' 时,跳出循环。
6. 输出统计结果,即大写字母、小写字母和数字字符的数量。
下面是对应的代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
int upper_count = 0; // 大写字母计数器
int lower_count = 0; // 小写字母计数器
int digit_count = 0; // 数字字符计数器
char ch; // 输入的字符
printf("请输入若干字符,以#结束:\n");
while ((ch = getchar()) != '#') {
if (isupper(ch)) {
upper_count++;
} else if (islower(ch)) {
lower_count++;
} else if (isdigit(ch)) {
digit_count++;
}
}
printf("大写字母数量:%d\n", upper_count);
printf("小写字母数量:%d\n", lower_count);
printf("数字字符数量:%d\n", digit_count);
return 0;
}
```
在这个程序中,我们使用 getchar() 函数来读取输入的字符,然后使用 isupper()、islower() 和 isdigit() 函数来判断字符是否是大写字母、小写字母或数字字符。在循环结束后,输出统计结果即可。
c语言编程实现从键盘输入若干字符,直到输入字符*为止,将其中的小写字母转换成大写字母输出,其他字符原样输出。
```c
#include <stdio.h>
int main() {
char c;
while ((c = getchar()) != '*') { // 循环读入字符,直到遇到 *
if (c >= 'a' && c <= 'z') { // 如果是小写字母
c -= 32; // 转换成大写字母
}
putchar(c); // 输出字符
}
return 0;
}
```
阅读全文