(14)以下程序运行后的输出结果是 【14】 。#include <stdio.h>#include <stdlib.h>#inc

题目

(14)以下程序运行后的输出结果是 【14】 。

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

main()

{ char *p; int i;

p=(char *)malloc(sizeof(char)*20);

strcpy(p,"welcome");

for(i=6;i>=0;i--) putchar(*(p+i));

printf("\n "); free(p);

}

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

第1题:

以下程序运行后的输出结果是【】。 include using namespace std; int main() {int i=10,

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

include<iostream>

using namespace std;

int main()

{

int i=10,i:0;

do{

j=j+i;

i--;

}while(i>2);

cout<<j<<end1;

return 0;

}


正确答案:52
52 解析:do-while语句的特点:先执行循环体,后判断条件。第1次循环执行后,j和i的值分别为10和9。判断循环条件为真,继续执行循环体,j和i分别为19和8。继续上述执行过程,直到i的值为2时,表达式“2>2”不再成立,退出循环。此时j的值为52。

第2题:

以下程序运行后的输出结果是【】include main ( ) {char a[] ="123456789", *p;int i =0;

以下程序运行后的输出结果是【 】

include <stdio.h>

main ( )

{ char a[] ="123456789", *p;

int i =0;

p=a;

while( * p)

{ if(i%2 ==0) *p='*';

p++;i++;

}

puts(a);

}


正确答案:*2*4*6*8*
*2*4*6*8* 解析:程序中指针p指向数组a,while(*P)语句的循环条件是* p!='\0',在循环体中,当 i=0,2,4,6,8时,i%2=0,执行*p='*',即a[i]='*',继续执行p++;i++;使i为奇数;当i=1, 3,5,7时,i%2=1,继续执行p++;i++;使i为偶数。可见,程序在字符串"123456789",的下标为偶数的位置上赋值'*',代替原字符串中的1,3,5,7,9。所以,程序输出结果为*2*4*6*8*。

第3题:

( 21 )有以下程序

# include ( stdio.h >

main ()

{ int a = l ; b = 2 ;

for ( ; a < 8 ; a++ ) { b+=a ; a+=2 ; }

printf ( " %d , %d \ n ", a , b ) ;

}

程序运行后的输出结果是

A ) 9 , 18

B ) 8 , 11

C ) 7 , 11

D ) 10 , 14


正确答案:D

第4题:

有以下程序 include main( ) { printf("%d\n",NULL); } 程序运行后的输出结果是

有以下程序

#include <stdio.h>

main( )

{ printf("%d\n",NULL); }

程序运行后的输出结果是

A.0

B.1

C.-1

D.NULL没定义,出错


正确答案:A
解析:因为在头文件stdio.h中,已对NULL作了宏定义,其值为0。

第5题:

下面程序运行输出的结果是【】。 include using namespace std; int main(){char a[]="C

下面程序运行输出的结果是【 】。

include <iostream>

using namespace std;

int main(){

char a[]="Chinese";

a[3]='\0';

cout<<a<<endl;

return 0;

}


正确答案:Chi
Chi 解析:字符串的结束标识是'\0',输出字符串时,到第一个'\0'输出结束,而不管其后是否还有数据,因此本题输出为字符中的前3个字符。

第6题:

以下程序的输出结果是【】。 include void main( ) } int a=0; a+=(a=8); cout<

以下程序的输出结果是【 】。

include<iostream.h>

void main( )

}

int a=0;

a+=(a=8) ;

cout<<a;

}


正确答案:16
16 解析:赋值表达式的值就是所赋值变量的值,本题中a+=8相当于a=a+8,对表达式逐步进行求解:a+=(a=8)此时,a的值由于赋值为8,而不是o
a+=8
a=a+8
a=16
注意: 要掌握“+=”等相关运算符的用法。

第7题:

以下程序运行后的输出结果是( )。 include main(){ int a=1, b=7; do { b=b/2; a+=b

以下程序运行后的输出结果是( )。

include<stdio.h>

main()

{ int a=1, b=7;

do {

b=b/2; a+=b;

} while(b>1);

printf("%d\n",A);

}


正确答案:5
5 解析:该程序考查do-while循环。循环共进行两次。第一次循环b=3,a=4;第二次循环b=1,a=5。输出a的值为5。

第8题:

( 8 )有以下程序

#include <stdio.h>

main ()

{ int m,n;

scanf ( " %d%d " ,&m,&n ) ;

while ( m!=n )

{ while ( m>n ) m=m-n;

while ( m<n ) n=n-m;

}

printf ( " %d\n " ,m ) ;

}

程序运行后,当输入 14 63 < 回车 > 时,输出结果是 【 8 】 。


正确答案:




第9题:

以下程序的输出结果是【】。 include include void main 0 { char s[50]; st

以下程序的输出结果是【 】。

include<iostream.h>

include <string.h>

void main 0 {

char s[50];

strcpy(&s[O], "No" );

strcpy(&s[1], "123" );

strcpy (&s[2], "23456" );

cout<<s;

}


正确答案:N123456
N123456

第10题:

有以下程序:include main() {int a[] = {2,4,6,8,10} ,y =0,x, * p;p =&a[1];for(

有以下程序: #include <stdio.h> main() { int a[] = {2,4,6,8,10} ,y =0,x, * p; p =&a[1]; for(x=1;x<3;x++)y+ =p[x]; printf( "% d \n" , y); }程序运行后的输出结果是( )。

A.10

B.11

C.14

D.15


正确答案:C
解析:本程序通过语句p=&a[1];将指针变量p指向存储单元a[1],使得p[0]的值为4,通过for循环,使y的值丸P[1]与p[2]之和,即y=6+8,所以输出的y值为14。

更多相关问题