问一个c++选择题的问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 01:41:54
我是初学者,有答案。只是要知道为什么。会解答者诚心求教之,光写答案者藐视之,凑分者鄙视之,

1. 用双引号 "" 括起来的字符,不管有几个,一概当做字符串看待,所以 A 形参类型不对

2.str是一个数组,gets()重载了开能为 数组名 的函数,所以是正确的
而 scanf()的用法是,for(int i=0;i<20;i++) scanf("%c",str[i]);

题一:
A的调用方法是错误的。因为第一个参数是必须字符型的,它带双引号就表示成字符串型的了。
C带的是单引号表示字符型的。
--------------
题二:
要求输入的是字符串,长度可能比20要少,gets()以回车表示输入结束。它会自动在末尾加上串结束符‘\0’.
而C呢?它是要你必须输入20个字符,不够20个还不行,就算你输入回车符它也不会结束,还把回车写入那个数组中,这并不是题目想要的。

第一题怎么会选C呢。函数 void fun() 无返回值, 怎么能赋值给一个变量呢。
难道你拿到的答案是C,那我就晕了。
第一题应该选D。 65表示 'A'