文档库 最新最全的文档下载
当前位置:文档库 › 以下程序的输出结果是

以下程序的输出结果是

以下程序的输出结果是
以下程序的输出结果是

以下程序的输出结果是_____。

int ast(int x, int y, int *cp, int *dp)

{ *cp = x + y;

*dp = x - y;

}

main()

{ int a, b, c, d;

a = 4;

b = 3;

ast(a, b, &c, &d);

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

}

以下程序的输出结果是_____。

main()

{ int a[] = {2, 4, 6}, *prt = &a[ 0], x = 8, y, z;

for(y = 0; y < 3; y++)

z = (*(prt + y) < x ) ? *(prt + y) : x;

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

}

执行以下程序后的输出结果是_____。

main()

{

int a, b, c, d, i, j, k;

a = 10;

b =

c =

d = 5; i = j = k = 0;

for( ; a > b; ++b)

i++;

while( a > ++c )

j++;

do

k++;

while(a > d++);

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

}

执行以下程序段后, s的值是_____

int a[]={5,3,7,2,1,5,3,10},s=0,k;

for(k=0;k<8;k+=2)

s+=*(a+k);

若变量已正确定义,以下语句段的输出结果是_____。

x = 0; y = 2; z = 3;

switch(x)

{ case 0: switch( y == 2)

{ case 1: printf("*"); break;

case 2: printf("%"); break;

}

case 1: switch( z )

{ case 1: printf("$");

case 2: printf("*"); break;

default : printf("#");

}

}

(20)若程序执行时的输入数据是"2473",则下述程序的输出结果是

#include

void main()

{ int cs;

while((cs=getchar())!= '\n')

{switch(cs-'2')

{ case 0:

case 1: putchar(cs+4);

case 2: putchar(cs+4);

break;

case 3: putchar(cs+3); default: putchar(cs+2); } } }

A)668977

B)668966

C)6677877

D)6688766

(21)以下程序的输出结果是

main()

{ int a,i;a=0;

for(i=1;i<5;i++)

{ switch(i)

{ case 0:

case 3:a+=2;

case 1:

case 2:a+=3;

default:a+=5; }

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

A)31 B)13 C)10 D)20

(38)以下程序的输出结果是

int f()

{ static int i=0;

int s=1;

s+=i; i++;

return s; }

main()

{ int i,a=0;

for(i=0;i<5;i++)a+=f();

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

A)20 B)24 C)25 D)15

(39)下列程序的输出结果是

#include "stdio.h"

#define M(x,y) x%y

main()

{ int a,m=12,n=100;

a=M(n,m);

printf("%d\n",a--);}

A)2 B)3 C)4 D)5

若从键盘输入58,则以下程序输出的结果是_____。

main()

{

int a;

scanf("%d",&a);

if(a>50)printf("%d",a);

if(a>40)printf("%d",a);

if(a>30)printf("%d",a);

}

阅读下面程序,程序执行后的输出结果是_____。

#include "stdio.h"

main()

{

int x,y,z;

x = 1; y = 2; z = 3;

if(x>y)

if(x>z)printf("%d",x);

else printf("%d",y);

printf("%d",z);

}

C语言中调用_____函数来打开文件.

调用 fopen 函数打开一文本文件,在"使用方式"这一项中, 以"只读"方式打开需填入_____. 以下程序的输出结果是:

main( )

{ char a[2][5]={"3769","5482"};

int i,j,s=0;

for ( i = 0; i < 2; i++ )

for ( j = 0; a[i][j]>'0' && a[i][j]<='9'; j+=2 )

s=10*s+a[i][j]-'0';

printf("s=%d\n",s);

}

结构体是不同数据类型的数据集合,作为数据类型, 必须先说明结构体_____,再说明结构体变量.

执行下面程序段的输出结果是______.

int x=023,y=5,z;

z=2+(y+=y++,x+8,++x);

printf("%d,%d\n",x,z);

以下程序段,要求通过scanf语句给变量赋值,然后输出变量的值。写出运行时给k输入100,给a输入25.81,给x输入1.89234时,输入形式是_____。

int k; flaot a; double x;

scanf("%d%f%lf", &k, &a, &x);

printf("k = %d, a = %f, x = %f\n", k, a, x);

下列程序的执行结果是_____。

int d = 1;

fun(int p)

{ int d = 5;

d += p++;

printf("%d ", d);

main()

{ int a = 3;

fun(a);

d += a++;

printf("%d", d);

}

以下程序的输出结果是_____。

#define PR(ar) printf("ar=%d ", ar)

main()

{ int j, a[] = { 1, 3, 5, 7, 9, 11, 13, 15}, *p = a + 5;

for(j = 3; j ; j--)

switch( j )

{ case 1:

case 2: PR(*p++); break;

case 3: PR(*(--p) );

}

}

以下程序的运行结果是_____。

#include

void fun(char *s)

{

int i, j, n;

for(i=0; s[i]!='\0'; i++)

if(s[i]>='0' && s[i]<='9')

{n=0;

while(s[i+1+n]!='\0') n++;

for(j=i+n+1; j>i; j--)

s[j+1]= s[j];

s[j+1]='*';

i=i+1;

}

}

main()

{

char s[80]="ba3a54cd23a";

fun(s);

puts(s);

}

以下程序的运行结果是_____。

#include

void fun (char *s, char *t)

{

int i, sl;

sl = strlen(s);

for (i=0; i

t[i] = s[sl - i - 1];

for (i=0; i

t[sl+i] = s[i];

t[2*sl] = '\0';

main()

{

char s[81] = "ABCD", t[81];

fun(s, t);

puts(t);

}

下面程序的执行结果是:

#include "stdio.h"

main()

{ int a=-1,b=1,k;

if((++a<0)&&!(b--<=0))

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

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

}

以下程序的输出结果是( ).

main( )

{ int i,j,x=0;

for(i=0;i<2;i++)

{ x+=2;

for(j=0;j<3;j++)

{ if (j%2) continue;

x++;

}

x++;

}

printf("x=%d\n",x);

}

/*------------------------------------------------

【程序设计】

--------------------------------------------------

功能:将从键盘上输入的每个单词的第一个字母转换为大写字母,输入时各单词必须用空格隔开,用'.'结束输入。

------------------------------------------------*/

#include "stdio.h"

void NONO();

int fun(char *c,int status)

{

/**********Begin**********/

if (*c== ' ') return 1;

else

{

if(status && *c <= 'z' && *c >= 'a')

*c += 'A' - 'a';

return 0;

}

/********** End **********/

}

void main()

{

int flag=1;

char ch;

printf("请输入一字符串,用点号结束输入!\n") ;

do

{

ch=getchar();

flag=fun(&ch, flag);

putchar(ch);

}while(ch!='.');

printf("\n");

NONO();

}

void NONO( )

{

char s1[81], ch;

int i, flag = 1;

FILE *rf, *wf ;

rf = fopen("in.dat", "r") ;

wf = fopen("out.dat", "w") ;

fgets(s1, 80, rf) ;

for(i = 0 ; i < strlen(s1); i++)

{

ch = s1[i] ;

flag = fun(&ch, flag) ;

s1[i] = ch ;

}

fprintf( wf,"%s", s1 );

fclose(rf) ;

fclose(wf) ;

}

/*------------------------------------------------

【程序设计】

--------------------------------------------------

功能:删除所有值为y的元素。数组元素中的值和y的值由主函数通过键盘输入。------------------------------------------------*/

#include "stdio.h"

#include

#include

#define M 20

void fun(int bb[],int *n,int y)

{

/**********Begin**********/

int i,j;

for(i=0;i<*n;)

{

if(bb[i]==y)

{for(j=i;j<*n;j++)

bb[j]=bb[j+1];

*n=*n-1;

}

else

i++;

}

/********** End **********/

}

main()

{

int aa[M],n,y,k;

printf("\nPlease enter n:");scanf("%d",&n);

printf("\nEnter %d positive number:\n",n);

for(k=0;k

printf("The original data is:\n");

for(k=0;k

printf("\nEnter a number to deletede:");scanf("%d",&y); fun(aa,&n,y);

printf("The data after deleted %d:\n",y);

for(k=0;k

printf("\n");

TestFunc();

}

TestFunc()

{

FILE *IN,*OUT;

int n;

int i[10];

int o;

IN=fopen("in.dat","r");

if(IN==NULL)

{

printf("Read File Error");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{

printf("Write File Error");

}

for(n=0;n<10;n++)

{

fscanf(IN,"%d",&i[n]);

}

fun(i,&n,3);

for(o=0;o

{

fprintf(OUT,"%d\n",i[o]);

}

fclose(IN);

fclose(OUT);

}

/*------------------------------------------------------ 【程序改错】:只允许修改错误代码,其他代码不允许修改!

--------------------------------------------------------

功能:求如下表达式:

1 1 1

S = 1 + ---- + ------ + ...... + ---------------

1+2 1+2+3 1+2+3+......+n

------------------------------------------------------*/

#include

void main()

{

int n;

float fun(int n);

printf("Please input a number:");

/**********ERROR**********/

print("%d",n) ; scanf("%d",&n) ; printf("%10.6f\n",fun(n));

}

/**********ERROR**********/

fun(int n) float fun(int n) {

int i,j,t;

float s;

s=0;

for(i=1;i<=n;i++)

{

t=0;

for(j=1;j<=i;j++)

t=t+j;

/**********ERROR**********/

s=s+1/t; s=s+1.0/t;

}

return s;

}

/*------------------------------------------------------

【程序改错】:只允许修改错误代码,其他代码不允许修改!

--------------------------------------------------------

功能:分别统计字符串中大写字母和小写字母的个数。

例如:给字符串 s 输入:AAaaBBb123CCccccd,

则应输出结果:upper = 6, lower = 8。

------------------------------------------------------*/

#include

#include

/**********ERROR**********/

void fun ( char *s, int a, int b ) void fun ( char *s, int *a, int *b ) {

while ( *s )

{

if ( *s >= 'A' && *s <= 'Z' )

/**********ERROR**********/

a++ ; (*a)++ ;

if ( *s >= 'a' && *s <= 'z' )

/**********ERROR**********/

b++; (*b)++;

s++;

}

}

void main( )

{

char s[100]; int upper = 0, lower = 0 ;

printf( "\nPlease a string : " ); gets ( s );

fun ( s, & upper, &lower );

printf( "\n upper = %d lower = %d\n", upper, lower );

}

若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是()。

已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是

若有以下程序段,其输出结果是

int a = 0, b = 0, c = 0;

c = ( a -= a - 5), (a = b, b+3);

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

下面程序的运行结果是

#include

main()

{

int y=10;

do{y--;}while(--y);

printf("%d\n",y--);

}

下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。

#include

main()

{

int i=0,j,k;

do{i++;k=316-13*i;}while(______);

j=k/11;

printf("316=13*%d+11*%d",i,j);

}

有如下程序

#include

main()

{ FILE *fp1;

fp1 = fopen("f1.txt", "w");

fprintf(fp1, "abc");

fclose(fp1);

}

若文本文件f1.txt中原有内容为good,则运行以上程序后文件f1.txt中的内容为

设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。

下列程序段的输出结果是1

第七章数组 一、填空: (1) 下列程序段的输出结果是【1】。 main() { char b[]=”Hello,you”; b[5]=0; printf(“%s \n”, b ); } (2) 以下程序的输出结果是【2】。 main() { char s[]="abcdef"; s[3]=‘\0'; printf("%s\n",s); } (3) 若已定义:int a[10], i;,以下fun函数的功能是:在第一个循环中给前10个 数组元素依次赋1、2、3、4、5、6、7、8、9、10;在第二个循环中使a数组前10个元素中的值对称折叠,变成1、2、3、4、5、5、4、3、2、1。请填空。 fun( int a[ ]) { int i; for(i=1; i<=10; i++) 【3】=i; for(i=0; i<5; i++) 【4】=a[i]; } (4) 若有以下程序 main() { int a[4][4]={{1,2,-3,-4},{0,-12,-13,14} ,{-21,23,0,-24},{-31,32,-33,0}}; int i,j,s=0; for(i=0;i<4;i++) { for(j=0;j<4;j++) { if(a[i][j]<0) continue; if(a[i][j]==0) break; s+=a[i][j]; } } printf("%d\n",s); } 执行后输出结果是【5】 (5) 函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式 如下 1

1 1 1 2 1 1 3 3 1 1 4 6 4 1. 其构成规律是: (1)第0列元素和主对角线元素均为1 (2)其余元素为其左上方和正上方元素之和 (3)数据的个数每行递增1 请将程序补充完整。 #define N 6 void yanghui(int x[N][N]) { int i,j; x[0][0]=1; for(i=1;i

以下程序的输出结果是

main() { int i=0,a=0; while(i<20) { for(;;) { if((i%10)==0) break; else i--; } i+=11; a+=i; } printf("%d\n",a); } C语言的编译预处理就是对源程序进行初步的语法检查。× 若有以下定义和语句:int x=10,*p=&x;*p=x;则两处的*p都用来给指针变量p赋值。× 知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33<回车>,则输出结果是#include main() { char a,b; a=getchar();scanf("%d",&b); a=a-'A'+'0';b=b*2; printf("%c %c\n",a,b); } 1 B 下面程序的执行结果是__0____。 main() { int x=10; do {x--;} while( --x); printf("%d\n",x--); } 有以下程序(注:字符a的ASCIl码值为97) 有以下程序,程序运行后的输出结果是______。 main() { int i; for(i=0;i<3;i++) switch(i) {case 0:printf("%d",i); case 2:printf("%d",i); default:printf("%d",i); }}

fun(int x, int y, int z) { z=x*x+y*y; } main() { int a=31; fun(5,2,a); printf("%d",a); } 下列程序的输出结果是___GDABC___。 # include main( ) { char b[30] , * chp; strcpy(&b[0],"GH"); strcpy(&b[1],"DEF"); strcpy(&b[2],"ABC"); printf("%s \n",b); } include int fun(int (*s)[4],int n, int k) { int m, i; m=s[0][k]; for(i=1; im) m=s[i][k]; return m; } main() { int a[4][4]={{1,2,3,4},{11,12,13,14},{2l,22,23,24}, {31,32,33,34}}; printf("%d\n", fun(a,4,0)); } 程序的运行结果是 31 执行下列程序段后,则(*p)和(*q)的值分别为_6 5_____。 int *p, *q, i=5, j=6; p = &i; q = p; p = &j;后 有以下程序 #include void fun(int *a,int *b) { int *c; c=a;a=b;b=c; } main() { int x=3,y=5,*p=&x,*q=&y;

1 下面程序输出的结果是

1、 下面程序输出的结果是 x=5 y=-20 IF x<0 THEN x=y-3 ELSE y=y+3 END IF PRINT x-y, y-x END 2、 下面程序的作用是求 100 991.......651431211×++×+×+×的值,请补充完整 i=1 s=0 DO s=s+______________ _____________________ LOOP UNTIL _______________ PRINR s END 3、 读程序 甲: i=1 乙: i=1000 s=0 s=0 WHILE i<=1000 DO s=s+i s=s+i i=i+1 i=i-1 WEND LOOP UNTIL i<1 PRINT s PRINT s END END 对甲乙判断正确的是 A 、 程序相同,结果不同 B 、程序不同,结果相同 C 、 程序相同,结果不同 D 、程序相同,结果相同 4、 如果下面程序输出的结果是990,那么“条件”处应填 i=11 s=1 DO s=s *i i=i-1 LOOP UNTIL “条件” PRINT s END

5、程序输出的结果S= i= i=1 WHILE i<8 s=2i+3 i=i+2 WEND PRINT s END 6、将两个数a=8 , b=17 交换,使a=17, b=8. 下面语句正确的一组是 A、a=b B、c=b C、b=a D、a=c b=a b=a a=b c=b a=c b=a 7、下面两个程序最后输出的S分别等于 i=1 i=1 WHILE i<8 WHILE i<8 i=i+2 s=2×i+3 s=2×i+3 i=i+2 WEND WEND PRINT s PRINT s END END A、都是17 B、都是21 C、21, 17 D、14,21 8、下面程序的算法功能是 INPUT x IF x<3 THEN y=2x ELSE IF x>3 THEN y=x^2-1 ELSE y=2 END IF END IF PRINT y END 9、程序运行的结果是 j=1 WHILE j×j<100 j=j+1 WEND j=j-1 PRINT “j=”; j END

相关文档