C语言选择题,急

1.选择题(1-4题,每题1分,5-6题,每题2分,共8分)(1)基于C语言,对以下语句的数组赋初值问题,理解正确的是()。inta[10]={1,2,3,4,5};A.... 1.选择题(1-4题,每题1分,5-6题,每题2分,共8分)
(1)基于C 语言,对以下语句的数组赋初值问题,理解正确的是( )。
int a[10]={1,2,3,4,5};
A. 将5 个初值依次赋给a[1]至a[5],其他元素值为0
B. 将5 个初值依次赋给a[0]至a[4],其他元素值为0
C. 将5 个初值依次赋给a[6]至a[10],其他元素值为0
D. 因为数组长度与初值的个数不相同,所以此语句不正确
(2)若有”char a[20]; scanf("%s",a); printf("%s",a);”语句 ,则当输入串为”Hello World!”时,程序的执行结果是
A.H B.Hello C.Hello World D.Hello World!
(3) 在C 语言中,函数返回值的类型是由( )。
A. C 语言的编译程序,在程序编译时决定
B. 由调用该函数的主调函数所决定
C. 由return 语句的表达式的类型所决定
D. 由定义该函数时指定的函数类型所决定
(4) 以下叙述中正确的是( )。
A. 全局变量的作用域一定比局部变量的作用域范围大
B. 静态(static)类别变量的生存期贯穿于整个程序的运行期间
C. 函数的形参都属于全局变量
D. 未在定义语句中赋初值的auto 变量和static 变量的初值都是随机值
(5) 下列程序的输出结果是( )。
#include <stdio.h>
main( )
{
char ch[7]="12ab56";
int i,s=0;
for(i=0;ch[i]>'0'&&ch[i]<='9';i+=2)
s=10*s+ch[i]-'0';
printf("%d\n",s);
}
A. 1 B. 1256 C. 12ab56 D. ab
(5) 下列程序的输出结果是( )。
#include <stdio.h>
int fun(int x,int y)
{
if(x!=y) return y;
else return(x*2+y/2);
}
void main(){
int a=1,b=2,c=3;
printf("%d\n",fun(2*a,fun(b,c)));
}
A. 1 B. 2 C. 3 D. 4
展开
 我来答
Cindere鞡
2013-06-04 · TA获得超过7250个赞
知道大有可为答主
回答量:1148
采纳率:84%
帮助的人:492万
展开全部
第一题:B。数组赋值是依次从第一个开始赋值,若赋值元素少于数组大小,则未被赋值的元素自动为0。第二题:B。scanf函数读取值时,遇到第一个空格时不管怎样都结束读取。第三题:D。自己定义的函数,返回值类型也由自己定义。第四题:A。全局变量作用与整个代码中,而局部变量只作用与定义它的代码块中。第五题:A。第一个元素为1,符合条件判断,然后字符1与字符0相减得1,而s=0,所以s为1,之后i变为2,就是取第三个元素,字符a,不符合条件判断,结束循环,s仍为1。最后一题:C。这是个递归函数,只要两个参数不相等就返回后边参数的值,分析判断后,2乘以a仍小于c,所以输出3。
希望我的回答能帮助到你。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式