以下程序的运行结果是()#define MAX 10int a[MAX],i;main(){ printf("\n");sub1();sub3(A) ,sub2

题目

以下程序的运行结果是( ) #define MAX 10 int a[MAX],i; main() { printf("\n");sub1();sub3(A) ,sub2(),sub3(A) ; } sub2() { int a[MAX],i,max; max=5; for(i=0;i<max;i++)a[i]=i; } sub1() {for(i=0;i<MAX;i++)a[i]=i+i; } sub3(int a[]) { int i; for(i=0;i<MAX,i++)printf("%d",a[i]); printf("\n"); }

A.0 2 4 6 8 10 12 14 16 18 0 1 2 3 4

B.0 1 2 3 4 0 2 4 6 8 10 12 14 16 18

C.0 1 2 3 4 5 6 7 8 9 0 1 2 3 4

D.0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序段运行后的结果是__________ int x=5,y=8,max; max=(x>y)?x:y; printf("%d",max);

A.6

B.13

C.3

D.8


A

第2题:

●试题二

阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

该程序运行后,输出下面的数字金字塔

【程序】

include<stdio.h>

main ()

{char max,next;

int i;

for(max=′1′;max<=′9′;max++)

{for(i=1;i<=20- (1) ;++i)

printf(" ");

for(next= (2) ;next<= (3) ;next++)

printf("%c",next);

for(next= (4) ;next>= (5) ;next--)

printf("%c",next);

printf("\n");

}

}


正确答案:
●试题二【答案】(1)(max-′0′)(2)′1′(3)max(4)max-1(5)′1′【解析】该程序共有9行输出,即循环控制变量max的值是从1~9。每行输出分3部分,先用循环for语句输出左边空白,(1)空填"(max-′0′)";再用循环输出从1到max-′0′的显示数字,即(2)空和(3)空分别填1和max;最后输出从max-′1′~1的显示数字,即(4)空和(5)空分别填和max-1和′1′。

第3题:

有以下程序includesub1(char a,char B) {char c;c=a;a=b;b=c;}sub2(char *a,char B) {

有以下程序 #include<stdio.h> sub1(char a,char B) {char c;c=a;a=b;b=c;} sub2(char *a,char B) {char c;c=*a;*a=b;b=c;} sub3(char *a,char *B) {char c;c=*a;*a=*b;*b=c;} main() { cha,a,b; a='A';b='B';sub3(&a,&b) putchar(a);putchar(b); a='A';b='B';sub2(&a,b) ;putchar(a);putchar(b); a='A';b='B';sub1(a,b) ;putchar(a);putchar(b); } 程序运行后的输出结果是( )

A.BABBAB

B.ABBBBA

C.BABABA

D.BAABBA


正确答案:A

第4题:

以下程序的运行结果是【】。

define MAX(a,b)(a>b?a:b)+1

main()

{ int i=6,j=8,k;

printf("%d\n",MAX(i,j));

}


正确答案:

本题考查宏定义与三目运算符的综合用法,宏定义是原样替换,本题中,如果a>b成立,则a+1的值为整个表达式的值,否则为b+1的值为整个表达式的值,(应注意后面的加1)。

第5题:

有以下程序

#include <stdio.h>

void func(int n)

{ int i;

for(i=0;i<=n;i++) printf(”*”);

printf(”#”).

}

main( )

{ func(3); printf(”???? ”); func(4); printf(”\n”); }

程序运行后的输出结果是

A)****#????***#

B)***# ????*** *#

C)**#????*****#

D)****#????*****#


正确答案:D
【答案】D
【知识点】函数调用中形参与实参的关系
【解析】第一次调用实参为3,所以形参变量n为3,打印四个*号后打印一个#号。然后在主函数中打印四个?。再次调用func函数,实参值为4,所以形参n的值为4,按照循环,打印五个*号后结束循环,再打印一个#号。

第6题:

下面程序的执行结果是______。 #define MAX 10 nt a[MAX],i; main() { printf("\n"); sub1();sub3(A) ; sub2();sub3(A) ; } sub1() {for(i=0;i<1MAX;i++) a[i]-i+i; } sub2() {int a[MAX],i,max; max=5; for(i=0;i<max;i++) a[i]=i; } sub3(int a[]) { int i; for(i=0;i<MAX;i++) printf("%d",a[i]); printf("\n"); }

A.0 2 4 6 8 10 12 14 16 18 0 1 2 3 4

B.0 1 2 3 4 0 2 4 6 8 10 12 14 16 18

C.0 1 2 3 4 5 6 7 8 9 0 1 2 3 4

D.0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18


正确答案:D
解析:函数sub1给全局作用范围内数组a(长度为10)的每个元素赋值,函数sub2中数组a仅在本函数范围内有效,长度也是10,但仅给前5个元素赋值,main函数调用sub3时,传递数组地址均是全局作用范围内数组a的地址,因此两次调用打印的结果相同。

第7题:

下列程序输出的结果是()。includesub1(char a,char b){char c:c=a:a=b:b=c; }sub2(char

下列程序输出的结果是( )。 #include<stdio.h> sub1(char a,char b) {char c:c=a:a=b:b=c; } sub2(char*a,char b) {char c:c=*a;”a=b;b=c;} sub3(char*a,char*b) {char c;c=*a;”a=*b;*b=c;} void main() { char a,b; a='A';b='B':sub1(a,b);putchar(a):putchar(b): a='A';b='B'; sub2(&a,b);putchar(a);putchar(b); a='A';b='B'; sub3(&a,&b);putchar(a);putchar(b); putchar('\n'); }

A.ABABAB

B.ABBBBA

C.ABBABA

D.ABABBA


正确答案:B

第8题:

请补充main函数,该函数的功能是:从键盘输入一组整数,使用条件表达式找出最大的整数。当输入的整数为0时结束。

例如,输入1,2,3,5,4,0时,最大的数为5。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写出的若干表达式或语句。

试题程序:

include<stdio.h>

include<conio.h>

define N 100

main()

{

int num[N];

int i=-1;

int max=0;

clrscr();

printf("\nInput integer number:\n");

do

{

i++;

printf("num[%d]=",i);

scanf("%d",【 】);

max=【 】num[i]:max;

}while (【 】);

printf("max=%dkn",max);

}


正确答案:&num[i] maxnum[i]? num[i]!=0
&num[i] maxnum[i]? num[i]!=0 解析:第一空:注意掌握标准输入函数scanf()的调用格式,输入参数列表中变量前面要使用求址运算符&。第二空:注意掌握条件表达式的用法,当输入的数比最大值大时,则认为此输入的数为最大值,否则最大值不变。第三空:题目要求输入的整数以0结束,所以,当输入的数不为0时,继续do—while循环,否则终止循环。

第9题:

以下程序的运行结果是【6】。

#define MAX (a,b)(a>b?a:b)+1

main ()

{ int i=6,j=8,k;

printf ("%d\n",MAX(i,j));

}


正确答案:
9