C语言:13以下能通过 puts(s) 正确输出的选项
13 以下能通过 puts(s) 正确输出的是
*A. char s; s='ABCDE'
分析:
- 选项 A 中,
char *s定义了一个指向字符的指针s。*s='ABCDE'将字符串常量'ABCDE'的地址赋给了指针s。*puts(s)函数会输出指针s所指向的字符串内容,因此选项 A 可以正确输出。
B. char s[5] = 'ABCDE';
分析:
- 选项 B 中,
char s[5]定义了一个长度为 5 的字符数组s。*s='ABCDE'试图将字符串常量'ABCDE'赋给字符数组s,但这种赋值方式是错误的。字符串常量'ABCDE'的长度为 6,而数组s只能容纳 5 个字符。
C. char s[5] = ('ABCDE' 3);
分析:
- 选项 C 中,
char s[5]定义了一个长度为 5 的字符数组s。*('ABCDE' 3)的语法错误,C 语言中没有这种语法。
*D. char s; scanf('%s', s);
分析:
- 选项 D 中,
char *s定义了一个指向字符的指针s。*scanf('%s', s)用于从标准输入读取一个字符串,并将该字符串的地址存储在指针s中。*puts(s)函数会输出指针s所指向的字符串内容,因此选项 D 可以正确输出,但前提是用户输入的内容是正确的。
结论:
选项 A 和 D 可以通过 puts(s) 正确输出。选项 B 和 C 存在语法错误或逻辑错误,无法通过 puts(s) 正确输出。
原文地址: https://www.cveoy.top/t/topic/ngN0 著作权归作者所有。请勿转载和采集!