三、程序阅读题(共25分,每题5分)
1、写出下面程序的输出结果       
#include<stdio.h>
int main()
{   
        int x=1,y=2;
        for( ; x<10 ; x++)
        {
            x+= 2;
            if ( x>7 )    break;
            if ( x==6 ) continue;
            y *= x;
        }
        printf("%d %d\n",x,y);
        return 0;
}
2、写出下面程序的输出结果       
#include <stdio.h>
int Square(int i)
{
        return  i * i;
}
int main( )
{
        int i = 0;
        i = Square(i);
      for( ; i<3; i++)
    {
            static int i = 1;
              i += Square(i);
              printf("%d ", i);
    }
    printf("%d\n", i);
        return 0;
}
3、写出下面程序的输出结果       
#include <stdio.h>
void swap(int *a, int b)
{   
    int m, *n;
    n=&m;
    *n=*a;
    *a=b;
    b=*n;
}
int  main()
{   
    int x=8,y=1;
    swap(&x,y);
    printf("%d  %d\n",x,y);
    return 0;
}
4、写出下面程序的输出结果        c语言编程常见错误集锦
#include<stdio.h>
struct node
{
    int data;
    struct node *next;
};
int main()
{
    struct node array[4]={{11},{22},{33}}, *p;
    for( p=array ; p<array+3 ; p++ )
    p->next = p+1;
    p->next = 0;
    p=array;
    while ( p != '\0' )
    {
    printf("%d  ",p->data);
    p=p->next;
    }
    printf("\n");
    return 0;
}
5、写出下面程序的输出结果       
#include <stdio.h>
void fun(char str[ ])
    int i,j;
    for (i=0,j=0;str[i];i++)
        if ( str[i]>='0'&&str[i]<='9')  str[j++]= str[i];
    str[j]='\0';
}
int main()
{       
char str[100]="By the end of February of 2010, the total number of the teaching staff in NUPT has reached 1622.";
      fun(str);
      printf("%s\n",str);
        return 0;
}
答案:
题号
答案
评分详细说明
1
9 6
2
2 6 42 3
3
1  1
4
11 22 33 0
5
20101622
三、读程序写结果(共25分,每题5分)
1 #include <stdio.h>
#include <math.h>
int  main( )
{  int i,j,k;
    for (i=11;i<20;i=i+2)
{  k=(int)sqrt(i);
for (j=2;j<=k;j++)
if (!(i%j))  break;
              if (j>k) printf("%d,",,i);
}   
return 0;
}
程序的输出结果是:________________________
2、 #include <stdio.h>
int x;
void f1(  );
void f2(int);
int main( )
    int i;
    for (i=1;i<=2;i++)
    {  x++;
        f1(  );
          f2(x);
        printf("%d,",x);
    }
return 0;
}
void f1(  )
  int x=3;
    printf("%d,",x++);
}
void f2(int y)
{  static int x=3;
    printf("%d,",y+x);
      x++ ;  y++ ;
}
程序的输出结果是:_______________
3、 #include <stdio.h>
#include <string.h>
void f(char *a,int n)
  char *p=a+n-1;
  char t;
  for (;a<p;a++,p--)
  {
      t=*a;
      *a=*p;
      *p=t;
  }
}
int main(  )
{
    char str[]="ABCDEFG";
    f(str,strlen(str));
    puts(str);
    return 0;
}
程序的输出结果是:_________________
          4、#include<stdio.h>
void f(int x)
{
            if (!x) return;   
            printf("%d,",x%10);
            f(x/10);
}
int main( )
              f(234);
            return 0;
}
程序的输出结果是:__________________________________
5、 #include<stdio.h>
  int x;
    int main( )
   
        switch(x)
      {
      case 0:  printf(“@”);
case  1:  printf(“!”); break;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。