1、#include <stdio.h>
  void main()
  { int i=1,j=1,k=2;
  if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k);
  }
结果:2,2,2
2、设 a、b、c、d、m、n均为 int型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式 (m=a>b)&&(n=c>d)运算后,n的值?
结果:2
3、若从键盘输入58,则以下程序输出的结果是  585858    。
main()
{ int a;
scanf("%d",&a);
if(a>50) printf("%d",a);
if(a>40) printf("%d",a);
if(a>30) printf("%d",a);
}
4、以下程序的输出结果是  261  。
main()
{ int a=177;
printf("%o\n",a);
}
5、以下程序的输出结果是    16      。
main()
{ int a=0
a+=(a=8);
printf("%d\n",a);
}
6、以下程序输出的结果是  0 
main()
{ int a=5,b=4,c=3,d;
d=(a>b>c);
printf("%d\n",d);
}
7、以下程序运行时的输出结果是 1,0,1
# include <stdio.h>
main()
{ int a=0, b=0, c=0;
  if (a++&&(b+=a)||++c) printf("%d,%d,%d\n",a,b,c);
}
8、若有以下程序
main()
{ int p,a=5;
if(p=a!=0)
printf("%d\n",p);
else
printf("%d\n",p+2);
}
执行后输出结果是  1 
9、若有以下程序
main()
{ int a=4,b=3,c=5,t=0;
if(a<b)t=a;a=b;b=t;
if(a<c)t=a;a=c;c=t;
printf("%d %d %d\n",a,b,c);
}
执行后输出结果为 5 0 3
10、以下程序运行后的输出结果是52
main()
{ int i=10, j=0;
do
{ j=j+i; i--;}
while(i>2);
printf(“%d\n”,j);
}
11、设有以下程序:
main()
{ int n1,n2;
scanf(“%d”,&n2);
while(n2!=0)
{ n1=n2%10;
n2=n2/10;
printf(“%d”,n1);
}
}
程序运行后,如果从键盘上输入4563;
则输出结果为 3654  。
12、printf(“AB\t\\141\141f\n”)引号内占多少个字节
10个字节
13、以下程序的输出结果是
main()
{int s,i;
for(s=0,i=1;i<3;i++,s+=i);
printf("%d\n",s);}
14、以下程序段的输出结果是1 -2
int x=3;
do
{printf("%3d",x-=2); }
while(!(- -x));
15、以下程序的输出结果是    1   
main()                        2
{ int num= 0;                  3  。    
while(num<=2)
{ num++; printf(“%d\n”,num)};
}
17、以下程序的输出结果是 4
main()
{ int a, b;
for(a=1, b=1; a<=100; a++)
{ if(b>=10) break;
if (b%3= =1)
{ b+=3; continue; }
}
printf(“%d\n”,a);
}
18、设有以下程序:
main()
{ int n=4;
while (n--)
printf(〞%d〞,--n);
}
则输出结果为 20  。
19、以下程序的输出结果是 101091 。
main()
{int x=10,y=10,i;
for(i=0;x>8;y=++i)
printf("%d%d",x--,y);
}
20、执行以下程序后输出的结果是0。
main()
{ int y=10;
do{y--;}while(--y);
printf("%d\n",y--);
}
21、下面程序的输出结果是x=5,y=4,a=1
main()
{ int x=3,y=6,a=0;
while (x++!=(y-=1))
{a+=1;
if (y<x) break;
}
printf("x=%d,y=%d,a=%d\n",x,y,a);
}
22、若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是 20。
for (i=5;i;i--)
for (j=0;j<4;j++)
{…}
23、#include<stdio.h>
main()
{int x=1,y=0,a=0,b=0;
switch(x)
{case 1:switch(y)
          {case 0:a++;break;
            case 1:b++;break;
            }
case 2:a++;b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
上面程序的输出结果是a=2,b=1。
24、下面程序的运行结果为12457810。
main()
{ int n;
for(n=1;n<=10;n++)
{ if(n%3==0)continue;
printf("%d",n);
}
}
25、若已定义: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++) a[i-1]   =i;
for(i=0; i<5; i++)  a[9-i] =a[i];
}
26、该程序执行时输出第一行是 1 4 3 ,第二行是 2 5 8
  main()
  {
      int a[3][3]={1,2,3,4,5,6,7,8,9}, m, k, t;
      for (m=0;m<3;m++)
          for (k=0;k<=m;k++)
              if ((m+k)%2)
                  t=a[m][k], a[m][k]=a[k][m], a[k][m]=t;
      for (m=0;m<3;m++)
              {for (k=0;k<3;k++)
          printf("%d",a[m][k]);
          printf("\n");
                }
  }
27、若有以下程序
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);
}
执行后输出结果是   58 
29、以下程序的输出结果是 0 6 5 0
main()
{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf(“%d%d%d%d\n”,a[0][3],a[1][2],a[2][1],a[3][0]; }
31、若有定义:int  b[3][4]={0};则下述正确的是( C) 。 
A. 此定义语句不正确
B. 没有元素可得初值0
C. 数组b中各元素均为0
D. 数组b中各元素可得初值但值不一定为0
32、若有以下数组定义,其中不正确的是(D) 。
A. int  a[2][3];
B .int  b[][3]={0,1,2,3};
C. int  c[100][100]={0};
D. int  d[3][]={{1,2},{1,2,3},{1,2,3,4}};
33、下述对C语言字符数组的描述中错误的是(C)。 
A. 字符数组可以存放字符串
B. 字符数组中的字符串可以整体输入、输出
C. 可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
D. 不可以用关系运算符对字符数组中的字符串进行比较
34、下述对C语言字符数组的描述中正确的是 (A)。
()c语言是啥A. 任何一维数组的名称都是该数组存储单元的开始地址,且其每个元素按照顺序连续占存储空间
B. 一维数组的元素在引用时其下标大小没有限制
C. 任何一个一维数组的元素,可以根据内存的情况按照其先后顺序以连续或非连续的方式占用存储空间
D. 一维数组的第一个元素是其下标为1的元素

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