一、阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填√,错误填×;除特别说明外,判断题1分,选择题2分,共计40分) 1、 1 #include <stdio.h> 2#include <cstring> 3int main(){ 4int i,j,n,m; 5char str1[100]; 6char str2[100]; 7scanf("%s",str1);//输入字符串① 8scanf("%s",str2);//输入字符串② 9n=strlen(str1); 10m=strlen(str2); 11str1[0] = 'B'; 12str1[1] = 'a'; 13for (i = 7, j = 0; j <m; i++, j++) 14str1[i] = str2[j]; 15for (i = n-2, j = 0; j < m-2; i++, j++) 16str1[i] = '#'; 17printf("%s\n", str1); 18return 0; 19 } 判断题 1)输入的字符串只能由小写字母或大写字母组成(× ) 2)若将第13行的“i=7”改为“i=0”,程序运行时会发生错误( )。 3)若将第13行的“j<m”改为”j<n”程序运行结果不会改变( )。 4)若第15行中i=n-2 改为i=n,会出现乱码( )。 选择题 5)若输入的字符串分别是“Dir-is-stupid”和“nice” ,则输出结果是( ) A.Bar-is-nice## B. Bar-is-ni##ce C. Dir-is-nice## D. Bar-is-##nice 6)若str2为长度为2,则字符串str1最多发生改变的字符个数是( )。 A.2 B.6 C.4 D.0 7)若str2为长度为2,则字符串str1最少发生改变的字符个数是( )。 A.2 B.6 C.4 D.0
时间: 2024-04-03 11:31:52 浏览: 15
1)×,输入的字符串可以包含其他字符,如数字、符号等。
2)×,改为“i=0”后,程序会将字符串中的第一个字符改为‘B’,覆盖之前的字符,而不是在其后添加。
3)×,改为“j<n”后,程序会将字符串str1和str2的所有字符都拼接在一起,输出结果会改变。
4)×,改为i=n后,程序会将“#”添加到字符串str1末尾,而不是在字符串中间。
5)B,输出结果为“Bar-is-ni##ce”
6)C,str1最多发生改变的字符个数为4,即“Bar-is- nice##"
7)B,str1最少发生改变的字符个数为6,即“Bar-is- ni##ce”中的“#”
相关问题
c程序设计本题要求提取一个字符串中的所有数字字符,将其转换为一个整数输出
可以使用字符数组来存储字符串,然后遍历该数组,判断每个字符是否为数字字符,如果是,则将其转换为数字并累加到整数中。以下是一个示例代码:
```c
#include <stdio.h>
#include <ctype.h> // 包含isdigit函数的头文件
int main() {
char str[100];
int num = 0;
printf("请输入字符串: ");
scanf("%s", str);
for (int i = 0; str[i] != '\0'; i++) {
if (isdigit(str[i])) {
num = num * 10 + str[i] - '0';
}
}
printf("提取出来的数字是: %d\n", num);
return 0;
}
```
在上面的代码中,我们使用了`isdigit()`函数来判断字符是否为数字字符,该函数在`ctype.h`头文件中定义。如果字符是数字字符,则将其转换为数字并累加到`num`中,这里的转换使用了ASCII码表中字符`'0'`到`'9'`的连续性质。最后输出得到的整数即可。
在main函数中定义一个字符数组,存放用户输入的字符串。利用指针变量指向字符数组的首个元素以及最后一个元素。设计一个循环判断输入的字符串是否为回文字符串(回文字符串是指顺读和倒读都一样的字符串)。输出
这道题的意思是,在main函数中定义一个字符数组,存放用户输入的字符串。利用指针变量指向字符数组的首个元素以及最后一个元素。设计一个循环判断输入的字符串是否为回文字符串(回文字符串是指顺读和倒读都一样的字符串)。输出。