C语言练习

来源:互联网 发布:数据库resource权限 编辑:程序博客网 时间:2024/06/06 09:23
1、已知 ch 是字符型变量,下面不正确的赋值语句是_A__。
a. ch='a+b'; b. ch='\0'; c. ch='7'+'9'; d. ch=5+9;
【A是字符串所以错。。。D可以隐式转换所以对】

2、若整数值范围是 -32768 至 32767。在执行下面的表达式之后, i 的结果是什么?
int i=32766;
i=i+1; i =____32767___
i=i+1; i =____-32768___


3、求100以内的素数,全部打印出来




4、编写一个程序,求出满足下列条件的四位数:该数是个完全平方数,且第一、三位数字之和为10,第二、四位数字之积为12


5、快速找出一个数组中的最大数、第二大数。(笔试题)



3.


#include <stdio.h>


int main()
{
int a;
int i;
for(a=0;a<100;a++)
{
int b = 0;
for(i=1;i<=a;i++)
{
if(a%i==0)
b++;
}
if(b==2)
printf("%d  ",a);
}
return 0;
}



4.

#include <stdio.h>
#include <math.h>


int main()
{
int i;
for(i=1000;i<=9999;i++)
{
if ((i==(int)sqrt(i)*(int)sqrt(i))&&((i/1000)+(i%1000%100/10)==10)&&((i%1000/100)*(i%1000%100%10)==12))
printf("%d\n",i);
}
return 0;
}





5.


#include <stdio.h>


int main()
{
int i,m;
int a[5],t;
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
for(i = 0; i < 4; i++)
{
for(m = i; m < 4; m++)
{
if(a[i] < a[m+1])
{
  t=a[i];
a[i]=a[m+1];
a[m+1]=t;


}
}
}
for(i=0;i<2;i++)
printf("%d  ",a[i]);
return 0;
}

0 0