C语言一道简单的选择题
定义如下数组s:chars[40];若准备将字符串“Thisisastring.”记录下来下面那个是错误的??(A)gets(s+2)(B)scanf("%20s",s)...
定义如下数组s: char s[40]; 若准备将字符串“This is a string.”记录下来 下面那个是错误的?? (A)gets(s+2) (B)scanf("%20s",s) (C)for(i=0;i<17;i++) s[i]=getchar(); (D)while((c=getchar())!='\n') s[i++]=c; 请问应该选哪个?? 请将每个选项都解释一下 因为我都看不懂
展开
2个回答
展开全部
b错的,因为空格的时候就结束记录了
a输入字符组,+2表示输入两个空格
c中getchar()只取一个字符,循环取值分别把字符放入s[0]——s[16]中
d和c差不多,while循环,在检测到回车字符时结束循环
a输入字符组,+2表示输入两个空格
c中getchar()只取一个字符,循环取值分别把字符放入s[0]——s[16]中
d和c差不多,while循环,在检测到回车字符时结束循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询