帮忙做一下!C语言程序设计习题

1、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是

2、已有程序段和输入数据的形式如下,程序中输入语句的正确形式应当为
main()
{int a; float f;
printf("\nInput number:");
输入语句
printf("\nf=%f,a= %d\n ,f,a);
}
Input number: 4.5 2<CR>

3、以下程序的运行结果是:
#include <stdio.h>
main()
{int a,b,d= 241;
a=d/100 % 9
b= (一1)&&(一1);
printf("%d,%d",a ,b);
}

4、执行以下语句后a的值为:
int a,b,c;
a= b= c= 1;
++a||++b&&++c

5、当a=1,b=3,c=5,d=4 ,执行完下面一段程序后x 的值是 :
if(a<b)
if(c<d)x=1;
else
if(a<c)
if(b<d)x=2;
else x= 3;
else x=6;
else x=7;

6、以下程序的输出结果是:
main()
{int a=100,x =10,y=20,okl=5,ok2=0;
if (x<y)
if(y ! =10)
if(!okl) a=1;
else
if(ok2) a=10;
a=-1:
printf( "%d\n",a )
}

7、以下程序的输出结果是:
main()
{int x= 2,y= 一1,z=2;
if (x<y)
if(y<0) z= 0;
else z+ =1;
printf("%d\n",z);
}

8、若运行时给变量x 输入12,则以下程序的运行结果是:
main()
{int x,y;
scanf("%d",&x);
y=x > 12?x+10: x一12;
printf("%d\n",y);
}

9、以下程序的运行结果是:
main()
{int k= 4,a=3,b=2,c=1;
printf("\n %d\n",k< a ? k:c<b ?c :a);
}

10、下面程序段的运行结果是
a=1;b= 2;c=2;
while(a<b<c) { t= a;a= b; b=t; c- -;}
printf("%d,%d,%d",a,b,c);

编程:
11、从键盘输入的一对数,由小到大排序输出。

12、从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者

第1个回答  2007-12-23
1.第一题的程序如下,答案是2.500000。

#include <stdio.h>
void main()
{int a=7;
float x=2.5,y=4.7;
float s;
s=x+a%3*(int)(x+y)%2/4;
printf("%f",s);
}

2.第二题的整个程序如下:

#include <stdio.h>
void main()
{int a;
float f;
printf("Input number:");
scanf("%f,%d",&f,&a);
printf("f=%f,a= %d\n" ,f,a);
}

3.答案:2 1

4.答案:1

5.答案:2

6.你的程序有些小错误,应该如下:答案为 :-1

#include <stdio.h>
void main()
{int a=100,x =10,y=20,okl=5,ok2=0;
if (x<y)
if(y!=10)
if(!okl) a=1;
else
if(ok2) a=10;
a=-1;
printf( "%d\n",a );
}

7.答案:2

8.答案:0

9.答案:1

10.答案:a=2,b=1,c=1
第2个回答  2007-12-09
1: 2.5
2: f=0.500000 a=4
3: 2 , 1
4: 2
5: 2
6: -1
7: 2
8: 0
9: 1
10: 2,1,1
11:
main()
{int a,b;
printf("put the two numbers:");
scanf("%d,%d",&a,&b);
if(a<b) printf("%d,%d",a,b);
else peintf("%d,%d",b,a);
}
12:
main()
{int m=0,n=0;
char a;
while(!(a=getchr()))
{if(a>=A||a<=Z) m++;
else if(a>=a||a<=z) n++;
}if(m>n) printf("%d",m);
else printf("%d",n);
}本回答被提问者采纳
第3个回答  2007-12-09
我还是来做11、题吧
#include<stdio.h>
int main()
{
int a[10];
int i,t,f;
for(i=0;i<10;i++) /*输入10个数*/
printf("%d ",&a[i]);
do /*冒泡排序*/
{
f=0;
for(i=0;i<9;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
f=1;
}
while(f); /*冒泡排序结束*/
for(i=0;i<10;i++) /*输出10个排序后的数*/
printf("%d ",a[i]);
return 0;
}

=============================
12、额下面这个程序是从键盘输入的一组字符以“.”号结束。

#include<stdio.h>
int main()
{
char a;
int m,n;
scanf("%c",&a);
while(a!='.')
{
if((a<='z')&&(a>='a'))
n++;
if((a<='Z')&&(a>='A'))
m++;
scanf("%c",&a);
}
if(m>n)
printf("%d",m);
else
printf("%d",n);
return 0;
}
/*我没编译过,您理解就行*/
第4个回答  2007-12-09
11题是一对数还是一些数啊,先答1对吧
#include<stdio.h>
void main()
{int a,b,c,d;
printf("please input a,b,:\n");
scanf(%d,%d,&a,&b,);
if(a<b)
c=b;d=a;
if(a>b)
c=a;d=b;
printf(The sorted numbers are %d,%d",a,d);
}
第5个回答  2007-12-09
1、2.5
2、scanf("%d%f",&a,&f)
3、2和1
4、2
5、2
6、-1
7、2
8、0
9、1
10、a=1,b=2,c=0
相似回答