哪位专业人士能帮我下啊,C语言类的题。我需要这些题的答案。谢谢。

(19)下列描述中不正确的是A)字符型数组中可以存放字符串B)可以对字符型数组进行整体输入、输出C)可以对整型数组进行整体输入、输出D)不能在赋值语句中通过赋值运算符"=... (19) 下列描述中不正确的是
A) 字符型数组中可以存放字符串
B) 可以对字符型数组进行整体输入、输出
C) 可以对整型数组进行整体输入、输出
D) 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值
(21) 当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是
A) c=b=a; B) (a=c) ‖(b=c) ;
C) (a=c) &&(b=c); C) a=c=b;
(22) 以下程序的输出结果是
A) 10 1 9 2 B) 9 8 7 6 C) 10 9 9 0 D) 10 10 9 1
main( )
{ int x=10,y=10,I;
for(i=0;x>8;y= i)
printf("%d,%d ",x--,y);
}
(23) 以下程序的输出结果是
A) 5 2 B) 5 1 C) 5 3 D) 9 7
main( )
{ int i,x ={9,8,7,6,5,4,3,2,1},*p=&x..;
for(i=0;i<4;i =2)printf("%d ",p);
}
(24) 以下程序的输出结果是
A)6 B) 6789 C) '6' D) 789
main( )
{ char a.={'1','2','3','4','5','6','7','8','9',0},*p;
int i;
i=8;
p=a I;
printf("%s ",p-3);
}
(25) 以下程序的运行结果是
A) 运行后报错 B) 6 6 C) 6 12 D) 5 5
#include "stdio.h"
main( )
{
int a[ ]={1,2,3,4,5,6,7,8,9,10,11,12,};
int *p=a 5, *q=NULL;
* q=*(p 5);
printf("%d %d ",*p,*q);
}
(26) 以下说法中正确的是
A) #define和printf都是C语句 B) #define是C语句,而printf不是
C) printf是C语句,但#define不是 D) #define和printf都不是C语句
(27) 语句:printf("%d ",12 &012);的输出结果是
A) 12 B) 8 C) 6 D) 012
(28) 能正确表示a和b同时为正或同时为负的逻辑表达式是
A) (a>=0‖b>=0)&&(a<0‖b<0)
B) (a>=0&&b>=0)&&(a<0&&b<0)
C) (a b>0)&&(a b<=0)
D) a*b>0
(29) 以下程序的输出结果是
A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 0
main( )
{ int n=4;
while(n--)printf("%d ",--n);
}
(30) 若已定义:int a.,*p=a;并在以后的语句中未改变p的值,不能表示a 地址的表达式是
A) p 1 B) a 1 C) a D) p
(31) 以下程序的输出结果是
A) 17,021,0x11 B) 17,17,17
B) 17,0x11,021 D) 17,21,11
main( )
{ int k=17;
printf("%d,%o,%x ",k,k,k);
}
(32) 以下程序的输出结果是
A) -1 1 B) 0 1 C) 1 0 D) 0 0
main( )
{ int a= -1,b=1,k;
if(( a<0)&& ! (b-- <=0))
printf("%d %d ",a,b);
else
printf("%d %d ",b,a);
}
(33) 若有说明:long *p,a;则不能通过scanf语句正确给输入项读入数据的程序段是
A) *p=&a; scanf("%ld",p);
B) p=(long *)malloc(8); scanf("%ld",p);
C) scanf("%ld",p=&a);
D) scanf("%ld",&a);
(34) 以下选项中,能定义s为合法的结构体变量的是
A) typedef struct abc B) struct
{ double a; { double a;
char b.; char b.;
} s; } s;
C) struct ABC D) typedef ABC
{ double a; { double a;
char b.; char b.;
} }
ABC s; ABC s;
(35) 和语句,则在执行for语句后,*(*(pt l) 2)表示的数组元素是
A) t [0] B) t C) t[l] D) t [l]
int t , *pt( , k;
for (k=0;k<3;k ) pt[k]=&t[k][0];
(36) 下面程序把数组元素中的最大值放入a[0]中。则在if 语句中的条件表达式应该是
A) p>a B) *p>a[0] C) *p>*a[0] D) *p[0]> *a[0]
main( )
{ int a.={6,7,2,9,1,10,5,8,4,3},*p=a,I;
for(i=o;i<10;i ,p )
if(________) *a=*p;
printf("%d",*a);
}
展开
 我来答
凡昊战0M
2010-02-21 · TA获得超过114个赞
知道答主
回答量:39
采纳率:0%
帮助的人:60.2万
展开全部
你好,希望以下的答案对你有一定帮助:
19.C 解析:A显然是正确的,字符串就是用字符型数组存放的,B答案是正确的,因为字符串可以整体输入(仅在说明语句中可以)、输出(在执行语句中可以),D答案正确,只能在说明语句中进行此操作。C错,可以在执行语句整体输入,但不能整体输出,一般用For循环控制输出。
21.BC 解析:理解赋值运算符是将=右边的值赋给左边的变量,且结合性为右结合。即A的意思是将a的值赋给b,再将b的值赋给c,错。B,C先执行括号内的语句,均将c赋给了a,b,正确。D错,它的意思是将b的值赋给c,再将c(此时c的值为b的值)赋给a。
22.D(?) 解析:第一次:x=10,y=10进入循环体,x--由于自减运算符为后缀形式,故表达式的值仍为10,x=9,因此输出10,10.第二次:x=9,y=0进入循环体,x--表达式的值为9,x=8,y=0因此输出9,0.我想楼主是不是把“y=i”打错了,如果是“y=i++”那么第二次就输出9,1了,答案就是D了
23.D(?) 解析:首先题目有点问题,x是数组不能这么写,应写成x[ ]才行;第3行“i=2”错误,这样程序陷入死循环,应该是“i+=2”吧,“p”应该是“p[i]”吧。。。如果是这样,由于p指向数组x的首地址,第一次输出的是9,第二次输出的是7.
楼主,不好意思啊,做不下去了,你先把题目改一下吧,我按答案猜题目肯定会有错误的。等你改好题目后再回答吧~~
hawkju
2010-02-21 · 超过12用户采纳过TA的回答
知道答主
回答量:58
采纳率:100%
帮助的人:16.7万
展开全部
24.题目如果如下,输出结果是:6789
void main( )
{ char a[]={'1','2','3','4','5','6','7','8','9',0},*p;
int i;
i=8;
p=a+i;
printf("%s ",p-3);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式